bazel-contrib / bazel-contrib/rules_python
Make it easier to load wheels from the local file system
- Lenguaje dominante
- Starlark
- Estrellas
- 688
- Forks
- 721
- Merge medio
- 15 h 7 min
- PR fusionados (30 d)
- 76
Descripción
# 🚀 feature request
### Relevant Rules
Possibly in `whl_library`, but more likely in `requirements.txt`
### Description
I had created a patched wheel that I wished to test with Bazel and rules_python *before* publishing it to our internal Artifactory package index. There was no easy way to accomplish this.
I eventually worked out that I could test my patched wheel by using [pip2pi](https://pypi.org/project/pip2pi/) to create a local package index on my filesystem, then adding `--index-url=/tmp/pypi/simple` to the beginning of my `requirements.txt`.
See [this writeup](https://github.com/georgevreilly/torch21?tab=readme-ov-file#using-the-patched-wheel-with-rules_python) for full details.
### Describe the solution you'd like
If you have a solution in mind, please describe it.
I think the easiest thing for users is if they can specify a file path in `requirements.txt`; e.g.,
```
sympy==1.12
./tmp/torch-2.1.0+stripe.5-cp38-cp38-manylinux1_x86_64.whl
triton==2.1.0
```
Pip allows this, after all.
### Describe alternatives you've considered
Have you considered any alternative solutions or workarounds?
Guía de contribución
Línea de trabajo
Comienza leyendo el manejo de whl_library y requirements.txt en rules_python para seguir cómo se analizan y resuelven las entradas de dependencias. Comprueba si las pruebas existentes cubren las fuentes de paquetes locales; se considera terminado cuando las reglas de Bazel pueden consumir una ruta de wheel en requirements.txt sin requerir su publicación en un índice de paquetes externo.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- build-system
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100