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

Install fails on python 3.12 #183

Open
ejm714 opened this issue Mar 1, 2024 · 2 comments
Open

Install fails on python 3.12 #183

ejm714 opened this issue Mar 1, 2024 · 2 comments
Labels
bug Something isn't working dependencies Pull requests that update a dependency file

Comments

@ejm714
Copy link

ejm714 commented Mar 1, 2024

To reproduce, set up a conda environment with python=3.12 and then try to pip install the package.

Unpinning numpy should resolve this. Is there a reason this specific version is pinned?

❯ uv pip install aequitas
Resolved 50 packages in 5.69s
   Built antlr4-python3-runtime==4.9.3
   Built millify==0.1.1
error: Failed to download distributions
  Caused by: Failed to fetch wheel: numpy==1.23.5
  Caused by: Failed to build: numpy==1.23.5
  Caused by: Build backend failed to determine extra requires with `build_wheel()`:
--- stdout:

--- stderr:
Traceback (most recent call last):
  File "<string>", line 8, in <module>
  File "/Users/emily/Library/Caches/uv/.tmpFmkBHz/.venv/lib/python3.12/site-packages/setuptools/__init__.py", line 10, in <module>
    import distutils.core
ModuleNotFoundError: No module named 'distutils'
---
@sgpjesus sgpjesus added bug Something isn't working dependencies Pull requests that update a dependency file labels Mar 6, 2024
@diehlbw
Copy link

diehlbw commented Jun 4, 2024

I'd be willing to spin up a PR for this. Would it be acceptable to weaken numpy to numpy>=1.23.5 in main.txt or are you wanting strict pinning on it specifically?

From your testing script I found two other minor changes that are needed for this:
I think tabulate in cli.cxt would also need to be adjusted to 0.9.0 or there abouts.
Also, one of the test assertions is an exact string warning message and the float changes representation between python 3.11 and 3.12

@ejm714
Copy link
Author

ejm714 commented Jun 11, 2024

I guess the main underlying question I have is why the requirements are pinned at all. This makes it increasingly likely that the package won't be installable for newer python versions and it also means you can't take advantage of bug fixes and improvements in your dependencies. If there are certain issues with backwards compatibility, having floors or ceilings for your dependencies is reasonable but I'd be surprised if you truly need pinned versions. Would you be open to unpinning the requirements?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working dependencies Pull requests that update a dependency file
Projects
None yet
Development

No branches or pull requests

3 participants