Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1789210 - Fix Python 3.9 compatibility
Summary: Fix Python 3.9 compatibility
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-pickleshare
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mukundan Ragavan
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON39
TreeView+ depends on / blocked
 
Reported: 2020-01-09 04:03 UTC by Charalampos Stratakis
Modified: 2020-01-12 19:54 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-01-12 19:54:13 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Charalampos Stratakis 2020-01-09 04:03:15 UTC
python-pickleshare is not compatible with Python 3.9

While it still builds, packages that use its code, like ipykernel fail to build from source.

This currently blocks the initial Python 3.9 bootstrap sequence.

The code that requires fixing:

diff --git a/pickleshare.py b/pickleshare.py
index 31f093c..a7e5e76 100644
--- a/pickleshare.py
+++ b/pickleshare.py
@@ -45,7 +45,7 @@ except ImportError:
     from pathlib2 import Path
 
 import os,stat,time
-import collections
+import collections.abc
 try:
     import cPickle as pickle
 except ImportError:
@@ -63,7 +63,7 @@ def gethashfile(key):
 
 _sentinel = object()
 
-class PickleShareDB(collections.MutableMapping):
+class PickleShareDB(collections.abc.MutableMapping):
     """ The main 'connection' object for PickleShare database """
     def __init__(self,root):
         """ Return a db object that will manage the specied directory"""

Comment 1 Mukundan Ragavan 2020-01-09 22:32:36 UTC
Should this be built on rawhide or a side-tag?

Comment 2 Miro Hrončok 2020-01-09 23:13:21 UTC
All we need is a fix pushed to master, no need to bump release, no need to build. Side tag is not yet ready and will not be before rawhide is F33.

Comment 3 Mukundan Ragavan 2020-01-10 02:39:24 UTC
In that case, let me update this to 0.7.5. The current rawhide version is only 0.7.4. I will get this done in a day or two.

Comment 4 Mukundan Ragavan 2020-01-11 21:46:10 UTC
I updated pickleshare to 0.7.5. This fixes the py 3.9 incompatibility natively. No need for the patch.

Please verify.

Comment 5 Miro Hrončok 2020-01-12 19:54:13 UTC
python-ipykernel builds with the updated pickleshare. Thank you.


Note You need to log in before you can comment on or make changes to this bug.