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

Unpin Python requirements #59

Open
ecederstrand opened this issue Dec 20, 2022 · 4 comments · May be fixed by #60
Open

Unpin Python requirements #59

ecederstrand opened this issue Dec 20, 2022 · 4 comments · May be fixed by #60

Comments

@ecederstrand
Copy link

Overview

https://github.com/MannLabs/alphamap/blob/master/requirements.txt pins a handful of Python package dependencies, e.g. numpy==1.19.2. I cannot decide from the commit history that this is due to specific requirements of alphamap.

Pinning packages makes it difficult to combine alphamap with other packages that also depend on e.g. numpy. Instead, it would be helpful to specify dependencies either open, numpy>=1.19.2, or limited to the next major version (numpy>=1.19.2,<2), assuming dependency maintainers adhere to semantic versioning and don't introduce breaking changes between major versions.

Dependencies that need more specific versions could be pinned with a commit that references the issue describing the reasoning for pinning to exact versions. Then it's easier to go back later and check if the pinning is still necessary.

ecederstrand added a commit to ecederstrand/alphamap that referenced this issue Dec 20, 2022
@ecederstrand ecederstrand linked a pull request Dec 20, 2022 that will close this issue
@m-pauper
Copy link

I am facing similar issue and it seems this has stagnated. Any updates? Trying to install with poetry:

> poetry add alphamap
Using version ^0.1.10 for alphamap

Updating dependencies
Resolving dependencies... (3.4s)

Because pandas (1.4.0) depends on numpy (>=1.20.0)
 and alphamap (0.1.10) depends on numpy (1.19.2), pandas (1.4.0) is incompatible with alphamap (0.1.10).
And because alphamap (0.1.10) depends on pandas (1.4.0), alphamap is forbidden.
So, because no versions of alphamap match >0.1.10,<0.2.0
 and peptide-mapping depends on alphamap (^0.1.10), version solving failed.

@ibludau
Copy link
Collaborator

ibludau commented Jul 25, 2024

Sorry for not reacting on this earlier. We have now created a new alphamap release with loose dependencies. This version should now be compatible with other packages and for integration. Please let us know in case you still encounter any issues!

@m-pauper
Copy link

m-pauper commented Jul 25, 2024

Hello, thanks for trying to fix. There's a different issue now.

  1. I have had to set python specifically to python = ">=3.8,<3.10", otherwise structuremap would complain.
  2. install alphamap now fails with:
 • Installing kaleido (0.2.1.post1): Failed

  RuntimeError

  Unable to find installation candidates for kaleido (0.2.1.post1)

  at ~/.local/share/pypoetry/venv/lib/python3.10/site-packages/poetry/installation/chooser.py:76 in choose_for
       72│
       73│             links.append(link)
       74│
       75│         if not links:
    →  76│             raise RuntimeError(f"Unable to find installation candidates for {package}")
       77│
       78│         # Get the best link
       79│         chosen = max(links, key=lambda link: self._sort_key(package, link))
       80│

Edit: It does work if I first create a poetry shell and then pip install alphamap. But it does not with poetry add alphamap. Maybe not an issue on your side, although if you have any ideas how to fix this I'd be all ears :)

@ibludau
Copy link
Collaborator

ibludau commented Jul 25, 2024

Thanks for your prompt reply:

  1. structuremap is next on my todo list - will get back to you about that
  2. I haven't tried installing alphamap via poetry so far, so no idea what this could be about, but can try to get to the bottom of it

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

Successfully merging a pull request may close this issue.

3 participants