guix/gnu/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch
Lars-Dominik Braun 9b65cdd902
gnu: python-shouldbe: Python 3.8 compatibility.
* gnu/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch: Add compatibility patch.
* gnu/local.mk (dist_patch_DATA): Add new file.
* gnu/packages/python-xyz.scm (python-shouldbe)[source]: Add patch.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-05-20 23:51:27 +02:00

82 lines
3.9 KiB
Diff

Fix compatibility with Python 3.8.
Upstream issue: https://github.com/DirectXMan12/should_be/pull/5
diff -x '*.pyc' -Naur shouldbe-0.1.2/should_be/core.py shouldbe-0.1.2.patched/should_be/core.py
--- shouldbe-0.1.2/should_be/core.py 2019-03-06 07:38:22.000000000 +0100
+++ shouldbe-0.1.2.patched/should_be/core.py 2020-05-18 08:44:24.214664704 +0200
@@ -103,7 +103,7 @@
return resf
-def buildCode(baseCode, argcount=None, kwonlyargcount=None,
+def buildCode(baseCode, argcount=None, posonlyargcount=None, kwonlyargcount=None,
nlocals=None, stacksize=None, flags=None,
code=None, consts=None, names=None,
varnames=None, filename=None, name=None,
@@ -121,6 +121,24 @@
nlocals or baseCode.co_nlocals,
stacksize or baseCode.co_stacksize,
flags or baseCode.co_flags,
+ code or baseCode.co_code,
+ consts or baseCode.co_consts,
+ names or baseCode.co_names,
+ varnames or baseCode.co_varnames,
+ filename or baseCode.co_filename,
+ name or baseCode.co_name,
+ firstlineno or baseCode.co_firstlineno,
+ lnotab or baseCode.co_lnotab,
+ freevars or baseCode.co_freevars,
+ cellvars or baseCode.co_cellvars)
+ elif hasattr(baseCode, 'co_posonlyargcount'):
+ # Python 3.8
+ resc = CodeType(argcount or baseCode.co_argcount,
+ posonlyargcount or baseCode.co_posonlyargcount,
+ kwonlyargcount or baseCode.co_kwonlyargcount,
+ nlocals or baseCode.co_nlocals,
+ stacksize or baseCode.co_stacksize,
+ flags or baseCode.co_flags,
code or baseCode.co_code,
consts or baseCode.co_consts,
names or baseCode.co_names,
diff -x '*.pyc' -Naur shouldbe-0.1.2/should_be/tests/test_container_mixin.py shouldbe-0.1.2.patched/should_be/tests/test_container_mixin.py
--- shouldbe-0.1.2/should_be/tests/test_container_mixin.py 2019-03-01 06:38:16.000000000 +0100
+++ shouldbe-0.1.2.patched/should_be/tests/test_container_mixin.py 2020-05-18 09:00:51.372531064 +0200
@@ -7,31 +7,31 @@
self.lst = [1, 2, 3]
def test_should_include_iter(self):
- err_msg = (r'[a-zA-Z0-9.]+ should have included \[.+?\]'
+ err_msg = (r'[a-zA-Z0-9.()]+ should have included \[.+?\]'
r', but did not have items .+')
- self.assertRaisesRegexp(AssertionError, err_msg,
+ self.assertRaisesRegex(AssertionError, err_msg,
self.lst.should_include, [4])
self.lst.should_include([1, 2, 3])
def test_should_include_item(self):
- err_msg = (r'[a-zA-Z0-9.]+ should have included .+?'
+ err_msg = (r'[a-zA-Z0-9.()]+ should have included .+?'
r', but did not')
- self.assertRaisesRegexp(AssertionError, err_msg,
+ self.assertRaisesRegex(AssertionError, err_msg,
self.lst.should_include, 4)
self.lst.should_include(3)
def test_shouldnt_include_iter(self):
err_msg = 'should not have included'
- self.assertRaisesRegexp(AssertionError, err_msg,
+ self.assertRaisesRegex(AssertionError, err_msg,
self.lst.shouldnt_include, [2, 3])
self.lst.shouldnt_include([4, 5])
def test_shouldnt_include_item(self):
err_msg = 'should not have included'
- self.assertRaisesRegexp(AssertionError, err_msg,
+ self.assertRaisesRegex(AssertionError, err_msg,
self.lst.shouldnt_include, 3)
self.lst.shouldnt_include(4)