Bug 1789646
| Summary: | python-wxpython4 fails to build with Python 3.9 | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Charalampos Stratakis <cstratak> |
| Component: | python-wxpython4 | Assignee: | Scott Talbert <swt> |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | cstratak, mhroncok, swt |
| 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-12 23:13:11 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 | ||
This seems to be due to 'U' mode being removed from Python 3.9: https://bugs.python.org/issue37330 Also it has been fixed on waf upstream: https://gitlab.com/ita1024/waf/commit/68997828c850ce7fb30b73b4adfde35053e539d1 Managed to workaround the issue by downloading the latest waf executable (2.0.19) and placing it in dist-git as Source1. Then copying it to the bin folder of wxPython and removing the old version. And then did this change in the source code and it built fine:
diff --git a/build.py b/build.py
index 55184814..c9632c0b 100755
--- a/build.py
+++ b/build.py
@@ -95,8 +95,8 @@ sipMD5 = {
'linux64' : 'e8566e05d2122344ec7ce0e289877f74',
}
-wafCurrentVersion = '2.0.8'
-wafMD5 = 'bc393f29337cd00aef25d54280ca22e1'
+wafCurrentVersion = '2.0.19'
+wafMD5 = 'ac362b60111a59ab2df63513018d5ad8'
doxygenCurrentVersion = '1.8.8'
doxygenMD5 = {
Although admittedly it would be better if wxpython would buildrequire and use the waf rpm instead of a bundled copy.
Thanks, waf upstream tends to be hostile against distribution packages, but maybe I'll give it a try. I'm going to try building with the waf rpm instead of the bundled copy. Can you build waf in the Python 3.9 copr? Trying a build. https://copr.fedorainfracloud.org/coprs/build/1143599 Not sure if it won't need updating. You got it in there. Thanks. Building in: https://copr.fedorainfracloud.org/coprs/build/1143671 |
python-wxpython4 fails to build with Python 3.9.0a2. Traceback (most recent call last): File "/builddir/build/BUILD/wxPython-4.0.7/bin/.waf3-2.0.8-206f2b7a89029e71942a2beb9e1bbbbd/waflib/Scripting.py", line 101, in waf_entry_point set_main_module(os.path.normpath(os.path.join(Context.run_dir,Context.WSCRIPT_FILE))) File "/builddir/build/BUILD/wxPython-4.0.7/bin/.waf3-2.0.8-206f2b7a89029e71942a2beb9e1bbbbd/waflib/Scripting.py", line 141, in set_main_module Context.g_module=Context.load_module(file_path) File "/builddir/build/BUILD/wxPython-4.0.7/bin/.waf3-2.0.8-206f2b7a89029e71942a2beb9e1bbbbd/waflib/Context.py", line 349, in load_module code=Utils.readf(path,m='rU',encoding=encoding) File "/builddir/build/BUILD/wxPython-4.0.7/bin/.waf3-2.0.8-206f2b7a89029e71942a2beb9e1bbbbd/waflib/Utils.py", line 141, in readf with open(fname,m)as f: ValueError: invalid mode: 'rUb' For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.9/fedora-rawhide-x86_64/01142521-python-wxpython4/ For all our attempts to build python-wxpython4 with Python 3.9, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.9/package/python-wxpython4/ 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.