Closed
Description
Hi, in Fedora we are rebuilding all upcoming Python packages with upcoming Python 3.12.0a7. There are two changes in CPython causing troubles.
gh-101446: Change repr of collections.OrderedDict to use regular dictionary formating instead of pairs of keys and values.
gh-96670: The parser now raises SyntaxError when parsing source code containing null bytes. Patch by Pablo Galindo
=================================== FAILURES ===================================
__________________________ TestOrderedDict.test_repr ___________________________
self = <test_future.test_backports.TestOrderedDict testMethod=test_repr>
def test_repr(self):
od = OrderedDict([('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)])
> self.assertEqual(repr(od),
"OrderedDict([('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)])")
E AssertionError: "OrderedDict({'c': 1, 'b': 2, 'a': 3, 'd': 4, 'e': 5, 'f': 6})" != "OrderedDict([('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)])"
E - OrderedDict({'c': 1, 'b': 2, 'a': 3, 'd': 4, 'e': 5, 'f': 6})
E ? ^ ^ ^ ^ ^ ^ ^ ^
E + OrderedDict([('c', 1), ('b', 2), ('a', 3), ('d', 4), ('e', 5), ('f', 6)])
E ? ^^ ^ + + ^ + + ^ + + ^ + + ^ + + ^ ^^
tests/test_future/test_backports.py:602: AssertionError
_____________________ TestOrderedDict.test_repr_recursive ______________________
self = <test_future.test_backports.TestOrderedDict testMethod=test_repr_recursive>
def test_repr_recursive(self):
# See issue #9826
od = OrderedDict.fromkeys('abc')
od['x'] = od
> self.assertEqual(repr(od),
"OrderedDict([('a', None), ('b', None), ('c', None), ('x', ...)])")
E AssertionError: "OrderedDict({'a': None, 'b': None, 'c': None, 'x': ...})" != "OrderedDict([('a', None), ('b', None), ('c', None), ('x', ...)])"
E - OrderedDict({'a': None, 'b': None, 'c': None, 'x': ...})
E ? ^ ^ ^ ^ ^ ^
E + OrderedDict([('a', None), ('b', None), ('c', None), ('x', ...)])
E ? ^^ ^ + + ^ + + ^ + + ^ ^^
tests/test_future/test_backports.py:611: AssertionError
___________________________ BuiltinTest.test_compile ___________________________
self = <test_future.test_builtins.BuiltinTest testMethod=test_compile>
def test_compile(self):
compile('print(1)\n', '', 'exec')
bom = b'\xef\xbb\xbf'
compile(bom + b'print(1)\n', '', 'exec')
compile(source='pass', filename='?', mode='exec')
compile(dont_inherit=0, filename='tmp', source='0', mode='eval')
compile('pass', '?', dont_inherit=1, mode='exec')
# Fails on Py2.7:
# Was: compile(memoryview(b"text"), "name", "exec")
self.assertRaises(TypeError, compile)
self.assertRaises(ValueError, compile, 'print(42)\n', '<string>', 'badmode')
self.assertRaises(ValueError, compile, 'print(42)\n', '<string>', 'single', 0xff)
# Raises TypeError in Python < v3.5, ValueError in v3.5:
> self.assertRaises((TypeError, ValueError), compile, chr(0), 'f', 'exec')
E SyntaxError: source code string cannot contain null bytes
tests/test_future/test_builtins.py:527: SyntaxError
=========================== short test summary info ============================
FAILED tests/test_future/test_backports.py::TestOrderedDict::test_repr - Asse...
FAILED tests/test_future/test_backports.py::TestOrderedDict::test_repr_recursive
FAILED tests/test_future/test_builtins.py::BuiltinTest::test_compile - Syntax...
3 failed, 1037 passed, 40 skipped, 15 deselected, 47 xfailed, 55 warnings in 13.50s
Metadata
Metadata
Assignees
Labels
No labels