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 1987713 - mingw-wine-gecko: FTBFS in Fedora rawhide/f35
Summary: mingw-wine-gecko: FTBFS in Fedora rawhide/f35
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: mingw-wine-gecko
Version: 35
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Michael Cronenworth
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F35FTBFS F36FTBFS
TreeView+ depends on / blocked
 
Reported: 2021-07-29 15:51 UTC by Fedora Release Engineering
Modified: 2022-08-03 01:49 UTC (History)
6 users (show)

Fixed In Version: mingw-wine-gecko-2.47.2-5.fc36 mingw-wine-gecko-2.47.2-5.fc35
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-01-27 20:18:57 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
build.log (deleted)
2021-07-29 15:51 UTC, Fedora Release Engineering
no flags Details
root.log (deleted)
2021-07-29 15:51 UTC, Fedora Release Engineering
no flags Details
state.log (deleted)
2021-07-29 15:51 UTC, Fedora Release Engineering
no flags Details
mingw-wine-gecko - some py3.10 fixes for F35 (deleted)
2021-10-06 15:57 UTC, Patrick Laimbock
no flags Details | Diff
Broken try to address "ModuleNotFoundError: No module named 'pkgutil'" (deleted)
2022-01-13 02:24 UTC, Robert Scheck
no flags Details | Diff
Py3.10 fixes needed after the virtualenv -16.7.11 replacement (deleted)
2022-01-13 20:11 UTC, Patrick Laimbock
no flags Details | Diff

Description Fedora Release Engineering 2021-07-29 15:51:16 UTC
mingw-wine-gecko failed to build from source in Fedora rawhide/f35

https://koji.fedoraproject.org/koji/taskinfo?taskID=72407619


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Please fix mingw-wine-gecko at your earliest convenience and set the bug's status to
ASSIGNED when you start fixing it. If the bug remains in NEW state for 8 weeks,
mingw-wine-gecko will be orphaned. Before branching of Fedora 36,
mingw-wine-gecko will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/

Comment 1 Fedora Release Engineering 2021-07-29 15:51:21 UTC
Created attachment 1808088 [details]
build.log

Comment 2 Fedora Release Engineering 2021-07-29 15:51:24 UTC
Created attachment 1808089 [details]
root.log

file root.log too big, will only attach last 32768 bytes

Comment 3 Fedora Release Engineering 2021-07-29 15:51:26 UTC
Created attachment 1808090 [details]
state.log

Comment 4 Fedora Release Engineering 2021-08-01 04:30:24 UTC
Dear Maintainer,

your package has an open Fails To Build From Source bug for Fedora 35.
Action is required from you.

If you can fix your package to build, perform a build in koji, and either create
an update in bodhi, or close this bug without creating an update, if updating is
not appropriate [1]. If you are working on a fix, set the status to ASSIGNED to
acknowledge this. If you have already fixed this issue, please close this Bugzilla report.

Following the policy for such packages [2], your package will be orphaned if
this bug remains in NEW state more than 8 weeks (not sooner than 2021-09-23).

A week before the mass branching of Fedora 36 according to the schedule [3],
any packages not successfully rebuilt at least on Fedora 34 will be
retired regardless of the status of this bug.

[1] https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/
[2] https://docs.fedoraproject.org/en-US/fesco/Fails_to_build_from_source_Fails_to_install/
[3] https://fedorapeople.org/groups/schedule/f-36/f-36-key-tasks.html

Comment 5 Ben Cotton 2021-08-10 13:24:19 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 35 development cycle.
Changing version to 35.

Comment 6 Patrick Laimbock 2021-10-06 15:57:21 UTC
Created attachment 1829940 [details]
mingw-wine-gecko - some py3.10 fixes for F35

Attached is a patch with a number of py3.10 "fixes" so the mingw-wine-gecko build progresses (warning: I have little pyFoo). I got stuck at this error:

 0:02.02 checking for python3... /usr/bin/python3
 0:02.03 Creating Python environment
 0:02.04 /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2/python/mozbuild/mozbuild/virtualenv.py:10: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
 0:02.04   import distutils.sysconfig
 0:02.05 /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2/python/mozbuild/mozbuild/virtualenv.py:10: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead
 0:02.05   import distutils.sysconfig
 0:02.09 /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2/python/virtualenv/virtualenv.py:25: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
 0:02.09   import distutils.spawn
 0:02.10 /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2/python/virtualenv/virtualenv.py:26: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead
 0:02.10   import distutils.sysconfig
 0:02.11 /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2/python/virtualenv/virtualenv.py:1047: DeprecationWarning: the imp module is deprecated in favour of importlib and slated for removal in Python 3.12; see the module's documentation for alternative uses
 0:02.11   import imp
 0:02.14 Using base prefix '/usr'
 0:02.14 New python executable in /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2-x86/_virtualenv/bin/python3
 0:02.14 Not overwriting existing python script /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2-x86/_virtualenv/bin/python (you must use /builddir/build/BUILD/wine-gecko-2.47.2/wine-gecko-2.47.2-x86/_virtualenv/bin/python3)
 0:02.16 Installing setuptools, pip, wheel...
 0:02.16   Complete output from command /builddir/build/BUIL...rtualenv/bin/python3 - setuptools pip wheel:
 0:02.16   Traceback (most recent call last):
 0:02.16   File "<stdin>", line 3, in <module>
 0:02.16 ModuleNotFoundError: No module named 'pkgutil'
 0:02.16 ----------------------------------------
 0:02.16 ...Installing setuptools, pip, wheel...done.
 0:02.16 Traceback (most recent call last):

