)]}'
{
  "commit": "08e2aeb0a54558b808e90a7581a3adb40407a27b",
  "tree": "831f5a58deb36a816a4f92039a02d18ee337b4ec",
  "parents": [
    "5a84b9ccee82d93aa57c2ad1e12229bb6113c16f"
  ],
  "author": {
    "name": "Honnix",
    "email": "honnix@users.noreply.github.com",
    "time": "Tue Mar 25 17:53:54 2025 +0100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Mar 25 12:53:54 2025 -0400"
  },
  "message": "feat: Relax single file limit of run_in rule (#71)\n\nThis change makes `run_in` rule accept multi-file executable target by\nusing `ctx.executable.tool`. With this change, it will be possible to\nwrap e.g. a `py_console_script_binary` target where there is an\nexecutable file together with a bunch of other files.\n\nAs a concrete example:\n\n```starlark\nload(\"@pip_deps//:requirements.bzl\", \"requirement\")\nload(\"@rules_multitool//multitool:cwd.bzl\", \"cwd\")\nload(\"@rules_python//python/entry_points:py_console_script_binary.bzl\", \"py_console_script_binary\")\n\npy_console_script_binary(\n    name \u003d \"pre-commit\",\n    pkg \u003d requirement(\"pre-commit\"),\n    script \u003d \"pre-commit\",\n)\n\ncwd(\n    name \u003d \"cwd\",\n    tool \u003d \":pre-commit\",\n)\n```\n\nThen we can do `bazel run //tools/pre-commit:cwd -- autoupdate`,\notherwise we will need to have workaround like `bazel run\n--run_under\u003d\"cd $PWD \u0026\u0026 \" //tools/pre-commit -- autoupdate`",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fe93ecc3726d9bafa436958dfba71d87a7174d77",
      "old_mode": 33188,
      "old_path": "examples/module/.bazelrc",
      "new_id": "c7becee0d9ca3c84ae753f3d59a585f9ebad757b",
      "new_mode": 33188,
      "new_path": "examples/module/.bazelrc"
    },
    {
      "type": "modify",
      "old_id": "e143f3749f7d4d4a5998a180b48861b16dcc37ef",
      "old_mode": 33188,
      "old_path": "examples/module/BUILD.bazel",
      "new_id": "d738393b9106841ce5590ba603ce4c47dc67d098",
      "new_mode": 33188,
      "new_path": "examples/module/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7a90bc3ec984b4760f50c8c78d4c1b8899d8ee65",
      "new_mode": 33188,
      "new_path": "examples/module/add_dummy_file.bzl"
    },
    {
      "type": "modify",
      "old_id": "619c52318c5792d7cf90f1ea5dbc12b90e463fbf",
      "old_mode": 33188,
      "old_path": "multitool/private/run_in.bzl",
      "new_id": "c8bbd734559191880fef7cada6e495134df6cfeb",
      "new_mode": 33188,
      "new_path": "multitool/private/run_in.bzl"
    }
  ]
}
