bazelbuild / bazelbuild/bazel

Case insensitive labels poisons cache

Open
#8,009 15 comments 1 reaction 0 assignees View on GitHub
area-Windows not stale P2 team-OSS type: bug
Dominant language
Java
Stars
25.8k
Forks
4.6k
Avg merge
2d 20h
Merged PRs (30d)
72

Description

### Description of the problem / feature request:

When first building with a correct tag on Windows e.g.
bazel build //MyLabel/Test:MyName

Then building with an incorrect tag (but will still work):
bazel build //mylabel/Test:MyName

Will in some cases cause the cache to be poisoned (and will in all cases make c-file includes to generated files to be invalid)

### Feature requests: what underlying problem are you trying to solve with this feature?

Require all platforms (not only linux) to have exact casing, otherwise throw an error.

### Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

See problem description above

### What operating system are you running Bazel on?

Windows

### What's the output of `bazel info release`?

0.23.2

### Have you found anything relevant by searching the web?

-GitHub issues:
#6401
#7627

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

Nope :) Great project otherwise! :)

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the Windows case using the two Bazel labels in the issue, then compare the cache and generated-file include behavior. Review the related discussions in issues #6401 and #7627. Done means incorrectly cased labels are rejected consistently across platforms without poisoning the cache or invalidating generated-file includes.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.