diff options
author | 2024-02-10 13:14:51 +0100 | |
---|---|---|
committer | 2024-02-10 13:33:50 +0100 | |
commit | 0a20229a63e6e400a3deab1e4f69114d4ff40733 (patch) | |
tree | 2757158df0338a41ddebd0852149399be17e732a /dev-python/re-assert/files | |
parent | dev-python/pytest-fixture-config: treeclean (diff) | |
download | gentoo-0a20229a63e6e400a3deab1e4f69114d4ff40733.tar.gz gentoo-0a20229a63e6e400a3deab1e4f69114d4ff40733.tar.bz2 gentoo-0a20229a63e6e400a3deab1e4f69114d4ff40733.zip |
dev-python/re-assert: Improve the `re` fallback patch
Improve the `re` fallback patch to use it on PyPy even if `regex`
is available. Fix returning some failure message when match fails.
Update the dependency in `setup.cfg` as well. Deselect tests that
rely on `regex`-specific output.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/re-assert/files')
-rw-r--r-- | dev-python/re-assert/files/re-assert-1.1.0-re-fallback.patch | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/dev-python/re-assert/files/re-assert-1.1.0-re-fallback.patch b/dev-python/re-assert/files/re-assert-1.1.0-re-fallback.patch index ad04e09ae5bc..b292d48d6e0f 100644 --- a/dev-python/re-assert/files/re-assert-1.1.0-re-fallback.patch +++ b/dev-python/re-assert/files/re-assert-1.1.0-re-fallback.patch @@ -1,16 +1,42 @@ diff --git a/re_assert.py b/re_assert.py -index f6ea6b9..66479c3 100644 +index 840401e..8818da1 100644 --- a/re_assert.py +++ b/re_assert.py -@@ -3,7 +3,10 @@ from __future__ import annotations +@@ -1,8 +1,13 @@ ++import sys ++ from typing import Any + from typing import Optional from typing import Pattern -import regex -+try: ++if sys.implementation.name == "cpython": + import regex -+except ImportError: ++else: + import re as regex class Matches: # TODO: Generic[AnyStr] (binary pattern support) +@@ -12,6 +17,9 @@ class Matches: # TODO: Generic[AnyStr] (binary pattern support) + self._type = type(pattern) + + def _fail_message(self, fail: str) -> str: ++ if sys.implementation.name != "cpython": ++ return "regex failed to match" ++ + # binary search to find the longest substring match + pos, bound = 0, len(fail) + while pos < bound: +diff --git a/setup.cfg b/setup.cfg +index 46303ca..74cf999 100644 +--- a/setup.cfg ++++ b/setup.cfg +@@ -20,7 +20,7 @@ classifiers = + [options] + py_modules = re_assert + install_requires = +- regex ++ regex; python_implementation=="CPython" + python_requires = >=3.6.1 + + [bdist_wheel] |