Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/bazelbuild/bazel.git. Pull mirroring updated .
  1. Mar 21, 2025
  2. Mar 20, 2025
  3. Mar 19, 2025
    • Charles Mita's avatar
      [7.6.0] Make the llvm coverage tests a little more robust. (#25624) · 90e886b7
      Charles Mita authored
      Check that the actual coverage data simply contains the expected
      coverage data, rather than checking for an exact match. This matters for
      when we start to process baseline coverage, which may result in header
      files getting included in the report. This is in-keeping with the other
      coverage tests.
      
      Also adds the branch data into the reports, which we will check when
      we're using an LLVM version that supports branch coverage, and a test
      that checks header files that include coverage data are actually
      included in the final report.
      
      Required for https://github.com/bazelbuild/bazel/pull/24593
      
      Closes #24624.
      
      PiperOrigin-RevId: 705177531
      Change-Id: I2247434d0b005f2218761249238e52597a452e12
      
      Commit: 164c4821
      90e886b7
  4. Mar 18, 2025
  5. Mar 17, 2025
  6. Mar 14, 2025
    • Garrett Holmstrom's avatar
      [7.6.0] Emit BAZEL_CURRENT_REPOSITORY when using @rules_cc//cc/runfiles (#25424) · 13cf07df
      Garrett Holmstrom authored
      Bazel 7 emits the `BAZEL_CURRENT_REPOSITORY` preprocessor macro only
      when depending on the copy of the cc runfiles library in `@bazel_tools`,
      breaking users who want to write forwards-compatible code which pulls
      that
      library from `@rules_cc`.  In commit 6f7faa65, a backport of 8a5e70c7,
      Bazel 8.1 replaced its own implementation with a passthrough and updated
      the check that macro uses to permit both locations.
      
      This patch gives rules_cc users forwards-compatibility by backporting
      the portion of that commit which emits the `BAZEL_CURRENT_REPOSITORY`
      variable when using the runfiles library from rules_cc, but stops short
      of actually removing the built-in runfiles library.
      13cf07df
  7. Mar 11, 2025
  8. Mar 07, 2025
    • Fabian Meumertzheim's avatar
      [7.6.0] Don't download all artifacts with BwoB when their TTL expires (#25490) · 78b22819
      Fabian Meumertzheim authored
      The TLL governs the lifetime of the remote metadata, but shouldn't by
      itself result in files being downloaded that otherwise wouldn't be
      (e.g., with `--remote_download_minimal`). This fixes a bug that causes
      warm Bazel servers with default settings apart from
      `--remote_download_minimal` to start downloading all top-level artifacts
      after three hours.
      
      ~This change also renames `shouldTrustArtifact` to `shouldTrustMetadata`
      and updates some comments on `{Remote,}OutputChecker` to avoid confusion
      between its two distinct purposes in the future: validating metadata and
      deciding which artifacts to download.~ This part isn't cherry-picked.
      
      Example of the effect:
      https://github.com/buildbuddy-io/buildbuddy/pull/8502#issuecomment-2687734121
      
      Closes #25398.
      
      PiperOrigin-RevId: 733280515
      Change-Id: I35348a2a9b648ba0a563fb4f75b551349293754d 
      (cherry picked from commit 23d03e1a)
      
      Closes #25490
      78b22819
    • Fabian Meumertzheim's avatar
      [7.6.0] Avoid downloading the empty `Tree` message (#25489) · 327f8978
      Fabian Meumertzheim authored
      Valid empty `Tree` messages, which correspond to empty output
      directories, serialize to two bytes since they always contain an empty
      but present `Tree` message in the `root` field. Since such directories
      are very common (for example, as undeclared test output directories), it
      pays off to avoid downloading them.
      
      Closes #25374.
      
      PiperOrigin-RevId: 731614115
      Change-Id: I64902afbecb55f718eb4d04fdd1f6207a7e8b97a 
      (cherry picked from commit 6795c28a)
      327f8978
  9. Mar 06, 2025
  10. Mar 05, 2025
  11. Jan 31, 2025
  12. Jan 29, 2025
  13. Jan 28, 2025
  14. Jan 27, 2025
    • Fabian Meumertzheim's avatar
      [7.5.0] Distinguish between input and output prefetching in request metadata (#25057) · 84e9336b
      Fabian Meumertzheim authored
      ea4ad30d added an action as context for
      prefetches with BwoB, but assumed that all callers would use the
      prefetcher for inputs to locally executed actions. However, since then,
      it has also been used to download outputs of completed actions that have
      been explicitly requested (e.g. as outputs of top-level targets or those
      matching the regex path patterns). This resulted in downloads with a
      `prefetcher` action ID and action details for the action that produced
      the file, rather than consumed it, resulting in confusing situations for
      observability tools.
      
      This is fixed by separately tracking the reason for the fetch. Using an
      action ID of `output` when the action has the requested file as an
      output, and "input" when the action has the requested file as an input.
      
      Closes #25040.
      
      PiperOrigin-RevId: 719246746
      Change-Id: Ib95ff65ba68112b1a38ab3022e5b1a19ef74cc9f 
      (cherry picked from commit 998e7624)
      
      RELNOTES: CAS requests made when Bazel downloads a blob with Build
      without the Bytes enabled now provide metadata with an action ID of
      `input` if the blob is downloaded as the input to a local action and
      `output` if it is a requested action output.
      84e9336b
  15. Jan 23, 2025
  16. Jan 21, 2025
  17. Jan 17, 2025
    • Chi Wang's avatar
      [7.5.0] Do not invalidate remote metadata during action dirtiness check (#24941) · 19ea55dc
      Chi Wang authored
      ... if the corresponding output is materialized afterwards and hasn't
      been changed.
      
      Failing to do so will cause an incremental build to re-check the action
      cache for actions whose outputs were materialized during last build.
      This can be very slow if the size of the outputs are large.
      
      We achieved this by storing `FileContentsProxy` in the remote metadata
      after materialization. During dirtiness check, we compare remote
      metadata and the corresponding local metadata with their `digest`, or
      `proxy` if `digest` is not available for local metadata,
      
      A user reported back the wall time of their very first increment build
      is improved by this change from `14s` to less than `1s` in common case,
      and from `115s` to less than `1s` in worst case.
      https://github.com/bazelbuild/bazel/issues/24763
      
      PiperOrigin-RevId: 715734718
      Change-Id: Id1a1a59d8b5f3e91a7ae05a73663ff37eee6d163
      
      Fixes #24920.
      19ea55dc
  18. Jan 16, 2025
  19. Jan 15, 2025
  20. Jan 14, 2025
  21. Jan 13, 2025
  22. Jan 10, 2025
  23. Jan 09, 2025
  24. Jan 08, 2025
  25. Jan 07, 2025
  26. Jan 02, 2025