-
Notifications
You must be signed in to change notification settings - Fork 14
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.