bazel-contrib / bazel-contrib/rules_python
pip.override in upstream modules but got "overrides are only supported in root modules"
- Vorherrschende Sprache
- Starlark
- Sterne
- 688
- Forks
- 721
- Ø Merge
- 15 Std. 7 Min.
- Gemergte PRs (30 T.)
- 76
Beschreibung
# 🐞 bug report
### Affected Rule
The issue is caused by the rule: https://github.com/bazelbuild/rules_python/blob/66a8b5b595710bd107c31ad5d449593536effb76/python/private/pypi/extension.bzl#L404
### Is this a regression?
No
### Description
I'm migrating from WORKSPACE to bzlmod.
There is a library `A`, in which it has patches like
```
pip.override(
file = "torch-2.3.0-cp311-cp311-manylinux1_x86_64.whl",
patch_strip = 1,
patches = [
# FIXME: https://github.com/pytorch/pytorch/issues/117350
"//bazel/patches:pytorch.patch",
"//bazel/patches:pytorch_record.patch",
],
)
```
And I have another project `B`, which depends on A, however after adding deps like
`bazel_dep(name = "A", version = "x.y.z")`
I got the error
```
ERROR: /xxxx/df5a01bdd2671083bb14bf68b19a3f38/external/rules_python~/python/private/pypi/extension.bzl:406:21: Traceback (most recent call last):
File "/xx/.cache/bazel/xxxxx/df5a01bdd2671083bb14bf68b19a3f38/external/rules_python~/python/private/pypi/extension.bzl", line 406, column 21, in _pip_impl
fail("overrides are only supported in root modules")
Error in fail: overrides are only supported in root modules
ERROR: Analysis of target '//xxx' failed; build aborted: error evaluating module extension pip in @@rules_python~//python/extensions:pip.bzl
```
## 🔬 Minimal Reproduction
## 🔥 Exception or Error
## 🌍 Your Environment
**Operating System:**
Ubuntu 24.04.1 LTS
**Output of `bazel version`:**
7.4.1
**Rules_python version:**
0.34.0
**Anything else relevant?**
Beitragsleitfaden
Rechercherichtung
Beginne bei python/private/pypi/extension.bzl etwa in den Zeilen 404-406, wo pip.override in einem Upstream-Modul den gemeldeten Fehler auslöst. Reproduziere die Migration von WORKSPACE zu bzlmod mit Bibliothek A und Projekt B unter Verwendung von Bazel 7.4.1 und rules_python 0.34.0. Als erledigt gilt die Aufgabe, wenn das Abhängigkeitsszenario gelöst oder die unterstützte Einschränkung eindeutig dokumentiert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- build-system
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 32/100