astral-sh / uv

An extremely fast Python package and project manager, written in Rust.
https://docs.astral.sh/uv
Apache License 2.0
24.75k stars 715 forks source link

Accept poetry and pipenv lockfiles for installation #1804

Closed abondrn closed 7 months ago

abondrn commented 8 months ago

When uv pip install is passed poetry.lock or Pipfile.lock (and any optional dependency groups, or extras) instead of requirements.txt, it could attempt to install these in the uv environment. I can only speak for myself when I say this will speed up adoption of uv in some contexts we are using it, such as executing local tests or Docker pipelines.

bschoenmaeckers commented 7 months ago

Should we consider re-implementing the poetry-export-plugin or calling it as a subprocess?

zanieb commented 7 months ago

Similar to our policy on reading pip's configuration, I don't think we can do this. I think the bullets there are a good summary of why.

michaelmior commented 2 months ago

It might not be perfect, but it would be really helpful to have at least an attempt to import from pipenv configuration. You can get close with uv add -r <(pipenv requirements) but then all package versions are pinned because pipenv requirements is based on the lock file. The other piece would be reading from the Pipfile to specify the dependencies.

zanieb commented 2 months ago

Related