madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged.
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
Adapted from https://pypi.org/project/pytest-optional-tests/, (c) 2019 Reece Hart
"""
Adapted from https://pypi.org/project/pytest-optional-tests/, (c) 2019 Reece Hart
"""
-from functools import lru_cache
import itertools
import logging
import re
import itertools
import logging
import re
-from typing import FrozenSet, List, Set, TYPE_CHECKING
+from functools import lru_cache
+from typing import TYPE_CHECKING, FrozenSet, List, Set
-from _pytest.store import StoreKey
+
+try:
+ from pytest import StashKey
+except ImportError:
+ # pytest < 7
+ from _pytest.store import StoreKey as StashKey # type: ignore[no-redef]
log = logging.getLogger(__name__)
if TYPE_CHECKING:
log = logging.getLogger(__name__)
if TYPE_CHECKING:
- from _pytest.config.argparsing import Parser
from _pytest.config import Config
from _pytest.config import Config
+ from _pytest.config.argparsing import Parser
from _pytest.mark.structures import MarkDecorator
from _pytest.nodes import Node
from _pytest.mark.structures import MarkDecorator
from _pytest.nodes import Node
-ALL_POSSIBLE_OPTIONAL_MARKERS = StoreKey[FrozenSet[str]]()
-ENABLED_OPTIONAL_MARKERS = StoreKey[FrozenSet[str]]()
+ALL_POSSIBLE_OPTIONAL_MARKERS = StashKey[FrozenSet[str]]()
+ENABLED_OPTIONAL_MARKERS = StashKey[FrozenSet[str]]()
def pytest_addoption(parser: "Parser") -> None:
def pytest_addoption(parser: "Parser") -> None: