Bug 2304321

Summary: Review Request: python-ledgerwallet - A library to control Ledger devices
Product: [Fedora] Fedora Reporter: Peter Lemenkov <lemenkov>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: benson_muite, hegjon, package-review, terjeros
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
URL: https://github.com/LedgerHQ/ledgerctl
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 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: 1831350    
Bug Blocks:    
Attachments:
Description Flags
Updated patch to remove unwanted toml line (tomlib is in std lib now) none

Description Peter Lemenkov 2024-08-13 13:39:32 UTC
Spec URL: https://peter.fedorapeople.org/packages/python-ledgerwallet.spec
SRPM URL: https://peter.fedorapeople.org/packages/python-ledgerwallet-0.5.0-1.fc40.src.rpm
Description: A library to control Ledger devices
Fedora Account System Username: peter

Koji scratch build for Rawhide:

* https://koji.fedoraproject.org/koji/taskinfo?taskID=121896069

It does works and passes all the tests. However some  devices requires a more recent protobuf library than the one from Rawhide so I reluctantly have to relax dependency requirements. Hope a more modern protobuf library hits at least Rawhide soon enough.

Comment 1 Jonny Heggheim 2025-04-11 08:02:03 UTC
Failed to build under mock for rawhide:

+ /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/python-ledgerwallet-0.5.0-build/ledgerwallet-0.5.0/pyproject-wheeldir --output /builddir/build/BUILD/python-ledgerwallet-0.5.0-build/python-ledgerwallet-0.5.0-1.fc43.x86_64-pyproject-buildrequires -t
Handling setuptools>=45 from build-system.requires
Requirement satisfied: setuptools>=45
   (installed: setuptools 76.1.0)
Handling setuptools_scm[toml]>=6.2 from build-system.requires
Requirement satisfied: setuptools_scm[toml]>=6.2
   (installed: setuptools_scm 8.2.1)
   (extras are currently not checked)
Handling wheel from build-system.requires
Requirement satisfied: wheel
   (installed: wheel 0.45.1)
running egg_info
writing ledgerwallet.egg-info/PKG-INFO
writing dependency_links to ledgerwallet.egg-info/dependency_links.txt
writing entry points to ledgerwallet.egg-info/entry_points.txt
writing requirements to ledgerwallet.egg-info/requires.txt
writing top-level names to ledgerwallet.egg-info/top_level.txt
reading manifest file 'ledgerwallet.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'ledgerwallet.egg-info/SOURCES.txt'
Handling tox-current-env >= 0.0.16 from tox itself
Requirement satisfied: tox-current-env >= 0.0.16
   (installed: tox-current-env 0.0.16)
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/usr/lib/python3.13/site-packages/tox/__main__.py", line 6, in <module>
    run()
    ~~~^^
  File "/usr/lib/python3.13/site-packages/tox/run.py", line 20, in run
    result = main(sys.argv[1:] if args is None else args)
  File "/usr/lib/python3.13/site-packages/tox/run.py", line 42, in main
    result = provision(state)
  File "/usr/lib/python3.13/site-packages/tox/provision.py", line 87, in provision
    MANAGER.tox_add_core_config(state.conf.core, state)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/tox/plugin/manager.py", line 81, in tox_add_core_config
    self.manager.hook.tox_add_core_config(core_conf=core_conf, state=state)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__
    return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
           ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall
    res = hook_impl.function(*args)
  File "/usr/lib/python3.13/site-packages/tox_current_env/hooks4.py", line 82, in tox_add_core_config
    raise LookupError(
    ...<4 lines>...
    )
LookupError: tox configuration not found. To use tox, please ensure tox configuration is located in current directory (in tox.ini, setup.cfg, pyproject.toml, or tox.toml). See https://tox.wiki/en/latest/config.html for details.
Traceback (most recent call last):
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 730, in main
    generate_requires(
    ~~~~~~~~~~~~~~~~~^
        include_runtime=args.runtime,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<11 lines>...
        config_settings=parse_config_settings_args(args.config_settings),
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 615, in generate_requires
    generate_tox_requirements(toxenv, requirements)
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/rpm/redhat/pyproject_buildrequires.py", line 462, in generate_tox_requirements
    r.check_returncode()
    ~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib64/python3.13/subprocess.py", line 510, in check_returncode
    raise CalledProcessError(self.returncode, self.args, self.stdout,
                             self.stderr)
subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'tox', '--print-deps-to', '/builddir/build/BUILD/python-ledgerwallet-0.5.0-build/ledgerwallet-0.5.0/.pyproject-builddir/tmp1qwjqv95', '--print-extras-to', '/builddir/build/BUILD/python-ledgerwallet-0.5.0-build/ledgerwallet-0.5.0/.pyproject-builddir/tmpa6kckflk', '--no-provision', '/builddir/build/BUILD/python-ledgerwallet-0.5.0-build/ledgerwallet-0.5.0/.pyproject-builddir/tmpd87vrcp4', '--assert-config', '-q', '-r', '-e', 'py313']' returned non-zero exit status 1.
RPM build errors:
error: Bad exit status from /var/tmp/rpm-tmp.vtbPVO (%generate_buildrequires)
    Bad exit status from /var/tmp/rpm-tmp.vtbPVO (%generate_buildrequires)
Child return code was: 1
Mock Version: 6.1

Comment 2 Benson Muite 2025-04-11 08:31:45 UTC
Maybe upstream would consider using https://packages.fedoraproject.org/pkgs/python-pure-protobuf/ as an option?

Comment 3 Fedora Review Service 2025-11-20 14:49:27 UTC
Hello,
I do realize that this is possibly an old ticket. I am sorry that it hasn't been
reviewed yet. Let me trigger the Fedora Review Service to see if the package
builds successfully. Hopefully, a green check mark will attract some reviewer.

If I am resurrecting an old ticket that you are not interested in anymore, my
apologies, feel free to close it.

[fedora-review-service-build]

Comment 4 Fedora Review Service 2025-11-20 14:51:18 UTC
Copr build:
https://copr.fedorainfracloud.org/coprs/build/9819687
(failed)

Build log:
https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-review-2304321-python-ledgerwallet/fedora-rawhide-x86_64/09819687-python-ledgerwallet/builder-live.log.gz

Please make sure the package builds successfully at least for Fedora Rawhide.

- If the build failed for unrelated reasons (e.g. temporary network
  unavailability), please ignore it.
- If the build failed because of missing BuildRequires, please make sure they
  are listed in the "Depends On" field


---
This comment was created by the fedora-review-service
https://github.com/FrostyX/fedora-review-service

If you want to trigger a new Copr build, add a comment containing new
Spec and SRPM URLs or [fedora-review-service-build] string.

Comment 5 Terje Rosten 2025-11-27 14:35:11 UTC
Try to remove -t  from

%pyproject_buildrequires

 -t imnplies tox test infra the package don't use.


Read the README here:

 https://src.fedoraproject.org/rpms/pyproject-rpm-macros

> For projects that specify test requirements in their tox configuration, these can be added using the -t flag (default tox environment)

Comment 6 Terje Rosten 2025-11-27 14:59:20 UTC
Removing -t amd the toml line from pyproject.toml gives successful build:

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

Comment 7 Terje Rosten 2025-11-27 15:00:33 UTC
Created attachment 2116371 [details]
Updated patch to remove unwanted toml line (tomlib is in std lib now)