HTH

Comment 7 Robert Scheck 2022-01-13 02:24:41 UTC
Created attachment 1850487 [details]
Broken try to address "ModuleNotFoundError: No module named 'pkgutil'"

Comment 8 Robert Scheck 2022-01-13 02:30:42 UTC
Miro, may I kindly ask you to have a look to this issue? It seems like the virtualenv creation is an issue with a current Python version.

Comment 9 Miro Hrončok 2022-01-13 02:53:57 UTC
The sources seem to bundle virtualenv 15.2.0 (from 2018) that does not support Pythons larger than 3.6. Try updating it?

Comment 10 Robert Scheck 2022-01-13 03:49:08 UTC
Unfortunately virtualenv 20.13.0 doesn't seem to be usable as a drop-in replacement for 15.2.0, at least with my Python knowledge ;-(

Comment 11 Miro Hrončok 2022-01-13 11:06:29 UTC
Do you know where, how, and why it is actually invoked?

Comment 12 Robert Scheck 2022-01-13 11:16:14 UTC
It's invoked by the build scripts (mixture of bash and python scripts) of the wine-gecko package, and I from my so far understanding this happens because of MinGW for the cross-build for Microsoft Windows, because the outcome for the RPM package at the end is a *.msi (Windows Installer) file (which is then being used by wine and its tools by end users). I'm not the package maintainer, but of playonlinux which depends on mingw-wine-gecko at runtime.

Comment 13 Miro Hrončok 2022-01-13 11:25:27 UTC
The build machinery here is not simple :(

I suggest trying to replace the bundled virtualenv with the legacy branch from https://github.com/pypa/virtualenv/tree/legacy which is more or less 16.7.11. That should be a more or less drop-in replacement for 15.2.0. And if there are problems with Python 3.10, I can try to help fix them.

Comment 14 Patrick Laimbock 2022-01-13 16:53:14 UTC
(In reply to Miro Hrončok from comment #13)
> The build machinery here is not simple :(
> 
> I suggest trying to replace the bundled virtualenv with the legacy branch
> from https://github.com/pypa/virtualenv/tree/legacy which is more or less
> 16.7.11. That should be a more or less drop-in replacement for 15.2.0. And
> if there are problems with Python 3.10, I can try to help fix them.

Thank you for your suggestion. I added the virtualenv legacy branch to the wine-gecko src and the build moves forward until it finds another py3.10 incompatibity.

 0:38.44     from collections import defaultdict, MutableSequence
 0:38.44 ImportError: cannot import name 'MutableSequence' from 'collections' (/builddir/build/BUILD/wine-gecko/wine-gecko-2.47.3-x86/_virtualenv/lib64/python3.10/collections/__init__.py)
 0:38.46 *** Fix above errors and then restart with\
 0:38.46                "/usr/bin/gmake -f client.mk build"

which requires a collections -> collections.abc fix. I'll keep rebuilding and if something is beyond my pyFoo then I'll comment here.

Comment 15 Patrick Laimbock 2022-01-13 20:06:59 UTC
The build fails in (AFAICT) different ways when using _smpmflags: 1 or not. I would appreciate some extra eyes on this.

Build with _smpmflags: 1
https://copr.fedorainfracloud.org/coprs/patrickl/mingw-wine-gecko/build/3163240/

Build without _smpmflags
https://copr.fedorainfracloud.org/coprs/patrickl/mingw-wine-gecko/build/3163344/

Any ideas?

Comment 16 Patrick Laimbock 2022-01-13 20:11:42 UTC
Created attachment 1850691 [details]
Py3.10 fixes needed after the virtualenv -16.7.11 replacement

Small patch with some py3.10 fixes needed after replacing virtualenv with the one suggested by Miro.

Comment 18 Michael Cronenworth 2022-01-26 23:45:47 UTC
FYI: I'm working on it.

Latest update:

* 32-bit MSI is fully compiling with Patrick and my changes. Yay!
* 64-bit MSI is mostly compiling. There are linker errors with libffi, ffvpx, and libav.
** Good news is that libffi can be updated to the latest upstream and it now compiles.
** Bad news is that libav is no longer shipped as part of Firefox so there is no updated code. I'm also having to cobble together a fixed ffvpx.

Comment 19 Michael Cronenworth 2022-01-27 17:03:33 UTC
I have a 64-bit MSI package. A build is spinning up in Koji.

https://koji.fedoraproject.org/koji/taskinfo?taskID=82018730

Comment 20 Fedora Update System 2022-01-27 20:17:09 UTC
FEDORA-2022-884818a723 has been submitted as an update to Fedora 36. https://bodhi.fedoraproject.org/updates/FEDORA-2022-884818a723

Comment 21 Fedora Update System 2022-01-27 20:18:57 UTC
FEDORA-2022-884818a723 has been pushed to the Fedora 36 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 22 Fedora Update System 2022-07-25 19:07:52 UTC
FEDORA-2022-5dea466843 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-5dea466843

Comment 23 Fedora Update System 2022-07-26 15:15:34 UTC
FEDORA-2022-5dea466843 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-5dea466843`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-5dea466843

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 24 Fedora Update System 2022-08-03 01:49:07 UTC
FEDORA-2022-5dea466843 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.


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