Bug 1703628 - python3-trezor in f30 branch seems to have unresolved dependencies
Summary: python3-trezor in f30 branch seems to have unresolved dependencies
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: python-trezor
Version: 31
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jonny Heggheim
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1705151 1754684
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-04-27 01:28 UTC by Todd Warner
Modified: 2019-10-26 17:23 UTC (History)
4 users (show)

Fixed In Version: python-trezor-0.11.5-1.fc30 python-trezor-0.11.5-1.fc31
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-10-10 16:56:19 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Todd Warner 2019-04-27 01:28:46 UTC
Description of problem:
Broken dependencies

Trying to build a package with a dependency on python3-trezor (included in f30) and I get these errors...
"""
  - nothing provides python-typing-extensions needed by python3-trezor-0.11.2-1.fc30.noarch
  - nothing provides python3.7dist(construct) >= 2.9 needed by python3-trezor-0.11.2-1.fc30.noarch
  - nothing provides python3.7dist(pyblake2) >= 0.9.3 needed by python3-trezor-0.11.2-1.fc30.noarch
"""

Comment 1 Todd Warner 2019-04-27 01:39:38 UTC
Note. Just try to install python3-trezor on Fedora 30:
```
sudo dnf install python3-trezor
```

And you will see the breakage.

Comment 2 Jonny Heggheim 2019-05-01 13:17:07 UTC
> python-typing-extensions

This was a typo and have been fixed.


> python3.7dist(construct)

Fedora 30 ships with a lower version. I hope it is possible to bump the version without causing other packages to fail.


> python3.7dist(pyblake2)

Python 3.6 and later includes this modules, but we need to make a patch and submit it upstream.

Comment 3 hgbhcprm 2019-07-09 15:08:29 UTC
Any chance this will get fixed? It's blocking me from upgrading to F30

Comment 4 Jonny Heggheim 2019-07-10 20:47:07 UTC
It depends on python-construct that have not been updated for f30. Are you able to push python-construct >= 2.9 for f30 Frederik Holden?

