Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test failure with Python 3.9 #350

Closed
Aniket-Pradhan opened this issue Feb 7, 2020 · 3 comments · Fixed by #351
Closed

Test failure with Python 3.9 #350

Aniket-Pradhan opened this issue Feb 7, 2020 · 3 comments · Fixed by #351

Comments

@Aniket-Pradhan
Copy link
Contributor

Hello devs!

We had successfully included python-odml inside Fedora (It is available in the testing repos, and will be available in the stable repos in about a week 🥂 )

We also did a test build for Fedora 33 (which will have Python 3.9), and some tests fail. :(
The main error faced during the tests is:

>       if not isinstance(obj_list, collections.Iterable):
E       AttributeError: module 'collections' has no attribute 'Iterable'

As per the docs from Python 3.9:

"The abstract base classes in collections.abc no longer are exposed in the regular collections module. This will help create a clearer distinction between the concrete classes and the abstract base classes."

A detailed build and test log can be found here

I can try digging around this as well, but it would take me some time as I am a bit occupied with some other work. Talking about that, there should be no hurry, because there is a lot of time till the stable release of Python 3.9.

@tirkarthi
Copy link
Contributor

I have created PR #351 for this. Thanks.

@mpsonntag
Copy link
Contributor

Thanks a lot for the issue and the fix!

@Aniket-Pradhan
Copy link
Contributor Author

Just a small update from the Python devs:

"In Python 3.9.0a4 we have managed to revert the change that disables importing
abstract base classes (collections.abc) directly form the regular collections
module. It was reverted to ease transition for projects that did not yet
actually dropped support for Python 2.7. The removal is scheduled for Python
3.10 instead."

TL;DR: This patch was supposed to be for Py3.9, but now this patch would effectively work for Py3.10. Py3.9 has reverted the changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants