Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

`compile_pip_requirements` fails because setuptools contains file with spaces in name

Ouverte
#3,681 1 commentaire 1 réaction 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
48/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
python
Domaine
build-system

Piste de recherche

Commencez par reproduire bazel run //:requirements.update avec la configuration compile_pip_requirements indiquée et examinez la manière dont la règle gère le chemin setuptools Lorem ipsum.txt. Vérifiez le manifeste runfiles généré et les points d’entrée associés de la règle. C’est terminé lorsque la cible de mise à jour des requirements se construit correctement lorsqu’une dépendance contient un nom de fichier avec des espaces.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

🐞 bug report

Affected Rule

compile_pip_requirements when ran with bazel run //:requirements.update

Is this a regression?

Not sure. Similar issue is #4605.

Description

My BUILD file contains the following -

load("@rules_python//python:pip.bzl", "compile_pip_requirements")
compile_pip_requirements(
    name = "requirements",
    src = "requirements.in",
    requirements_txt = "requirements_lock.txt",
)

The issue seems to be that the file "pypi__setuptools/setuptools/_vendor/jaraco/text/Lorem ipsum.txt" used by setuptools has a space in the name and Bazel won't accept that.

I am using USE_BAZEL_VERSION=7.3.2. With MODULE having -

bazel_dep(name = "rules_python", version = "1.8.5")
python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
    python_version = "3.13",
)

🔬 Minimal Reproduction

bazel run //:requirements.update

🔥 Exception or Error


BUILD.bazel:31:25: Creating runfiles tree bazel-out/k8-fastbuild/bin/requirements.update.runfiles failed: build-runfiles failed: error executing  command 

  (cd /home/rishin/.cache/bazel/_bazel_rishin/a5698ab7503342d8072bd8e495f01f91/execroot/_main && \

  exec env - \

    PATH=/home/rishin/.cache/bazelisk/downloads/sha256/96e9c34caf77b25a2fe1f0699cb85d23226a7a9f563ac156f0ed2033402b080b/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin \

  /home/rishin/.cache/bazel/_bazel_rishin/install/aeea4605fbb10c56d04772b8e314db75/build-runfiles --allow_relative bazel-out/k8-fastbuild/bin/requirements.update.runfiles_manifest bazel-out/k8-fastbuild/bin/requirements.update.runfiles): Process exited with status 1: Process exited with status 1

/home/rishin/.cache/bazel/_bazel_rishin/install/aeea4605fbb10c56d04772b8e314db75/build-runfiles (args bazel-out/k8-fastbuild/bin/requirements.update.runfiles_manifest bazel-out/k8-fastbuild/bin/requirements.update.runfiles): link or target filename contains space on line 937: '_main/external/rules_python~~config~pypi__setuptools/setuptools/_vendor/jaraco/text/Lorem ipsum.txt /home/rishin/.cache/bazel/_bazel_rishin/a5698ab7503342d8072bd8e495f01f91/external/rules_python~~config~pypi__setuptools/setuptools/_vendor/jaraco/text/Lorem ipsum.txt'
Target //:requirements.update failed to build 

🌍 Your Environment

Operating System: 11.8.5

Output of bazel version:

  
Bazelisk version: v1.27.0
Starting local Bazel server and connecting to it...
Build label: 7.3.2
Build target: @@//src/main/java/com/google/devtools/build/lib/bazel:BazelServer
Build time: Tue Oct 1 17:46:05 2024 (1727804765)
Build timestamp: 1727804765
Build timestamp as int: 1727804765
  

Rules_python version: 1.8.5

Langage dominant
Starlark
Étoiles
687
Forks
726
Merge moyen
1 j 6 h
PR mergées (30 j)
83

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de bazel-contrib/rules_python

Toutes les issues de bazel-contrib/rules_python

Issues similaires

Plus d'issues Build System

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.