-
-
Notifications
You must be signed in to change notification settings - Fork 467
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
pip-compile
resolves against internal python version
#82
Comments
Please share the output. Rye is using pip-tools behind the scenes in a way that Python versions should be accurately reflected. |
|
I found that the |
Can you please paste the output of |
I have reproduced on my mac with the latest version.
commit: unknown (e51b54b 2023-05-01) |
Ah damn. I thought i managed to get piptools to honor the right python version. Looks like more hackery is needed. |
It does indeed sound like pip-compile cannot be coerced into behaving like I want. Probably even for a more functional prototype rye would have to move away from pip-tools for something else. |
This is raw but I thought it was worth sharing https://github.com/konstin/monotrail-resolve. |
@mitsuhiko you've probably considered this too (feel free to ignore me if so!), but I've been wondering if the newish |
@davegaeddert I did play around with it, but it does not seem like it's particularly cooperative:
I also tried patching around in pip's internal resolver to pass |
pip-compile
has some problempip-compile
resolves against internal python version
I tried run this command
and return Output
|
I think the issue here might be in parts that |
I think the fundamental issue this all runs into are these pip issues:
This is a good minimal example that shows the issue:
It will fail with
Note that adding It looks like the only temporary workaround before switching of pip-tools might be to install them (temporarily) into the virtualenv :-/ |
only using |
The only version I found is to temporarily make |
I think this is at least somewhat resolved for now, but longer term pip-tools should be replaced with something else. |
I think that a tool without python version dependencies should exists, which is using for finding packages and resolve dependencies. |
It's probably worth considering what https://github.com/ddelange/pipgrip does. See also ddelange/pipgrip#109, ddelange/pipgrip#40, and the PEP 665 discussion (and its 2nd take, and the main successor workshop thread) for more nuance. My personal desire is that until a successor to PEP 665 is accepted, a locking |
I think > rye init testrye
success: Initialized project in E:\testrye
Run `rye sync` to get started
> rye pin cpython@3.7
pinned cpython@3.7.9 in E:\testrye\.python-version
new toolchain has conflict with project's required python ">=3.8" - auto fix it? (y/n) |
@mitsuhiko you found my Pip issue above in #82 (comment) I did just see in the rye README that it currently only supports Linux & Mac. If that's still true you may find Pex useful, it handles the issues detailed in that bug and uses Pip under the covers. It currently also only supports Linux & Mac, although I have been working on Windows support. The locking and creation of venvs from locks support resides under the |
@jsirois Rye supports windows at this point, I corrected the Readme. I will have a look at the tool though. |
I can reproduce this issue with Python 3.8, in a newly created project:
|
There is a bug where |
Hi @mitsuhiko, After updating to latest |
I notice, currenty rye had use |
I found that the requirements using pip-compile found for flask is not match the python version 3.7.
According search the result in google, I found that the tools
pip-compile
cannot specifypython-version
, so I thought the method of usingpip-compile
with self env is not proper.The text was updated successfully, but these errors were encountered: