)]}'
{
  "log": [
    {
      "commit": "6ce926fa2be0c94b06ef65eba8d2f989676a26a3",
      "tree": "11d5cdabb3c00583949ee2260aba6b55806e40bf",
      "parents": [
        "660e16c77fdc1081ffdec014790ea2d3ba184942"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon Oct 19 15:52:41 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 19 15:52:41 2026 +0200"
      },
      "message": "Test the BCR module with Bazel 9 and 10 (#75)\n\nAdds Bazel 9 and 10 to the matrix of the BCR test module, which so far\nonly covered Bazel 6 to 8, and switches to `.*` versions. Unlike `.x`,\nthese include release candidates, so `10.*` currently resolves to\n10.0.0rc1.\n\nThe test module passes locally on macOS with Bazel 6.6.0, 7.7.1, 8.8.1,\n9.3.0 and 10.0.0rc1."
    },
    {
      "commit": "660e16c77fdc1081ffdec014790ea2d3ba184942",
      "tree": "3f9dae6e04d5df9c0009b9a082115cd601cafcd5",
      "parents": [
        "b1eed289a766d8fe820cf45ffc277d29b3d8ddca"
      ],
      "author": {
        "name": "qdii",
        "email": "victor.lavaud@pm.me",
        "time": "Sat Sep 26 14:13:42 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Sep 26 14:13:42 2026 +0200"
      },
      "message": "Honor AWK environment variable (#72)\n\nThis allow users to choose a different implementation of AWK, which is\nuseful for Debian-based distributions, where /usr/bin/awk is\nunavailable.\n\nFixes #71"
    },
    {
      "commit": "b1eed289a766d8fe820cf45ffc277d29b3d8ddca",
      "tree": "5f60217283727780bf98151b4dedd3ed58ae1c30",
      "parents": [
        "381dfc3aae6cf185d12bf54691ce5f1d19aeb69d"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon Sep 14 17:29:19 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 14 17:29:19 2026 +0200"
      },
      "message": "Resolve relative manifest targets like the runfiles directory does (#69)\n\nThe target of a runfiles manifest entry is an absolute path, except for\nunresolved symlinks (`ctx.actions.declare_symlink`), whose target Bazel\ncopies into the manifest verbatim:\n[`SourceManifestAction#writeFile`](https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/analysis/SourceManifestAction.java)\nwrites `metadata.getUnresolvedSymlinkTarget()`, which may be relative.\nIn a runfiles directory, sandboxes and\n`SymlinkTreeHelper#createRunfilesSymlinks` create such an entry\ntextually (\"Unresolved symlinks are created textually\"), so the file\nsystem resolves it relative to the directory containing the symlink.\n\nA manifest-based lookup returned that raw target instead, i.e. a path\nrelative to the current working directory. `rlocation` thus either\nfailed or, worse, returned an unrelated file that happened to exist\nrelative to the working directory.\n\nThis change makes it so that a relative target resolves as an rlocation\npath relative to the directory of its entry and looks that up in the\nmanifest again, which is what resolving the symlink in a materialized\nrunfiles directory amounts to. Targets that escape the runfiles root\ncannot be resolved this way and are reported as missing, as are cycles,\nwhich are broken after 32 levels.\n\nThe test runs the same lookups against both backends:\n`write_relative_symlink_target_layout` emits the same set of unresolved\nsymlinks as a manifest and as a materialized runfiles directory, and\n`assert_relative_symlink_target_lookups` asserts that each resolves to\nthe same file. Before this change, the directory-backed half passes and\nthe manifest-backed one fails on its first assertion. The only case in\nwhich the two cannot agree is a relative target that leaves the runfiles\ntree, which the file system resolves against the directory\u0027s parent; the\nmanifest offers no way to reach it, so it is reported as missing."
    },
    {
      "commit": "381dfc3aae6cf185d12bf54691ce5f1d19aeb69d",
      "tree": "8661da9633432fc63fbe88abb73b11803f16dd8c",
      "parents": [
        "9a739a4fd38f9da8bd3e3141fc4782bb2706bb4f"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Wed Aug 12 19:15:04 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 12 13:15:04 2026 -0400"
      },
      "message": "Prefer the runfiles manifest over the runfiles directory (#68)\n\n`runfiles_rlocation_checked` looked up a path in the runfiles directory\nbefore consulting the manifest. Whether the runfiles directory is\npopulated is a property of how the action or test is executed and is not\nknown at analysis time, so the directory may exist while holding the\nstale contents of a previous execution. Consult the manifest first and\nonly fall back to the runfiles directory if no manifest exists.\n\nThis also fixes `runfiles_current_repository` on Windows with\n`--enable_runfiles`. That mode is the only one in which both\n`RUNFILES_DIR` and `RUNFILES_MANIFEST_FILE` are set: Windows does not\nsandbox, so the runfiles tree used at runtime contains the `MANIFEST`\nfile that `runfiles_export_envvars` promotes to\n`RUNFILES_MANIFEST_FILE`. `rlocation` then returned a path inside the\nrunfiles tree, but the manifest maps rlocation paths to the locations of\nthe original files, so the caller could never be the target of a\nmanifest entry and `runfiles_current_repository` reported every caller\nas belonging to the main repository. With the manifest taking\nprecedence, callers are manifest targets again and the lookup succeeds.\n\n`runfiles_current_repository` had no test coverage at all, which is why\nthis went unnoticed. Cover all three combinations of the two envvars:\ndirectory only, manifest only, and both set at the same time. The last\ncase also asserts that a stale copy in the runfiles directory is never\npreferred over the manifest.\n\nFuture work (https://github.com/bazelbuild/bazel/pull/30674) will allow\nthe directory to be used again in both functions, assuming it\u0027s\nmaterialized."
    },
    {
      "commit": "9a739a4fd38f9da8bd3e3141fc4782bb2706bb4f",
      "tree": "6324a314601d0e96592962bd5cef4ca4616a73e7",
      "parents": [
        "e7d0ce497038294df362b6ad29d3a6c91768bada"
      ],
      "author": {
        "name": "UebelAndre",
        "email": "github@uebelandre.com",
        "time": "Sun Jul 26 05:30:13 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 26 14:30:13 2026 +0200"
      },
      "message": "Add stardoc targets for public bzl files (#67)\n\nThese targets act as regression tests for users who consume the bzl\nfiles in their won rules for their own docs. In addition to the stardoc\ntargets, all missing docs from upstream `bazelbuild/bazel` have been\nadded for parity with https://bazel.build/reference/be/shell"
    },
    {
      "commit": "e7d0ce497038294df362b6ad29d3a6c91768bada",
      "tree": "acedceae4f6ae2d3a8444ea1ccdde0a29e0db447",
      "parents": [
        "b0fe38e8211df2f05979410a215520eb9eaa9da3"
      ],
      "author": {
        "name": "Keith Smiley",
        "email": "keithbsmiley@gmail.com",
        "time": "Thu Jul 09 15:34:07 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 00:34:07 2026 +0200"
      },
      "message": "Return repo_metadata from repository_rule (#66)\n\nThis is just being explicit about its non-reproducibility to satisfy\nhttps://github.com/bazelbuild/bazel/pull/30202"
    },
    {
      "commit": "b0fe38e8211df2f05979410a215520eb9eaa9da3",
      "tree": "544ebea3c988503a868267c9290a4db7925852d7",
      "parents": [
        "0a9d6dcb15520b6b39eb2fa3d2fcdc88c63a8ae6"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Jun 09 15:10:25 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 15:10:25 2026 +0200"
      },
      "message": "Make command spilling tests agnostic to the spilling mechanism (#63)\n\nThis prepares for a rewrite to Starlark, which will use `Args` and\n`use_param_file`."
    },
    {
      "commit": "0a9d6dcb15520b6b39eb2fa3d2fcdc88c63a8ae6",
      "tree": "0c6d17568f96801a3bd45dca7aefaec644ed11a0",
      "parents": [
        "207e4c124a622a114e66a446aae3c7f86d3c68fc"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Jun 09 14:01:53 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 14:01:53 2026 +0200"
      },
      "message": "Add `run_shell` argument handling tests (#62)"
    },
    {
      "commit": "207e4c124a622a114e66a446aae3c7f86d3c68fc",
      "tree": "d1f7ee25349a18b84bd4c24783d99067d698e3a7",
      "parents": [
        "f762230d6c0e870da002ba43f148ae80f6b1561d"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Jun 09 11:58:17 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 11:58:17 2026 +0200"
      },
      "message": "Add more tests for run_shell and actually run them (#61)\n\nAlso clean up the overall CI config."
    },
    {
      "commit": "f762230d6c0e870da002ba43f148ae80f6b1561d",
      "tree": "b1598c1b841192abec1629bd66af8884bef51954",
      "parents": [
        "ed5d6c253ce1a755190a10981f96cbb6055f4955"
      ],
      "author": {
        "name": "Yun Peng",
        "email": "pcloudy@google.com",
        "time": "Tue Jun 09 11:46:46 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 11:46:46 2026 +0200"
      },
      "message": "Add new repository entry to metadata template (#55)"
    },
    {
      "commit": "ed5d6c253ce1a755190a10981f96cbb6055f4955",
      "tree": "b1598c1b841192abec1629bd66af8884bef51954",
      "parents": [
        "c02969a1822191a179cd70c0cedd076385446a26"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Jun 09 00:07:18 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 00:07:18 2026 +0200"
      },
      "message": "Port tests for ctx.actions.run_shell to Starlark (#60)\n\nExisting Bazel tests are ported to analysis and build tests in\npreparation for Starlarkification of run_shell."
    },
    {
      "commit": "c02969a1822191a179cd70c0cedd076385446a26",
      "tree": "821091407789cd2e74e92590d50224131edffb31",
      "parents": [
        "81e1eb9f91ed6fee09d2c8d79e77702ea57c052e"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Wed Mar 25 17:24:37 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 25 16:24:37 2026 +0000"
      },
      "message": "Add new repository entry to metadata template (#54)\n\nCo-authored-by: Yun Peng \u003cpcloudy@google.com\u003e"
    },
    {
      "commit": "81e1eb9f91ed6fee09d2c8d79e77702ea57c052e",
      "tree": "d153c56c47d924c1578b6111b410c1abf41de583",
      "parents": [
        "9d7cb08199f462fa72c502401b07da4a87cbb71c"
      ],
      "author": {
        "name": "Claudio Bley",
        "email": "claudio.bley@gmail.com",
        "time": "Wed Mar 25 17:23:33 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 25 17:23:33 2026 +0100"
      },
      "message": "Add providers.bzl to `shell/private:private_bzl` (#57)\n\nThis file is missing in the bzl_library target which makes starlark\ngeneration fail for example:\n\n```\nStardoc documentation generation failed: File /home/runner/.cache/bazel/_bazel_runner/c91220d87f26118b19246641d5266d21/sandbox/processwrapper-sandbox/251/execroot/rules_haskell/bazel-out/k8-opt-exec-2B5CBBC6/bin/docs/defs_metadata_stardoc.runfiles/rules_shell/shell/private/sh_executable.bzl imported \u0027:providers.bzl\u0027, yet /home/runner/.cache/bazel/_bazel_runner/c91220d87f26118b19246641d5266d21/sandbox/processwrapper-sandbox/251/execroot/rules_haskell/bazel-out/k8-opt-exec-2B5CBBC6/bin/docs/defs_metadata_stardoc.runfiles/rules_shell/shell/private/providers.bzl was not found.\n```"
    },
    {
      "commit": "9d7cb08199f462fa72c502401b07da4a87cbb71c",
      "tree": "38ebce87658437a363c5420f6f19a2699b81fc60",
      "parents": [
        "81c007134cd0d4b1a072cd6498106d44027f894c"
      ],
      "author": {
        "name": "Yun Peng",
        "email": "pcloudy@google.com",
        "time": "Mon Mar 23 11:07:51 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 23 11:07:51 2026 +0100"
      },
      "message": "Update CONTRIBUTING.md to simplify contribution process (#56)\n\nRemoved sections about Contributor License Agreement and community\nguidelines."
    },
    {
      "commit": "81c007134cd0d4b1a072cd6498106d44027f894c",
      "tree": "0e6e830cdead5096e161f6c37d9bac98cab6d745",
      "parents": [
        "5132dd47cdc4138e9a43c373bd245ac6830d9dd6"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Fri Mar 13 14:36:06 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 13 14:36:06 2026 +0100"
      },
      "message": "Migrate from Publish to BCR app to workflow (#50)\n\n## Summary\n- Add `.github/workflows/publish.yaml` that uses the\n`bazel-contrib/publish-to-bcr` reusable workflow to automate BCR\npublishing after releases\n- Update `release.yml` to call the new publish workflow after a\nsuccessful release and bump `release_ruleset` from v6 to v7.2.2\n- Add required permissions for artifact attestations (`id-token: write`,\n`attestations: write`)\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)"
    },
    {
      "commit": "5132dd47cdc4138e9a43c373bd245ac6830d9dd6",
      "tree": "0f5a172aa09955d5b00dd4cf78bfd8a7fedfc7cd",
      "parents": [
        "1e8bab64c37cd18837a26eb31ff03a8486eef83f"
      ],
      "author": {
        "name": "UebelAndre",
        "email": "github@uebelandre.com",
        "time": "Sun Mar 08 13:54:38 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Mar 08 21:54:38 2026 +0100"
      },
      "message": "Add `ShInfo` and `ShBinaryInfo` providers (#47)\n\ncloses https://github.com/bazelbuild/rules_shell/issues/16\n\n---------\n\nCo-authored-by: Fabian Meumertzheim \u003cfabian@meumertzhe.im\u003e"
    },
    {
      "commit": "1e8bab64c37cd18837a26eb31ff03a8486eef83f",
      "tree": "df3dffc596a575ef421a04d11f97ecb181b3fb62",
      "parents": [
        "e071f45e209f3e154210faed3d0e60c29aef3b4a"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Feb 03 15:17:16 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 03 15:17:16 2026 +0100"
      },
      "message": "Don\u0027t emit a shebang with `use_bash_launcher` on Windows (#44)\n\nFixes #43"
    },
    {
      "commit": "e071f45e209f3e154210faed3d0e60c29aef3b4a",
      "tree": "268e247fc77071a39d5862f78dc8c7a76a37632c",
      "parents": [
        "94c1e66e73c2c3abce7436db72d30e65fe234a47"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Wed Sep 10 15:34:01 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 10 09:34:01 2025 -0400"
      },
      "message": "Fix docs for `sh_test` and `sh_binary` (#40)\n\nThese rules incorrectly shared rule and attr-level docs.\n\nWork towards https://github.com/bazelbuild/bazel/issues/24473"
    },
    {
      "commit": "94c1e66e73c2c3abce7436db72d30e65fe234a47",
      "tree": "1ce85e863a9c4dc46ae790c34d369035bd7ba9c9",
      "parents": [
        "e6d845428779b1e5ebb9971451ed3c43c865fc0b"
      ],
      "author": {
        "name": "Marcel",
        "email": "maleo@google.com",
        "time": "Wed Aug 20 12:56:40 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 20 12:56:40 2025 +0200"
      },
      "message": "Use launcher wrapper to initialize runfiles (#38)\n\nThis avoid the need to copy\u0026paste the verbose initialization snippet\ninto every script.\n\nThis should resolve the issues raised in #24.\n\n---------\n\nCo-authored-by: Fabian Meumertzheim \u003cfabian@meumertzhe.im\u003e"
    },
    {
      "commit": "e6d845428779b1e5ebb9971451ed3c43c865fc0b",
      "tree": "024c63bd1d205a16d1d22964f3e778f5cbff4510",
      "parents": [
        "6501f7362d2c3e9dd07b554ab8da236a873477f2"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon Aug 11 20:45:33 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 11 20:45:33 2025 +0200"
      },
      "message": "Update runfiles library label in setup instructions (#35)\n\nThis still pointed to `bazel_tools`, which works for now but should be\ndropped eventually."
    },
    {
      "commit": "6501f7362d2c3e9dd07b554ab8da236a873477f2",
      "tree": "4ef0d97b9ba48ea4cd5e768848d6e20af247ec2b",
      "parents": [
        "0713632f21a46720ba0c2749331fa32418ef7ee0"
      ],
      "author": {
        "name": "Chuck Grindel",
        "email": "chuck.grindel@gmail.com",
        "time": "Fri Aug 01 15:39:38 2025 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Aug 01 23:39:38 2025 +0200"
      },
      "message": "fix: do not allow GREP_XXX env vars from breaking `rlocation` (#36)\n\nThe grep command can be influenced by `GREP_XXX` environment variables.\nIf set, they can affect the behavior/output of the command, causing\n`rlocation` to fail."
    },
    {
      "commit": "0713632f21a46720ba0c2749331fa32418ef7ee0",
      "tree": "74e13f1e2bc6f374bcd7baff7ccb4bdd2c06a6e3",
      "parents": [
        "c1d71d899908e42b3fa5f1c8d63cc335141d719a"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Thu Jun 12 13:47:46 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 12 13:47:46 2025 +0200"
      },
      "message": "Use rockylinux8 instead of centos7 in BCR presubmit (#33)\n\n"
    },
    {
      "commit": "c1d71d899908e42b3fa5f1c8d63cc335141d719a",
      "tree": "962fe2aacf6b4ef2210efe4e83a09ba423aeed23",
      "parents": [
        "e237752b769fad38196b0b08fcb0a10cb50f22fd"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Thu Jun 12 12:29:43 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 12 12:29:43 2025 +0200"
      },
      "message": "Add support for `--incompatible_compact_repo_mapping_manifest` (#32)\n\nAlong the way, fix two more bugs:\n* gracefully handle the case of a missing repo mapping manifest\n* consistently escape everything that ends up in a grep pattern as a\nliteral\n\nWork towards https://github.com/bazelbuild/bazel/issues/26262"
    },
    {
      "commit": "e237752b769fad38196b0b08fcb0a10cb50f22fd",
      "tree": "b0b112fcf891fe0846c52db3c4f5df77740c689d",
      "parents": [
        "fb90d67a475e82ac6152e890858f64ae14ff2df5"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Wed Jun 11 17:29:42 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 11 17:29:42 2025 +0200"
      },
      "message": "Fix inconsistencies in runfiles.bash (#31)\n\nThese are not necessarily bugs, but still unintendedly different from\nthe similar logic above."
    },
    {
      "commit": "fb90d67a475e82ac6152e890858f64ae14ff2df5",
      "tree": "150bef0b3699fc8e396319723faa8c0c06b5e90d",
      "parents": [
        "19e2da0c9a5b16ec3337c94c256d3947dd81bb0a"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Wed Jun 11 11:27:16 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 11 11:27:16 2025 +0200"
      },
      "message": "Fix shellcheck findings (#30)\n\nAlso add rules_shellcheck to avoid regressions.\n\nFixes #28"
    },
    {
      "commit": "19e2da0c9a5b16ec3337c94c256d3947dd81bb0a",
      "tree": "6c238a9bb5de28f7dce3c54640015ed65b9a96ae",
      "parents": [
        "f28373ff7d291172e293c06b67ab0737da576e4a"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon May 05 12:09:04 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 05 12:09:04 2025 +0200"
      },
      "message": "Configure coverage helpers for test exec group (#26)\n\nThey are run on the test action\u0027s execution platform, which is resolved\nfor the `test` exec group, not the default one."
    },
    {
      "commit": "f28373ff7d291172e293c06b67ab0737da576e4a",
      "tree": "fb21bd5dcd17e40978a646bfcc897a54bfec8fd5",
      "parents": [
        "8120a5186fd67f6248245ba28f2f76c899a83c07"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Apr 29 12:11:39 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 29 12:11:39 2025 +0200"
      },
      "message": "Test with Bazel 8 (#23)\n\n"
    },
    {
      "commit": "8120a5186fd67f6248245ba28f2f76c899a83c07",
      "tree": "c270a517571327904c8f5cf975982be9056951f2",
      "parents": [
        "44fe1be966362a86835e416c5da37a4778db7273"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Thu Jan 30 19:26:59 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 30 13:26:59 2025 -0500"
      },
      "message": "Fix printing of toolchain type label in error message (#20)\n\nIt used to print `//shell:toolchain_type`, now it should prepend the\napparent repo name (if available)."
    },
    {
      "commit": "44fe1be966362a86835e416c5da37a4778db7273",
      "tree": "e4c811bc42b799799e99a41610cdc63b9b83d559",
      "parents": [
        "adb3c6e80460db04e6fcbb3662e21e828c75b984"
      ],
      "author": {
        "name": "Yun Peng",
        "email": "pcloudy@google.com",
        "time": "Mon Jan 20 11:54:53 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jan 20 11:54:53 2025 +0100"
      },
      "message": "sh_configure: change local \u003d True to configure \u003d True (#19)\n\n"
    },
    {
      "commit": "adb3c6e80460db04e6fcbb3662e21e828c75b984",
      "tree": "3389f565293445644cacd927cc10630a23628495",
      "parents": [
        "104505faea10e1fe50bb7f7a5b3142b63181e644"
      ],
      "author": {
        "name": "Yun Peng",
        "email": "pcloudy@google.com",
        "time": "Fri Jan 17 14:10:02 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 17 14:10:02 2025 +0100"
      },
      "message": "sh_config: Add BAZEL_SH (#18)\n\n"
    },
    {
      "commit": "104505faea10e1fe50bb7f7a5b3142b63181e644",
      "tree": "f63d6870e1a3e3650da75c47dfecc680d7f50321",
      "parents": [
        "a110e8463913987b3894495f7de89b5540e0773b"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Wed Nov 06 10:53:25 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 06 10:53:25 2024 +0100"
      },
      "message": "Update Bazel version to fix release tests (#15)\n\n"
    },
    {
      "commit": "a110e8463913987b3894495f7de89b5540e0773b",
      "tree": "bd89c6fa4a04c8e09a21f2679c8c581d1cd89509",
      "parents": [
        "02bc019ae1be74329295436e35be900ab44d6aeb"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Nov 05 22:08:35 2024 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 05 22:08:35 2024 +0100"
      },
      "message": "Copy over runfiles library from Bazel (#13)\n\nThis uses `root_symlinks` to preserve the fixed runfiles path at which\r\nthe library must be available and the private `skip_conflict_checking`\r\nattribute to preserve backwards compatibility by not enabling strict\r\nrunfiles path conflict checking."
    },
    {
      "commit": "02bc019ae1be74329295436e35be900ab44d6aeb",
      "tree": "547854ece801a9ac713ade3bc3a4195cc432e4e3",
      "parents": [
        "2c164bf53643eb9a76e6327d2c41881b3eb4c827"
      ],
      "author": {
        "name": "Alex Eagle",
        "email": "alex@aspect.dev",
        "time": "Mon Nov 04 17:49:37 2024 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 05 02:49:37 2024 +0100"
      },
      "message": "Mark automated releases as non-prerelease (#14)\n\nContext:\r\nhttps://bazelbuild.slack.com/archives/CA31HN1T3/p1730563436075659?thread_ts\u003d1730557636.682589\u0026cid\u003dCA31HN1T3"
    },
    {
      "commit": "2c164bf53643eb9a76e6327d2c41881b3eb4c827",
      "tree": "97ba7ba7ca28710743f816beac5833bfb40f8145",
      "parents": [
        "03927e4ba204e6aea46de94dd20abb7197245708"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Oct 15 10:26:13 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 15 10:26:13 2024 +0200"
      },
      "message": "Guard `reproducible` usage behind `bazel_features` check (#12)\n\nThis is needed for Bazel 6 compatibility with Bzlmod enabled."
    },
    {
      "commit": "03927e4ba204e6aea46de94dd20abb7197245708",
      "tree": "874a13e6dfdf8a7fc60f8fb2efdb71a2ae86d649",
      "parents": [
        "ec686efef310d19e4a019eeb297a9f3b264d6c58"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue Oct 15 00:48:58 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 14 15:48:58 2024 -0700"
      },
      "message": "Test Bazel 6 and Windows in BCR presubmit (#11)\n\n"
    },
    {
      "commit": "ec686efef310d19e4a019eeb297a9f3b264d6c58",
      "tree": "b99a699e4a745d5d2873e0dbee35c3ca3fb1772b",
      "parents": [
        "6cb835ee61098c4fb51940fdc3cae4f66a8bf7fe"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon Oct 14 23:36:37 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 14 23:36:37 2024 +0200"
      },
      "message": "Fall back to native rules if possible (#10)\n\nProvides compatibility with Bazel versions before 7.4.0.\n\nAlso requires adding `bazel_skylib` to the dependency macro.\n\nFixes #9"
    },
    {
      "commit": "6cb835ee61098c4fb51940fdc3cae4f66a8bf7fe",
      "tree": "c27f565ec194691c600238dbb26598e02c1aa88f",
      "parents": [
        "bfdfa00df779969d2b98e0f54971c808b2b86653"
      ],
      "author": {
        "name": "Ivo List",
        "email": "ilist@google.com",
        "time": "Tue Oct 08 10:27:03 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Oct 08 10:27:03 2024 +0200"
      },
      "message": "Add bzl_libraries (#8)\n\nNeeded to generate documentation for build encyclopedia. There are links\r\nin Bazel docs to sh rules and the generator complains if the Sh rules\r\ndocs are removed / break those links.\r\n\r\n---------\r\n\r\nCo-authored-by: Fabian Meumertzheim \u003cfabian@meumertzhe.im\u003e"
    },
    {
      "commit": "bfdfa00df779969d2b98e0f54971c808b2b86653",
      "tree": "f30f03bf448ea02d2d52b276e14097e6daac77b4",
      "parents": [
        "1665ddebf1ff2ad79f69d7fbf4cbf2a28b5d5f52"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon Oct 07 13:11:33 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 07 13:11:33 2024 +0200"
      },
      "message": "Drop Windows and Bazel 6 from BCR presubmit (#7)\n\n"
    },
    {
      "commit": "1665ddebf1ff2ad79f69d7fbf4cbf2a28b5d5f52",
      "tree": "aa0f0099fbad69bbab456ad8c093f6fb69fff64f",
      "parents": [
        "92ec8b278c3f09b7aebddf8b9cce312950a14464"
      ],
      "author": {
        "name": "Yun Peng",
        "email": "pcloudy@google.com",
        "time": "Mon Oct 07 11:59:12 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 07 11:59:12 2024 +0200"
      },
      "message": "Add a fixed releaser (#6)\n\n"
    },
    {
      "commit": "92ec8b278c3f09b7aebddf8b9cce312950a14464",
      "tree": "6a27564b53215ca3247982e8e829cb22de6a01fa",
      "parents": [
        "ba20770110ef06fee5247ab02b42ca422dd28768"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Mon Oct 07 11:31:43 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 07 11:31:43 2024 +0200"
      },
      "message": "Add empty test to get release flow to pass (#5)\n\n"
    },
    {
      "commit": "ba20770110ef06fee5247ab02b42ca422dd28768",
      "tree": "2688b6ca2b8d3440b5fd82a9f2dbbd92a8e2b17d",
      "parents": [
        "0aebeeb5d2a685794cee7f53566129ddc9dd307c",
        "0a63db025e90570d537b6d6778b4f0a88c217348"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Fri Oct 04 19:43:22 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 04 19:43:22 2024 +0200"
      },
      "message": "Merge pull request #3 from fmeum/move-rules\n\nImport from Bazel"
    },
    {
      "commit": "0aebeeb5d2a685794cee7f53566129ddc9dd307c",
      "tree": "7fb5df9c44e92dc2bdfe97340aaa4d14f2fe5ff7",
      "parents": [
        "877456e499eb54a523248216d27d280806196a1c",
        "09cbac658eaea32f56eb6d29a804d499ca5b8eac"
      ],
      "author": {
        "name": "Xùdōng Yáng",
        "email": "wyverald@gmail.com",
        "time": "Fri Oct 04 13:32:24 2024 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 04 13:32:24 2024 -0400"
      },
      "message": "Merge pull request #2 from bazelbuild/meteorcloudy-patch-1\n\nRename to rules_shell"
    },
    {
      "commit": "0a63db025e90570d537b6d6778b4f0a88c217348",
      "tree": "9cae8a14d8c31ed32231552e3c6874ac393be4c0",
      "parents": [
        "877456e499eb54a523248216d27d280806196a1c"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Fri Oct 04 15:53:48 2024 +0200"
      },
      "committer": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Fri Oct 04 17:25:13 2024 +0200"
      },
      "message": "Import from Bazel\n"
    },
    {
      "commit": "09cbac658eaea32f56eb6d29a804d499ca5b8eac",
      "tree": "7fb5df9c44e92dc2bdfe97340aaa4d14f2fe5ff7",
      "parents": [
        "877456e499eb54a523248216d27d280806196a1c"
      ],
      "author": {
        "name": "Yun Peng",
        "email": "pcloudy@google.com",
        "time": "Fri Oct 04 10:13:32 2024 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 04 10:13:32 2024 +0200"
      },
      "message": "Rename to rules_shell"
    },
    {
      "commit": "877456e499eb54a523248216d27d280806196a1c",
      "tree": "dba73a3c118c4db2202281ff64b4a6a3af08b173",
      "parents": [],
      "author": {
        "name": "Xùdōng Yáng",
        "email": "wyverald@gmail.com",
        "time": "Mon Jul 15 21:07:55 2024 -0400"
      },
      "committer": {
        "name": "Xùdōng Yáng",
        "email": "wyverald@gmail.com",
        "time": "Mon Jul 15 21:07:55 2024 -0400"
      },
      "message": "initial commit\n"
    }
  ]
}
