bazelbuild / bazelbuild/bazel

Use stat() to avoid checking content hashes for repository up-to-dateness checks

Open
#21,044 11 comments 0 reactions 1 assignee Claimed by @SalmaSamy View on GitHub
P2 team-ExternalDeps type: feature request
Dominant language
Java
Stars
25.8k
Forks
4.6k
Avg merge
2d 20h
Merged PRs (30d)
72

Description

### Description of the feature request:

The way Bazel verifies up-to-dateness of source files is that if some select data from `stat()` is unchanged, it believes it, and if not, it does a secondary check by checksumming source files to avoid re-running actions after a simple `touch`.

Repository rules don't work like this: they simply checksum every file that the repository depends on, which makes up-to-dateness much slower than they would otherwise be.

It would be nice to make repository rules do the same thing as actions.

### Which category does this issue belong to?

_No response_

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

Make the repository up-to-dateness check more efficient.

### 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` ?

_No response_

### 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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.