Bug 1779888 - python3-keyring 19.3.0 not installable in rawhide
Summary: python3-keyring 19.3.0 not installable in rawhide
Alias: None
Product: Fedora
Classification: Fedora
Component: python-keyring
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Fabio Valentini
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2019-12-04 22:32 UTC by Fabio Valentini
Modified: 2019-12-15 01:18 UTC (History)
6 users (show)

Fixed In Version: python-keyring-19.3.0-2.fc31
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2019-12-15 01:18:13 UTC
Type: Bug

Attachments (Terms of Use)

Description Fabio Valentini 2019-12-04 22:32:49 UTC
The new version includes a dependency on "python3-importlib-metadata", which cannot be satisfied on rawhide.

This dependency on importlib-metadata in the setup.cfg file is "correctly" specified as "only if < python 3.8", but it looks like setuptools-scm does not parse this correctly.

To reproduce:

$ mock -r fedora-rawhide-x86_64 install python3-keyring


 Problem: conflicting requests
  - nothing provides python3-importlib-metadata needed by python3-keyring-19.3.0-1.fc32.noarch

Comment 1 Christopher Tubbs 2019-12-04 22:41:57 UTC
I don't know enough about python setuptools (or python, in general) to fix this. I have been keeping the package alive in Fedora only because I use the `keyring` command that ships with it in some of my scripts. I tested the changes and they work in F31, and it built for rawhide, but I've been lucky that the packaging tasks have been simple so far... but I don't know how to fix this issue. Are you able to help?

Comment 2 Fabio Valentini 2019-12-04 22:48:41 UTC
Sure. At first glance, this looks like a bug in setuptools-scm.

To work around this for fedora, it should be enough to remove the "broken" line from setup.cfg for rawhide. I'll send you a PR. :)

Comment 3 Fabio Valentini 2019-12-04 23:03:45 UTC
Please check that I haven't made any stupid mistakes:

At least the package builds fine on both fedora rawhide and 31, with correct generated dependencies on both releases.

Comment 4 Christopher Tubbs 2019-12-05 00:14:26 UTC
I don't generally test on rawhide, since I don't use rawhide, but I test in the current Fedora version, and then assume if that builds in rawhide (with any built-in test cases), it's probably fine.

If you want to test on rawhide, my basic test case is:

  keyring set login blah (then assign a password)
  keyring get login blah (ensure the output is the password that was given in step 1)
  keyring del login blah

I do this under GNOME, so I also tend to use seahorse to manually check that the "blah" entry was created in gnome-keyring-daemon after the first step. After making sure these work, I then redo these steps, using distro-sync back to the old version after the first step to verify the next two steps work with the older version (to verify compatibility in the stored form).

Comment 5 Fedora Update System 2019-12-06 00:24:20 UTC
FEDORA-2019-880da0a2cb has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-880da0a2cb

Comment 6 Fedora Update System 2019-12-07 03:39:08 UTC
python-keyring-19.3.0-2.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-880da0a2cb

Comment 7 Fedora Update System 2019-12-15 01:18:13 UTC
python-keyring-19.3.0-2.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, 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.