Description
Since Poetry, python packaging has gone through quite a bit of changes, and projects are slowly migrating to new tools. Unfortunately, uv seems to not be supported either natively, or through pip install .
Describe the Enhancement
Currently python projects using uv
as a dependency manager don't get properly recognized. There is no buildpack natively supporting uv
, and pip-install
requires a requirements.txt
file that uv
doesn't actively manage. Adding support to pip-install
for installing projects from pyproject.toml
files, and a buildpack specifically for uv
-managed projects would be the goal.
Possible Solution
A new buildpack, similar to poetry*
family of buildpacks could be made for uv
. So, uv
to provide uv
, uv-install
to install packages using uv
, and uv-run
to set the start command.
Additionally, the pip-install
buildpack could also run and install the project if pyproject.toml
is detected, and no other package-manager specific buildpack can be run.
Motivation
Currently, projects package managers other than Pipenv
and Poetry
have to separately manage a requirements.txt
file in order to be successfully packaged using these buildpack. Adding fallback support for pyproject.toml
to the pip-install
could allow these projects to use buildpacks without going through extra steps. Obviously, pm-specific buildpacks should still be implemented, maintained and preferred, if for no other reason than dependency locking.