Support for the uv package manager (uv.lock)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 52/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- build-system
Línea de trabajo
Comienza siguiendo el soporte existente para Pipfile/Pipfile.lock y su flujo de generación de requirements.txt; después, compara ese camino con uv export y con el flujo normal de pip install. Se considera terminado cuando los proyectos que contienen uv.lock y pyproject.toml pueden subirse sin un requirements.txt mantenido manualmente, con los fallbacks indicados para la versión de Python y el instalador cubiertos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi,
I couldn't find any existing or past issues mentioning this.
It'd be great to support uv for dependency management. It's one of the most widely used Python package managers, and a lot of projects now standardise on uv.lock the way they used to on Pipfile.lock. A good number of our projects at SAP have moved over to uv + uv.lock entirely, and today those apps can't be pushed as-is -- you end up keeping a separate requirements.txt in the repo by hand, purely for compatibility with the CF Python buildpack, which rather defeats the point of having a lockfile.
The nice part is the buildpack already has the right shape for this. pipenv support works by generating a requirements.txt (from Pipfile.lock) and then handing off to the normal pip install path -- uv fits that exact pattern, and uv export exists for precisely this purpose.
Rough idea I'm thinking of would be:
- Detect
uv.lock(+pyproject.toml), much likePipfileis detected today - Run
uv export --format requirements-txtto turn the lock into arequirements.txt - Install it with
uv pip install(uv's installer is dramatically faster than pip), falling back to pip - Read the Python version from
.python-version/requires-pythoninpyproject.toml
Routing through a generated requirements.txt keeps all the existing machinery working unchanged, so it should be a reasonably contained change. plus uv ships as a PyPI wheel, so it can be added as a manifest dependency the same way pipenv is.
I'd be happy to put together a PR if this seems worth including.
Thanks!
- Lenguaje dominante
- Go
- Estrellas
- 122
- Forks
- 281
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de cloudfoundry/python-buildpack
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
cloudfoundry/python-buildpack#989 · 4 comentarios ·
-
Dependency Deprecation Alert Abiertodependency-deprecation
cloudfoundry/python-buildpack#784 · 35 comentarios · 1 asignado ·
Todos los issues de cloudfoundry/python-buildpack
Issues similares
-
Type/Bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
OpenNSW/nsw-srilanka#497 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
milvus-io/birdwatcher#545 ·
-
kind/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
kubernetes-sigs/prow#953 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
caddyserver/caddy#8046 ·