Bug 1736521

Summary: python-pbkdf2: FTBFS in Fedora rawhide/f31
Product: [Fedora] Fedora Reporter: Fedora Release Engineering <releng>
Component: python-pbkdf2Assignee: Miro Hrončok <mhroncok>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 31CC: a.badger, athmanem, hegjon, kevin, maxim, mhroncok, pviktori
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-pbkdf2-1.3-15.fc32 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-21 11:00:01 UTC Type: ---
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: 1700317, 1686977, 1732841, 1736460    
Attachments:
Description Flags
build.log
none
root.log
none
state.log none

Description Fedora Release Engineering 2019-08-01 18:42:33 UTC
python-pbkdf2 failed to build from source in Fedora rawhide/f31

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


For details on the mass rebuild see:

https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Please fix python-pbkdf2 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,
python-pbkdf2 will be orphaned. Before branching of Fedora 32,
python-pbkdf2 will be retired, if it still fails to build.

For more details on the FTBFS policy, please visit:
https://fedoraproject.org/wiki/Fails_to_build_from_source

Comment 1 Fedora Release Engineering 2019-08-01 18:42:36 UTC
Created attachment 1598821 [details]
build.log

Comment 2 Fedora Release Engineering 2019-08-01 18:42:38 UTC
Created attachment 1598822 [details]
root.log

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

Comment 3 Fedora Release Engineering 2019-08-01 18:42:40 UTC
Created attachment 1598823 [details]
state.log

Comment 4 Miro Hrončok 2019-08-05 08:30:15 UTC
This blocks the Python 3.8 rebuild.

Comment 5 Ben Cotton 2019-08-13 16:50:56 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to '31'.

Comment 6 Ben Cotton 2019-08-13 18:34:05 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to 31.

Comment 7 Miro Hrončok 2019-08-14 22:24:39 UTC
The coordinated rebuild of Python 3.8 has started in the `f32-python` side tag.

If you figure out how to rebuild this package, please don't rebuild it in regular rawhide, but use the side tag instead:

    on branch master:
    $ fedpkg build --target=f32-python

To wait for a build to show up in the side tag, do:

    $ koji wait-repo f32-python --build=<nvr>

Where <nvr> is name-version-release of the source package, e.g. python-foo-1.1-2.fc32.

An updated mock config is posted at:
http://copr.fedorainfracloud.org/coprs/g/python/python3.8/

Note that it will take a while before the essential packages are rebuilt, so don't expect all your dependencies to be available right away.

Thanks. Let us know if you need up to date info, or if you have any questions.



PS this message is mass posted to all the bugs that block the PYTHON38 bug. If this is also a Fedora 31 FTBFS bug and you manage to fix it, you can do a f31 build as usual:

    on branch f31:
    $ fedpkg build

Comment 8 Miro Hrončok 2019-08-19 23:00:50 UTC
The problem seems to be:

Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.PWIKBF
+ umask 022
+ cd /builddir/build/BUILD
+ cd pbkdf2-1.3
+ /usr/bin/python3 setup.py test
BUILDSTDERR: Traceback (most recent call last):
BUILDSTDERR:   File "setup.py", line 13, in <module>
BUILDSTDERR:     setup(
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/setuptools/__init__.py", line 145, in setup
BUILDSTDERR:     return distutils.core.setup(**attrs)
BUILDSTDERR:   File "/usr/lib/python3.8/distutils/core.py", line 148, in setup
BUILDSTDERR:     dist.run_commands()
BUILDSTDERR:   File "/usr/lib/python3.8/distutils/dist.py", line 966, in run_commands
BUILDSTDERR:     self.run_command(cmd)
BUILDSTDERR:   File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
BUILDSTDERR:     cmd_obj.run()
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/setuptools/command/test.py", line 229, in run
BUILDSTDERR:     self.run_tests()
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/setuptools/command/test.py", line 247, in run_tests
BUILDSTDERR:     test = unittest.main(
BUILDSTDERR:   File "/usr/lib/python3.8/unittest/main.py", line 100, in __init__
BUILDSTDERR:     self.parseArgs(argv)
BUILDSTDERR:   File "/usr/lib/python3.8/unittest/main.py", line 147, in parseArgs
BUILDSTDERR:     self.createTests()
BUILDSTDERR:   File "/usr/lib/python3.8/unittest/main.py", line 158, in createTests
BUILDSTDERR:     self.test = self.testLoader.loadTestsFromNames(self.testNames,
BUILDSTDERR:   File "/usr/lib/python3.8/unittest/loader.py", line 220, in loadTestsFromNames
BUILDSTDERR:     suites = [self.loadTestsFromName(name, module) for name in names]
BUILDSTDERR:   File "/usr/lib/python3.8/unittest/loader.py", line 220, in <listcomp>
BUILDSTDERR:     suites = [self.loadTestsFromName(name, module) for name in names]
BUILDSTDERR:   File "/usr/lib/python3.8/unittest/loader.py", line 191, in loadTestsFromName
BUILDSTDERR:     return self.loadTestsFromModule(obj)
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/setuptools/command/test.py", line 47, in loadTestsFromModule
BUILDSTDERR:     for file in resource_listdir(module.__name__, ''):
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 1162, in resource_listdir
BUILDSTDERR:     return get_provider(package_or_requirement).resource_listdir(
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 364, in get_provider
BUILDSTDERR:     return _find_adapter(_provider_factories, loader)(module)
BUILDSTDERR:   File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 1392, in __init__
BUILDSTDERR:     self.module_path = os.path.dirname(getattr(module, '__file__', ''))
BUILDSTDERR:   File "/usr/lib/python3.8/posixpath.py", line 152, in dirname
BUILDSTDERR:     p = os.fspath(p)
BUILDSTDERR: TypeError: expected str, bytes or os.PathLike object, not NoneType
running test
running egg_info
writing pbkdf2.egg-info/PKG-INFO
writing dependency_links to pbkdf2.egg-info/dependency_links.txt
writing top-level names to pbkdf2.egg-info/top_level.txt
reading manifest file 'pbkdf2.egg-info/SOURCES.txt'
writing manifest file 'pbkdf2.egg-info/SOURCES.txt'
running build_ext
RPM build errors:
BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.PWIKBF (%check)
BUILDSTDERR:     Bad exit status from /var/tmp/rpm-tmp.PWIKBF (%check)


This blocks the Python 3.8 rebuild of ansible. CCing ansible maintainers.

Comment 9 Petr Viktorin (pviktori) 2019-08-21 10:53:20 UTC
Fix/workaround: https://src.fedoraproject.org/rpms/python-pbkdf2/pull-request/1

Comment 10 Miro Hrončok 2019-08-21 11:00:01 UTC
Thanks.

Comment 11 Petr Viktorin (pviktori) 2019-08-21 11:21:52 UTC
The failure is a curious mix of edge cases, outdated practices and teprecated technology, so I doubt it will be fixed properly :(

I filed this for the setuptools part of the stack: https://github.com/pypa/setuptools/issues/1827