bazelbuild/bazel

Surface diagnostics for non-reproducible repo rules

Open

#28499 opened on Feb 2, 2026

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Java (25,384 stars) (4,465 forks)batch import
P2help wantedteam-ExternalDepstype: feature request

Description

Description of the feature request:

It's very helpful for a repo rule to mark itself as reproducible = True (assuming it is!) as that allows it to participate in both the local and remote repo contents cache. However, it's very easy for rule authors to forget to do that.

It would be nice to surface repository rules that forget to explicitly set the reproducible bit (i.e. encourage setting either reproducible = True or reproducible = False explicitly).

Some idea we discussed in https://bazelbuild.slack.com/archives/CA31HN1T3/p1769937819949869

  • Always warn if not set
  • Provide a bazel flag such as --extensions_of_unknown_reproducibility=error|warn|ignore so users can control the behavior and apply patches/send PRs to rulesets to improve the ecosystem

@fmeum

Which category does this issue belong to?

No response

What underlying problem are you trying to solve with this feature?

No response

Which operating system are you running Bazel on?

No response

What is the output of bazel info release?

No response

If bazel info release returns development version or (@non-git), tell us how you built Bazel.

No response

What's the output of git remote get-url origin; git rev-parse HEAD ?

Have you found anything relevant by searching the web?

No response

Any other information, logs, or outputs that you want to share?

No response

Contributor guide