Bug 1817649

Summary: gobject-introspection/giscanner/gdumpparser.py: ModuleNotFoundError: No module named 'xml.etree.cElementTree'
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: gobject-introspectionAssignee: Kalev Lember <klember>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: dcbw, fmuellner, klember, otaylor, sgallagh, walters, yaneti
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: gobject-introspection-1.64.0-2.fc33 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-03-26 21:43:41 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, 1817646, 1817650, 1817652, 1817653, 1817654, 1817656, 1817658, 1817662, 1817665, 1817667, 1817668, 1817669, 1817670, 1817674, 1817675, 1817676, 1817689    

Description Miro Hrončok 2020-03-26 17:47:29 UTC
Packages using gobject-introspection all fail with Python 3.9.0a5 like this:

Traceback (most recent call last):
  File "/usr/bin/g-ir-scanner", line 103, in <module>
    from giscanner.scannermain import scanner_main
  File "/usr/lib64/gobject-introspection/giscanner/scannermain.py", line 36, in <module>
    from giscanner.dumper import compile_introspection_binary
  File "/usr/lib64/gobject-introspection/giscanner/dumper.py", line 28, in <module>
    from .gdumpparser import IntrospectionBinary
  File "/usr/lib64/gobject-introspection/giscanner/gdumpparser.py", line 25, in <module>
    from xml.etree.cElementTree import parse
ModuleNotFoundError: No module named 'xml.etree.cElementTree'


See https://docs.python.org/3.9/whatsnew/3.9.html#removed

"The xml.etree.cElementTree module has been removed."


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. To make that update smoother, we're building Fedora packages with early pre-releases of Python 3.9.
A build failure prevents us from testing all dependent packages (transitive [Build]Requires). This package is required a lot, it's important for us to get it fixed soon.

We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.

Comment 1 Miro Hrončok 2020-03-26 19:00:11 UTC
The gobject-introspection package also faisl to build with Python 3.9.0a5:

Traceback (most recent call last):
  File "/builddir/build/BUILD/gobject-introspection-1.64.0/x86_64-redhat-linux-gnu/tools/g-ir-scanner", line 103, in <module>
    from giscanner.scannermain import scanner_main
  File "/builddir/build/BUILD/gobject-introspection-1.64.0/x86_64-redhat-linux-gnu/giscanner/scannermain.py", line 36, in <module>
    from giscanner.dumper import compile_introspection_binary
  File "/builddir/build/BUILD/gobject-introspection-1.64.0/x86_64-redhat-linux-gnu/giscanner/dumper.py", line 28, in <module>
    from .gdumpparser import IntrospectionBinary
  File "/builddir/build/BUILD/gobject-introspection-1.64.0/x86_64-redhat-linux-gnu/giscanner/gdumpparser.py", line 25, in <module>
    from xml.etree.cElementTree import parse
ModuleNotFoundError: No module named 'xml.etree.cElementTree'


For the build logs, see:
https://download.copr.fedorainfracloud.org/results/@python/python3.9/fedora-rawhide-x86_64/01321048-gobject-introspection/

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

Comment 2 Stephen Gallagher 2020-03-26 19:23:19 UTC
I submitted a PR upstream: https://gitlab.gnome.org/GNOME/gobject-introspection/-/merge_requests/202

Comment 3 Miro Hrončok 2020-03-26 19:49:39 UTC
Thank You, Stephen. Let me know if you also work on a Fadora backport or if I shall do that.

Given the number of packages this affects, I don't think we should wait for the next release.

Comment 4 Stephen Gallagher 2020-03-26 21:23:04 UTC
(In reply to Miro Hrončok from comment #3)
> Thank You, Stephen. Let me know if you also work on a Fadora backport or if
> I shall do that.
> 
> Given the number of packages this affects, I don't think we should wait for
> the next release.

I spoke to Kalev this afternoon; he's going to patch the package in Rawhide and build it tomorrow morning. I'll reassign this BZ to him.

Comment 5 Kalev Lember 2020-03-26 21:43:41 UTC
I've backported this to gobject-introspection-1.64.0-2.fc33. Thanks, Stephen!

Comment 6 Miro Hrončok 2020-03-26 22:23:52 UTC
Thank You both!