Bug 1789618

Summary: python-orderedset fails to build with Python 3.9
Product: [Fedora] Fedora Reporter: Charalampos Stratakis <cstratak>
Component: python-orderedsetAssignee: Jerry James <loganjerry>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: cstratak, loganjerry, mhroncok
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-01-10 23:41:48 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1785415    

Description Charalampos Stratakis 2020-01-09 22:23:06 UTC
python-orderedset fails to build with Python 3.9.0a2.

The error:

test_orderedset (unittest.loader._FailedTest) ... ERROR

======================================================================
ERROR: test_orderedset (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: test_orderedset
Traceback (most recent call last):
  File "/usr/lib64/python3.9/unittest/loader.py", line 154, in loadTestsFromName
    module = __import__(module_name)
  File "/builddir/build/BUILD/orderedset-2.0.1/tests/test_orderedset.py", line 21, in <module>
    from orderedset import *
  File "/builddir/build/BUILD/orderedset-2.0.1/lib/orderedset/__init__.py", line 5, in <module>
    from ._orderedset import OrderedSet
  File "lib/orderedset/_orderedset.pyx", line 3, in init orderedset._orderedset
    from collections import Set, MutableSet, Iterable
ImportError: cannot import name Set

For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/@python/python3.9/fedora-rawhide-x86_64/01142476-python-orderedset/

For all our attempts to build python-orderedset with Python 3.9, see:
https://copr.fedorainfracloud.org/coprs/g/python/python3.9/package/python-orderedset/

Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.9:
https://copr.fedorainfracloud.org/coprs/g/python/python3.9/

Let us know here if you have any questions.

Python 3.9 will be included in Fedora 33, but the initial bootstrapping has already started.
A build failure this early in the bootstrap sequence blocks us very much.

Comment 1 Charalampos Stratakis 2020-01-09 22:23:35 UTC
The fix has been submitted upstream but not merged yet:
https://github.com/simonpercivall/orderedset/pull/26/files

Comment 2 Jerry James 2020-01-10 23:41:48 UTC
I applied the fix noted in comment 1, as well as a few small cleanups and built in Rawhide.

Comment 3 Charalampos Stratakis 2020-01-14 00:02:56 UTC
Thanks for the fix!