Skip to content

The Python module rpds, a dependency of SHPC, does not get installed. #688

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

Open
dipietrantonio opened this issue Feb 20, 2025 · 3 comments

Comments

@dipietrantonio
Copy link
Contributor

dipietrantonio commented Feb 20, 2025

Describe the bug

When installing SHPC 0.1.30 the dependency rpds does not get installed alongside it, causing errors at runtime.

spack@joey-01:/software/setonix/2025.03/pawsey/software/shpc/registry/quay.io/pawsey/pytorch> shpc uninstall pytorch
Traceback (most recent call last):
  File "/software/setonix/2025.03/pawsey/software/shpc/bin/realshpc", line 8, in <module>
    sys.exit(run_shpc())
             ^^^^^^^^^^
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/shpc/client/__init__.py", line 556, in run_shpc
    main(args=args, parser=parser, extra=extra, subparser=helper)
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/shpc/client/uninstall.py", line 10, in main
    from shpc.main import get_client
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/shpc/main/__init__.py", line 10, in <module>
    from .settings import Settings
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/shpc/main/settings.py", line 22, in <module>
    import jsonschema
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/jsonschema/__init__.py", line 13, in <module>
    from jsonschema._format import FormatChecker
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/jsonschema/_format.py", line 11, in <module>
    from jsonschema.exceptions import FormatError
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/jsonschema/exceptions.py", line 15, in <module>
    from referencing.exceptions import Unresolvable as _Unresolvable
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/referencing/__init__.py", line 5, in <module>
    from referencing._core import Anchor, Registry, Resource, Specification
  File "/software/setonix/2025.03/pawsey/software/shpc/lib/python3.11/site-packages/referencing/_core.py", line 9, in <module>
    from rpds import HashTrieMap, HashTrieSet, List
ModuleNotFoundError: No module named 'rpds'

I suspect it was not included in the dependency list used by pip to install the needed packages.

@vsoch
Copy link
Member

vsoch commented Feb 20, 2025

shpc does not use rpds directly (and I'm not sure what it is). From the trace it looks like it's required for jsonschema, so perhaps there was an update to that library that triggered this? I think the bug report would go there, and we might just pin jsonschema to a previously working version in the meantime (while it isn't fixed).

@dipietrantonio
Copy link
Contributor Author

Well spotted, looks like it comes from referencing. I will open an issue to that repository. Feel free to close this one, thank you!

@vsoch
Copy link
Member

vsoch commented Feb 20, 2025

Thanks, @dipietrantonio. We can keep this open to follow up if a pin to jsonschema is needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants