summaryrefslogtreecommitdiff
path: root/dev-python/regex
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/regex')
-rw-r--r--dev-python/regex/Manifest10
-rw-r--r--dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_empty_array.patch35
-rw-r--r--dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_issue_18468.patch31
-rw-r--r--dev-python/regex/regex-2021.4.4.ebuild7
-rw-r--r--dev-python/regex/regex-2021.7.1.ebuild7
-rw-r--r--dev-python/regex/regex-2021.7.6.ebuild7
-rw-r--r--dev-python/regex/regex-2021.8.3.ebuild34
7 files changed, 125 insertions, 6 deletions
diff --git a/dev-python/regex/Manifest b/dev-python/regex/Manifest
index d08929420a92..26447a1cb4a1 100644
--- a/dev-python/regex/Manifest
+++ b/dev-python/regex/Manifest
@@ -1,7 +1,11 @@
+AUX regex-2021.4.4-pypy3-fix-test_empty_array.patch 1103 BLAKE2B 2498de0ebaa68fcb99653a40bfbb9a1009519a79244fa3193ca43b9b8b3ef714f066fdac68f32d7f24c275690cb24bd1deca6b30120519b99a3402db7b4d4d48 SHA512 d55643d7ca251f465d14d8cffab60e6f2c8fb18ec6f9032a5318fab17a8b8e5ae5c98d22e0eff28aacd5bb8ec2ff606022921f73f3c9f7e54ee0853de262cfa7
+AUX regex-2021.4.4-pypy3-fix-test_issue_18468.patch 1078 BLAKE2B 3545ee5167790fbb1d068afdac3f6dbba28ea92d6c1d4ef31b60a8406061deb8609d7fd9a659b45715d4af0f2deb1da0ef9865aebe58919c2b392e2a1a833cae SHA512 182628709ef0f373037acf197c2ade3215684b2c805a96a600a3dfcb092e6fd134c261330ed76c7c248e72f439e464ccde432444bfe4a9610bd36c777bf45c9d
DIST regex-2021.4.4.tar.gz 693187 BLAKE2B a13a51a883599f726c20cdbf28d5b0f1a53d8f2eec5f4047da0ede2951694507c5065de5a84152510874db087c342d52f19d920a7b72c034325ddc91f5fb75ac SHA512 2eff9867639f16ad7894997f399262d653a9ef0bb4e8d40bd977e5c55625cf57b4bb593f84504009a0b3cd50b3876d1938c71fd733c0ad1a076de32b6b4b33b9
DIST regex-2021.7.1.tar.gz 693459 BLAKE2B 484259e14af99d911a20835be73686fea621e501756b02e760128b60a52eb62719efaa0b788ca57026dbdc3dfd55aa321a0feb8e73f6b7435f8711cf465ec2f6 SHA512 7b28e24a829b8ac8f43fdfadf012e833c715b9743d1c9a7cd34eea2789ec54df23d651c8a15aabe8c5d69662402f6302cfdeb23287c49d91b4e9fb3b9452ef73
DIST regex-2021.7.6.tar.gz 693843 BLAKE2B 9acbca300632ff45744d509e47de56625b003b2046c068f3bf5cae3987bc9bbd51e5cdc442c3e72c6c9c0daeeacd658c56b56754c0f9e83c03816237cc311000 SHA512 0849caaafc669b6dc322dcd4d48962cefbe955c19f9ee3d657b7b8389f77ab2b2e27ec341745dff01a60dd3930904d69015a334ff748de10be2d0b7c421b0967
-EBUILD regex-2021.4.4.ebuild 727 BLAKE2B 8c568d7a6ec94ed2af98176ab5a5fec05f890781b04bf182ddd1a38a7a48e39df0d03873bef012af54a54cbed8648c24cab6206b17ed4356faadc1b8c0720db8 SHA512 965a6e5bfe52cc24b8696ab65e7bd6b499ce1321dd5356ba25653b11f23313ed62616f2e34c2ad037e200a48241399f8809958f5031ed2aa07a09c5c1f638a27
-EBUILD regex-2021.7.1.ebuild 734 BLAKE2B 1010613ac705325563111fe6c89aee0a60b71ed283fa5c64ec5d4e28c2b27539b2d80fd47439a716ad9e400b0dc91c1e3613a921519026f63ab8d0c1f7de711e SHA512 b42991f21d156a5b9cd01268460fa3e7fec12b06cee038bdce6eb9b8bf6bc53d94b708414015c8b5dd3bd63c696d833b50558fe017e45da89bbc6d55063ce2fe
-EBUILD regex-2021.7.6.ebuild 734 BLAKE2B 1010613ac705325563111fe6c89aee0a60b71ed283fa5c64ec5d4e28c2b27539b2d80fd47439a716ad9e400b0dc91c1e3613a921519026f63ab8d0c1f7de711e SHA512 b42991f21d156a5b9cd01268460fa3e7fec12b06cee038bdce6eb9b8bf6bc53d94b708414015c8b5dd3bd63c696d833b50558fe017e45da89bbc6d55063ce2fe
+DIST regex-2021.8.3.tar.gz 693937 BLAKE2B 886dfe1a312bb34d83a3fe9442231215be7e263cbd123da24c454cdceac1055cb4dacfe4a3104699b6b97f86b14e2b723ea1267a13c2395ce2baad4ca367d77e SHA512 3ac33421ca15e47a1d8beeb3841b6e698d492e96965955afe69529dc71cc7d522e5e8236e4f577c934a3fd27036340a8084c84055bcfff0a9572e8fb56ba272b
+EBUILD regex-2021.4.4.ebuild 872 BLAKE2B 2cab2ea84342bb3e2eae49f4d6e4456b507713dcee7ffc5f85ef2f54be4f774f8c3a138f4be7427af0656e50c5b97671f9d535bb3e7bae58be01134934597a03 SHA512 1ad72740d9b239bca774777eb12a685f7230344b6788f8f01eb120184d888cf4e5deeb1158d1d9c0b546993eff91c7d3bc00a34836ae6844fc3f39d76f7f1061
+EBUILD regex-2021.7.1.ebuild 879 BLAKE2B 50834b1ef67a73159b65498cc429e8d9a38b0cd30fd1e0ed994563d240c81c9c0b06a196e1b5fbc7c9ff9137ec7bf176d577e6bf1161686f13103fdba479367f SHA512 e971fcce3414eb203ddd4dab3eeeb964e3e93470e3f3c5a450d5f8ff8e1379d9ea27083b9c3f5e594b43f8cb52265191246a9d4097531aa723bb6c308e5f9d3c
+EBUILD regex-2021.7.6.ebuild 879 BLAKE2B 50834b1ef67a73159b65498cc429e8d9a38b0cd30fd1e0ed994563d240c81c9c0b06a196e1b5fbc7c9ff9137ec7bf176d577e6bf1161686f13103fdba479367f SHA512 e971fcce3414eb203ddd4dab3eeeb964e3e93470e3f3c5a450d5f8ff8e1379d9ea27083b9c3f5e594b43f8cb52265191246a9d4097531aa723bb6c308e5f9d3c
+EBUILD regex-2021.8.3.ebuild 879 BLAKE2B 50834b1ef67a73159b65498cc429e8d9a38b0cd30fd1e0ed994563d240c81c9c0b06a196e1b5fbc7c9ff9137ec7bf176d577e6bf1161686f13103fdba479367f SHA512 e971fcce3414eb203ddd4dab3eeeb964e3e93470e3f3c5a450d5f8ff8e1379d9ea27083b9c3f5e594b43f8cb52265191246a9d4097531aa723bb6c308e5f9d3c
MISC metadata.xml 384 BLAKE2B 4928f66b54b5e4de6a8b913207ec6e46c124e55510eac304a7fd46c6ca63cce60704757e9289bf35d2d58e9ddcd4aa98d751a079c79f09dda9206553096e0561 SHA512 3db0a8abe7036cd9d0fd8b1450598436dbb30581806380ad51c3d0f49d129325aba1bad9700d14adffc7cfd199c4ec3377e6eb0225244bfc82368bbb50548e07
diff --git a/dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_empty_array.patch b/dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_empty_array.patch
new file mode 100644
index 000000000000..706b41b74688
--- /dev/null
+++ b/dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_empty_array.patch
@@ -0,0 +1,35 @@
+From: Arthur Zamarin <arthurzam@gmail.com>
+Date: Fri, 30 Jul 2021 11:13:41 +0300
+[PATCH] PyPy3: fix test_empty_array
+
+As an optimization, PyPy sets empty array.array to use a NULL buffer
+pointer, while CPython uses empty buffer (but not NULL).
+Add a very specially crafted fix for PyPy3
+
+Signed-off-by: Arthur Zamarin <arthurzam@gmail.com>
+---
+ regex_3/_regex.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+--- a/regex_3/_regex.c
++++ b/regex_3/_regex.c
+@@ -18062,9 +18062,19 @@ Py_LOCAL_INLINE(BOOL) get_string(PyObject* string, RE_StringInfo* str_info) {
+ }
+
+ if (!str_info->view.buf) {
++#if defined(PYPY_VERSION)
++ /* In PyPy3, when the array.array is empty, it's buffer is NULL */
++ str_info->characters = NULL;
++ str_info->length = 0;
++ str_info->charsize = 1;
++ str_info->is_unicode = FALSE;
++ str_info->should_release = FALSE;
++ return TRUE;
++#else
+ PyBuffer_Release(&str_info->view);
+ PyErr_SetString(PyExc_ValueError, "buffer is NULL");
+ return FALSE;
++#endif
+ }
+
+ str_info->should_release = TRUE;
diff --git a/dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_issue_18468.patch b/dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_issue_18468.patch
new file mode 100644
index 000000000000..ae5958021781
--- /dev/null
+++ b/dev-python/regex/files/regex-2021.4.4-pypy3-fix-test_issue_18468.patch
@@ -0,0 +1,31 @@
+From: Arthur Zamarin <arthurzam@gmail.com>
+Date: Fri, 30 Jul 2021 11:38:26 +0300
+[PATCH] PyPy3: fix test_issue_18468
+
+When using the small subclass classes to test correctness of split
+results, there are difference between CPython and PyPy3:
+ - CPython returns always the base class (for example str instead
+ of StrSubclass)
+ - PyPy3 returns the same class, so we get an StrSubclass
+
+Based on the test, it looks like the behaviour of PyPy3 is correct,
+but the test works based on CPython.
+
+The fix was to relax the equals type to check that it is a subclass.
+
+Signed-off-by: Arthur Zamarin <arthurzam@gmail.com>
+---
+ regex_3/test_regex.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/regex_3/test_regex.py
++++ b/regex_3/test_regex.py
+@@ -52,7 +52,7 @@ class RegexTests(unittest.TestCase):
+ for x, y in zip(actual, expect):
+ recurse(x, y)
+ else:
+- self.assertIs(type(actual), type(expect), msg)
++ self.assertIsInstance(actual, type(expect), msg)
+
+ recurse(actual, expect)
+
diff --git a/dev-python/regex/regex-2021.4.4.ebuild b/dev-python/regex/regex-2021.4.4.ebuild
index 80f758e55ed2..738d258d1ab9 100644
--- a/dev-python/regex/regex-2021.4.4.ebuild
+++ b/dev-python/regex/regex-2021.4.4.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7..10} )
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
inherit distutils-r1 flag-o-matic
@@ -16,6 +16,11 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
IUSE="doc"
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
distutils_enable_tests unittest
python_test() {
diff --git a/dev-python/regex/regex-2021.7.1.ebuild b/dev-python/regex/regex-2021.7.1.ebuild
index 271faa2b4fed..c0a5a26d5c4e 100644
--- a/dev-python/regex/regex-2021.7.1.ebuild
+++ b/dev-python/regex/regex-2021.7.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
inherit distutils-r1 flag-o-matic
DESCRIPTION="Alternative regular expression module to replace re"
@@ -15,6 +15,11 @@ SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
IUSE="doc"
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
distutils_enable_tests unittest
python_test() {
diff --git a/dev-python/regex/regex-2021.7.6.ebuild b/dev-python/regex/regex-2021.7.6.ebuild
index 271faa2b4fed..c0a5a26d5c4e 100644
--- a/dev-python/regex/regex-2021.7.6.ebuild
+++ b/dev-python/regex/regex-2021.7.6.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
inherit distutils-r1 flag-o-matic
DESCRIPTION="Alternative regular expression module to replace re"
@@ -15,6 +15,11 @@ SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
IUSE="doc"
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
distutils_enable_tests unittest
python_test() {
diff --git a/dev-python/regex/regex-2021.8.3.ebuild b/dev-python/regex/regex-2021.8.3.ebuild
new file mode 100644
index 000000000000..c0a5a26d5c4e
--- /dev/null
+++ b/dev-python/regex/regex-2021.8.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="Alternative regular expression module to replace re"
+HOMEPAGE="https://bitbucket.org/mrabarnett/mrab-regex"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="doc"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest -s "${BUILD_DIR}"/lib
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/Features.html )
+ local DOCS=( README.rst docs/*.rst )
+
+ distutils-r1_python_install_all
+}