eclipse-score / eclipse-score/bazel-tools-python

Bugfix: Broken dependency resolution due to removed python 3.8 support in rules_python

未关闭
#19 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
Python
星标
0
派生
4
PR 合并指标
30 天内没有已合并 PR

描述

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.

贡献指南

打开贡献指南

调研方向

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.

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
build-system
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
冷清
描述清晰度
基本清楚
新手友好度
52/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。