Comment 5 Frederik Holden 2019-07-11 00:03:06 UTC
(In reply to Jonny Heggheim from comment #4)
> It depends on python-construct that have not been updated for f30. Are you
> able to push python-construct >= 2.9 for f30 Frederik Holden?

You're asking the wrong person, I'm not the packager for that. I'm just on the CC list for this because I use python-trezor.

Comment 6 Todd Warner 2019-09-01 12:35:34 UTC
I'm still dead in the water and can't move beyond Fedora 29 because of this one package...

"""
  - nothing provides python3.7dist(construct) >= 2.9 needed by python3-trezor-0.11.2-2.fc30.noarch
  - nothing provides python3.7dist(pyblake2) >= 0.9.3 needed by python3-trezor-0.11.2-2.fc30.noarch
"""

Comment 7 Todd Warner 2019-09-01 12:51:49 UTC
And, of course, the problem persists into Fedora 31 (or should I open another bug?). I am going to bump the version of the OS this applies to.
"""
  - nothing provides python3.7dist(pyblake2) >= 0.9.3 needed by python3-trezor-0.11.2-3.fc31.noarch
"""

Comment 8 Jonny Heggheim 2019-09-09 19:10:15 UTC
(In reply to Todd Warner from comment #6)
> I'm still dead in the water and can't move beyond Fedora 29 because of this
> one package...
> 
> """
>   - nothing provides python3.7dist(construct) >= 2.9 needed by
> python3-trezor-0.11.2-2.fc30.noarch
>   - nothing provides python3.7dist(pyblake2) >= 0.9.3 needed by
> python3-trezor-0.11.2-2.fc30.noarch
> """

Thanks for being patience, I will update the stack and try to fix issues this week, I am going to upgrade to Fedora 30 myself.

Comment 9 Fedora Update System 2019-09-20 22:17:34 UTC
FEDORA-2019-3c9ce28ded has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-3c9ce28ded

Comment 10 Fedora Update System 2019-09-20 22:17:40 UTC
FEDORA-2019-843eae9696 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-843eae9696

Comment 11 Fedora Update System 2019-09-21 01:08:43 UTC
python-trezor-0.11.4-2.fc30 has been pushed to the Fedora 30 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-843eae9696

Comment 12 Fedora Update System 2019-09-21 02:01:11 UTC
python-trezor-0.11.4-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-3c9ce28ded

Comment 13 Jonny Heggheim 2019-09-24 08:53:21 UTC
Depends on 1754684

Comment 14 Jonny Heggheim 2019-09-30 22:15:16 UTC
Can you try https://bodhi.fedoraproject.org/updates/FEDORA-2019-a5919b0faf ?

It depends on https://bodhi.fedoraproject.org/updates/FEDORA-2019-500a20bca1

trezorctl will crash because of wrong version of python-construct on f30, but the library should work. I am still waiting for terjeros.no to update python-construct on f30 (bug 1705151).

Comment 15 Frederik Holden 2019-10-02 18:18:51 UTC
(In reply to Jonny Heggheim from comment #14)
> Can you try https://bodhi.fedoraproject.org/updates/FEDORA-2019-a5919b0faf ?
> 
> It depends on https://bodhi.fedoraproject.org/updates/FEDORA-2019-500a20bca1
> 
> trezorctl will crash because of wrong version of python-construct on f30,
> but the library should work. I am still waiting for terjeros.no to
> update python-construct on f30 (bug 1705151).

I tested now with that update.

- It installs fine
- trezorctl crashes (as you predicted)
- Electrum can't find the Trezor ("Please insert your Trezor" message appears)
- The following simple library test can't find the device either:

$ python3
Python 3.7.4 (default, Jul  9 2019, 16:32:37)
[GCC 9.1.1 20190503 (Red Hat 9.1.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import trezorlib.transport
>>> trezorlib.transport.enumerate_devices()
[]

Comment 16 Jonny Heggheim 2019-10-02 20:47:35 UTC
Thanks for testing, I just upgraded to fedora 30, but I did not bring my trezor for travel, so I will not have the possibility to test with real hardware before next week.

Could you check that you get the same empty collection when running python3 as root?

Comment 17 Frederik Holden 2019-10-02 22:32:00 UTC
(In reply to Jonny Heggheim from comment #16)
> Thanks for testing, I just upgraded to fedora 30, but I did not bring my
> trezor for travel, so I will not have the possibility to test with real
> hardware before next week.
> 
> Could you check that you get the same empty collection when running python3
> as root?

Same result when running as root. I also tried installing python3-construct from atim's COPR (https://copr.fedorainfracloud.org/coprs/atim/password-safe/). After installing that trezorctl runs, but neither it nor trezorlib.transport.enumerate_devices() can find any connected devices.

Comment 18 Frederik Holden 2019-10-03 14:48:14 UTC
I figured out what the problem was. HidTransport doesn't enable unless python3-hidapi is installed. After installing that, enumerate_devices() manages to find the device just fine, Electrum sees the device, and trezorctl communicates with it if python3-construct is installed. Perhaps python3-hidapi should be added as a dependency?

Comment 19 Jonny Heggheim 2019-10-06 13:24:28 UTC
(In reply to Frederik Holden from comment #18)
> I figured out what the problem was. HidTransport doesn't enable unless
> python3-hidapi is installed. After installing that, enumerate_devices()
> manages to find the device just fine, Electrum sees the device, and
> trezorctl communicates with it if python3-construct is installed. Perhaps
> python3-hidapi should be added as a dependency?

Thanks for finding out the error. For Fedora 29 and lower, python3-hidapi was added as dependency, but it was removed due to the automatic dependency generator, since hidapi was defined as optional by upstream. Will add it back.

Comment 20 Fedora Update System 2019-10-07 15:20:40 UTC
FEDORA-2019-88093b8914 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-88093b8914

Comment 21 Fedora Update System 2019-10-07 15:20:41 UTC
FEDORA-2019-95346cebe4 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-95346cebe4

Comment 22 Jonny Heggheim 2019-10-07 22:05:09 UTC
Hopefully the last update will work

Comment 23 Fedora Update System 2019-10-08 20:32:48 UTC
python-trezor-0.11.5-1.fc30 has been pushed to the Fedora 30 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-88093b8914

Comment 24 Fedora Update System 2019-10-08 21:42:10 UTC
python-trezor-0.11.5-1.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-95346cebe4

Comment 25 Fedora Update System 2019-10-10 16:56:19 UTC
python-trezor-0.11.5-1.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

Comment 26 Fedora Update System 2019-10-26 17:23:05 UTC
python-trezor-0.11.5-1.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.