Bug 1725789 - python-importlib-metadata fails to build with Python 3.8
Summary: python-importlib-metadata fails to build with Python 3.8
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-importlib-metadata
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Miro Hrončok
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON38
TreeView+ depends on / blocked
 
Reported: 2019-07-01 13:04 UTC by Miro Hrončok
Modified: 2019-08-22 11:37 UTC (History)
3 users (show)

Fixed In Version: fedora-obsolete-packages-32-3
Clone Of:
Environment:
Last Closed: 2019-08-22 11:37:51 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Miro Hrončok 2019-07-01 13:04:00 UTC
python-importlib-metadata fails to build with Python 3.8.0b1.


======================================================================
ERROR: test_zip_entry_points (importlib_metadata.tests.test_zip.TestEgg)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/tests/test_zip.py", line 34, in test_zip_entry_points
    scripts = dict(entry_points()['console_scripts'])
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/__init__.py", line 449, in entry_points
    ordered = sorted(eps, key=by_group)
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/__init__.py", line 447, in <genexpr>
    dist.entry_points for dist in distributions())
  File "/usr/lib64/python3.8/importlib/metadata/__init__.py", line 210, in entry_points
    return EntryPoint._from_text(self.read_text('entry_points.txt'))
  File "/usr/lib64/python3.8/importlib/metadata/__init__.py", line 93, in _from_text
    config.read_string(text)
  File "/usr/lib64/python3.8/configparser.py", line 723, in read_string
    self.read_file(sfile, source)
  File "/usr/lib64/python3.8/configparser.py", line 718, in read_file
    self._read(f, source)
  File "/usr/lib64/python3.8/configparser.py", line 1093, in _read
    raise DuplicateOptionError(sectname, optname,
configparser.DuplicateOptionError: While reading from '<string>' [line  3]: option 'example' in section 'console_scripts' already exists

======================================================================
ERROR: test_zip_entry_points (importlib_metadata.tests.test_zip.TestZip)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/tests/test_zip.py", line 34, in test_zip_entry_points
    scripts = dict(entry_points()['console_scripts'])
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/__init__.py", line 449, in entry_points
    ordered = sorted(eps, key=by_group)
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/__init__.py", line 447, in <genexpr>
    dist.entry_points for dist in distributions())
  File "/usr/lib64/python3.8/importlib/metadata/__init__.py", line 210, in entry_points
    return EntryPoint._from_text(self.read_text('entry_points.txt'))
  File "/usr/lib64/python3.8/importlib/metadata/__init__.py", line 93, in _from_text
    config.read_string(text)
  File "/usr/lib64/python3.8/configparser.py", line 723, in read_string
    self.read_file(sfile, source)
  File "/usr/lib64/python3.8/configparser.py", line 718, in read_file
    self._read(f, source)
  File "/usr/lib64/python3.8/configparser.py", line 1093, in _read
    raise DuplicateOptionError(sectname, optname,
configparser.DuplicateOptionError: While reading from '<string>' [line  3]: option 'example' in section 'console_scripts' already exists

======================================================================
FAIL: test_package_discovery (importlib_metadata.tests.test_main.DiscoveryTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/builddir/build/BUILD/importlib_metadata-0.18/importlib_metadata/tests/test_main.py", line 155, in test_package_discovery
    assert all(
AssertionError

----------------------------------------------------------------------

For the build logs, see:
https://copr-be.cloud.fedoraproject.org/results/@python/python3.8/fedora-rawhide-x86_64/00951636-python-importlib-metadata/

For all our attempts to build python-importlib-metadata with Python 3.8, see:
https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/python-importlib-metadata/

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.8:
https://copr.fedorainfracloud.org/coprs/g/python/python3.8/

Comment 1 Miro Hrončok 2019-07-01 13:04:50 UTC
importlib-metadata is standard library backport and should not be needed on 3.8, however I'm quite sure some packages will list it in their requires nevertheless.

Comment 2 Zbigniew Jędrzejewski-Szmek 2019-07-02 08:52:21 UTC
Let's just retire it. The potential for confusion is too big. If something lists it as a dep, it's a bug to be fixed.

Comment 3 Miro Hrončok 2019-07-02 09:03:47 UTC
OK, let deal with such when it's time:

https://github.com/pytest-dev/pluggy/issues/222
https://github.com/pytest-dev/pytest/issues/5537

Comment 4 Ben Cotton 2019-08-13 17:11:25 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to '31'.

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

Comment 6 Miro Hrončok 2019-08-21 16:35:45 UTC
The f32-python side tag has been merged. In order to rebuild the package, do it in regular rawhide, but please wait until python3-3.8 is tagged:

  $ koji wait-repo f32-build --build python3-3.8.0~b3-3.fc32


If your built already started in f32-python, after it is finished, please tag it to rawhide with:

  $ koji tag-build f32-pending <nvr>

For example:

  $ koji tag-build f32-pending libreoffice-6.3.0.4-3.fc32

Thanks!

(This comment is mass posted to all bugzillas blocking the PYTHON38 tracking bug.)

Comment 7 Miro Hrončok 2019-08-21 17:29:41 UTC
(Python 3.8 has landed in the rawhide buildroot.)

Comment 8 Miro Hrončok 2019-08-22 11:30:18 UTC
Package retired. I will obsolete it from fedora-obsolete-packages.


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