Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

python312Packages.pykeepass missing runtime dependency (github tag issue upstream?) #329259

Closed
jrbp opened this issue Jul 22, 2024 · 7 comments
Closed
Labels
0.kind: bug Something is broken

Comments

@jrbp
Copy link

jrbp commented Jul 22, 2024

Describe the bug

The installed version crashes with ModuleNotFoundError: No module named 'pkg_resources' (e.g. when loaded by keepmenu). The issue of setuptools not being installed as a runtime dependency is actually fixed upstream, however there seems to be is an issue with the v4.1.0 release tag on that repo causing fetchfromgit to not obtain the right version. I opened an issue libkeepass/pykeepass#398 there to let them know. OTOH it does seem that the version currently tagged v4.0.8 may be the one we want for now anyway?

Steps To Reproduce

Steps to reproduce the behavior:

  1. nix-shell -p "python312.withPackages (ps: [ps.pykeepass])"
  2. python -c "import pykeepass"

Expected behavior

import without errors

Notify maintainers

@dotlambda

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.41, NixOS, 24.11 (Vicuna), 24.11.20240719.1d9c2c9`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.5`
 - nixpkgs: `/nix/store/l6spwdi1xs20q24fqfi3xwxx0d2x9q2m-source`

Add a 👍 reaction to issues you find important.

@jrbp jrbp added the 0.kind: bug Something is broken label Jul 22, 2024
@dotlambda
Copy link
Member

fixed by #328675

@jrbp
Copy link
Author

jrbp commented Jul 23, 2024

For my purposes this is a functional fix (I can use keepmenu). Though in case it's useful to anyone:

  1. This still installs some commit from pykeepass v4.0.7 as the git tag v4.1.0 in the pykeepass repo does not currently point to 4.1.0 code.
  2. Versions of pykeepass containing Package metadata version retrieval fix. libkeepass/pykeepass#392 (such as the v4.0.8 tag of the pykeepass repo) shouldn't need the setuptools dependency for python >3.8.

@dotlambda
Copy link
Member

@jrbp Good find! Do you think we should revert to 4.0.7 until this discrepancy is cleared up upstream?

@dotlambda
Copy link
Member

@fabiscafe
Copy link

Thanks for the cc 👍

@jrbp
Copy link
Author

jrbp commented Jul 23, 2024

@jrbp Good find! Do you think we should revert to 4.0.7 until this discrepancy is cleared up upstream?

@dotlambda That's probably the most straightforward thing to do atm. It looks like the v4.0.8 tag actually points to 4.1.0 code, and the 4.1.0 points to a deleted 4.0.8 branch (see libkeepass/pykeepass#398 (comment)).

So the options are

  1. Do nothing, so we install what appears to be a 4.0.7 commit (based on pyproject.toml) which should now run with the setuptools dependency, though we are listing it as 4.1.0 in nixpkgs which isn't ideal.
  2. Point to the 4.0.8 tag (which is really 4.1.0). This actually installs the newest version, but is a bit confusing.
  3. Just revert to 4.0.7 until upstream adds a fix (which really only needs to be a new git tag).

@dotlambda
Copy link
Member

#331001 will finally update to a version that doesn't use pkg_resources.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: bug Something is broken
Projects
None yet
Development

No branches or pull requests

3 participants