eclipse-score / eclipse-score/bazel-tools-python
Bugfix: Broken dependency resolution due to removed python 3.8 support in rules_python
- Linguagem predominante
- Python
- Estrelas
- 0
- Forks
- 4
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
When using `score_bazel_tools_python` 0.1.3 (which references `rules_python` 1.4.1) in a repository that specifices a version of `rules_python` >= 1.8.0, this breaks. Due to dependency resolution following "Minimal Version Selection", the newer `rules_python` version is taken.
That is also the case if a recent `score_docs_as_code` (>=3.0.0) is referenced, as this itself references `rules_python` 1.8.3:
https://github.com/eclipse-score/docs-as-code/blob/main/MODULE.bazel#L22
**The support of python 3.8 was dropped in rules_python 1.8.0, leading to the failure**
https://rules-python.readthedocs.io/en/latest/changelog.html#v1-8-0
I guess that's valid since python 3.8 support from the python core team was stopped in October 2024.
In `score_bazel_tools_python` there is the implicit assumption that python 3.8 support from `rules_python` exists.
Either that should be removed or reworked.
Actual error message:
> ~/score/inc_someip_gateway$ bazel run //:docs
ERROR: module extension @@rules_python+//python/extensions:python.bzl%python does not generate repository "python_3_8", yet it is imported as "bazel_tools_python_python_3_8" in the usage at https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_bazel_tools_python/0.1.3/MODULE.bazel:74:23 (did you mean 'python_3_9'?)
INFO: Elapsed time: 0.814s
INFO: 0 processes.
ERROR: Build did NOT complete successfully
ERROR: Build failed. Not running target
> [!IMPORTANT]
> Make sure to link this issue with the PR for your bugfix.
Guia de contribuição
Direção de pesquisa
Reproduce the failure with `bazel run //:docs`, then inspect the `score_bazel_tools_python` 0.1.3 MODULE.bazel reference at the linked registry URL and the `rules_python` 1.8.0 changelog. Trace the `python_3_8` import and determine the compatible behavior for newer rules_python versions; done means dependency resolution no longer requests the unavailable repository.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- build-system
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 52/100