Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/bazelbuild/bazel.git. Pull mirroring updated .
  1. Jul 30, 2024
  2. Jul 29, 2024
    • bazel.build machine account's avatar
      [7.3.0] Add path mapping test for multiplex sandboxing (#23134) · 867cfe48
      bazel.build machine account authored
      Javac actions gained support for multiplex sandboxing with rules_java
      7.5.0, which makes it possible to test path mapping in this mode.
      
      Fixes #21091
      
      Closes #21837.
      
      PiperOrigin-RevId: 657111790
      Change-Id: Ib08f2c0bc48d210cce013e328da0e871f73278aa
      
      Commit
      https://github.com/bazelbuild/bazel/commit/8e79fe0329b995ec6db2f63d5cced84f90d158f3
      
      
      
      Co-authored-by: default avatarFabian Meumertzheim <fabian@meumertzhe.im>
      867cfe48
    • Fabian Meumertzheim's avatar
      [7.3.0] Deduplicate locally executed path mapped spawns (#23069) · ffe1df57
      Fabian Meumertzheim authored
      When path mapping is enabled, different `Spawn`s in the same build can
      have identical `RemoteAction.ActionKey`s and can thus provide remote
      cache hits for each other. However, cache hits are only possible after
      the first local execution has concluded and uploaded its result to the
      cache.
      
      To avoid unnecessary duplication of local work, the first `Spawn` for
      each `RemoteAction.ActionKey` is tracked until its results have been
      uploaded and all other concurrently scheduled `Spawn`s wait for it and
      then copy over its local outputs.
      
      Fixes #21043
      
      Closes #22556.
      
      PiperOrigin-RevId: 655097996
      Change-Id: I4368f9210c67a306775164d252aae122d8b46f9b
      
      Closes #23060
      ffe1df57
    • Fabian Meumertzheim's avatar
      [7.3.0] Path map executable paths (#23118) · 282ac623
      Fabian Meumertzheim authored
      In `CommandLines`, the very first argument of the first command line is
      always a path to an executable. As such, it should be path mapped, even
      when it is a string. This wasn't the case for `SpawnAction`'s created
      via `ctx.actions.run(executable = <some string>)`.
      
      Work towards #6526
      Work towards #22366
      
      Closes #22844.
      
      PiperOrigin-RevId: 656258007
      Change-Id: Ia046a7cc66aae51aec764e2f1c49e1d4f69e4b37
      
      Closes #23040
      282ac623
    • Fabian Meumertzheim's avatar
      [7.3.0] Make Window launchers relocatable (#23135) · 610fe7bb
      Fabian Meumertzheim authored
      When the Windows launcher binary is copied to become the `executable` of
      another target, it can't expect to find the main file right next to it.
      Instead, look it up via `Rlocation`, which doesn't require colocation to
      find the file. This helps with a common pattern in wrapper rules where
      `ctx.symlink` is used to work around the limitation that the
      `executable` of a target has to be produced by that target.
      
      For the Python rules, for which the source of truth is not the Bazel
      repo anymore, the new launch key is checked for in a backwards
      compatible way.
      
      Closes #23076.
      
      PiperOrigin-RevId: 657116461
      Change-Id: I3f966b48e0812668cfa7bd394f2eaf23d66889b6
      
      Closes #23121
      610fe7bb
  3. Jul 27, 2024
  4. Jul 26, 2024
  5. Jul 24, 2024
  6. Jul 22, 2024
  7. Jul 18, 2024
  8. Jul 11, 2024
  9. Jul 10, 2024
  10. Jul 04, 2024
  11. Jun 28, 2024
  12. Jun 27, 2024
  13. Jun 26, 2024
  14. Jun 25, 2024
    • Fabian Meumertzheim's avatar
      [7.3.0] Enforce and await cleanup in `StarlarkBaseExternalContext` (#22883) · 000a83a7
      Fabian Meumertzheim authored
      `StarlarkBaseExternalContext` now implements `AutoCloseable` and, in
      `close()`:
      1. Cancels all pending async tasks.
      2. Awaits their termination.
      3. Cleans up the working directory (always for module extensions, on
      failure for repo rules).
      4. Fails if there were pending async tasks in an otherwise successful
      evaluation.
      
      Previously, module extensions didn't do any of those. Repo rules did 1
      and 4 and sometimes 3, but not in all cases.
      
      This change required replacing the fixed-size thread pool in
      `DownloadManager` with virtual threads, thereby resolving a TODO about
      not using a fixed-size thread pool for the `GrpcRemoteDownloader`.
      
      Work towards #22680
      Work towards #22748
      
      Closes #22772.
      
      PiperOrigin-RevId: 644669599
      Change-Id: Ib71e5bf346830b92277ac2bd473e11c834cb2624
      
      Closes #22776
      000a83a7
  15. Jun 21, 2024
  16. Jun 20, 2024
  17. Jun 19, 2024
  18. Jun 18, 2024