)]}'
{
  "commit": "a97b98ccbbab5070b088dd94efc485952ed8459e",
  "tree": "c4bcbe2897798952610227de031d980a95d0893b",
  "parents": [
    "dd6550f18477105f362e44cb4868d9007e340d83"
  ],
  "author": {
    "name": "Douglas Thor",
    "email": "dougthor42@users.noreply.github.com",
    "time": "Mon Jul 14 18:23:25 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Jul 15 01:23:25 2025 +0000"
  },
  "message": "feat(gazelle): Add `include_pytest_conftest` annotation (#3080)\n\nFixes #3076.\n\nAdd a new gazelle annotation `include_pytest_conftest`. When unset\nor true, the gazelle behavior is unchanged. When false, gazelle will\n*not* inject the `:conftest` dependency to py_test targets.\n\nOne of the refactorings that is done to support this is to pass around\nan `annotations` struct in `target.targetBuilder`. This will also open\nup support for other annotations in the future.\n\n---------\n\nCo-authored-by: Ignas Anikevicius \u003c240938+aignas@users.noreply.github.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e74f14b1db972bbe9dff74bf0c454cdae8dddc32",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "b65a233f1e4d63a4497c0b70bca3a843ec3dac2a",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "35a1e4f70135363a5a968383fd4e8b919108996f",
      "old_mode": 33188,
      "old_path": "gazelle/README.md",
      "new_id": "cf91461e392eba3ff062715478cbcb0e18f1e520",
      "new_mode": 33188,
      "new_path": "gazelle/README.md"
    },
    {
      "type": "modify",
      "old_id": "343743559fbb96e9eca2024d99e0e19fb2673f40",
      "old_mode": 33188,
      "old_path": "gazelle/python/generate.go",
      "new_id": "279bee6af7ce90ce5ceb7c2adf87a4347ed272ba",
      "new_mode": 33188,
      "new_path": "gazelle/python/generate.go"
    },
    {
      "type": "modify",
      "old_id": "11e01dbf5156f46ee331afba72a957cb93dadb29",
      "old_mode": 33188,
      "old_path": "gazelle/python/parser.go",
      "new_id": "3d0dbe7a5ff8d6d6c90d656daa8019400565a51e",
      "new_mode": 33188,
      "new_path": "gazelle/python/parser.go"
    },
    {
      "type": "modify",
      "old_id": "06b653d9156771bd549e321dc04aac84c1e59bea",
      "old_mode": 33188,
      "old_path": "gazelle/python/target.go",
      "new_id": "6e6c3f4b143a571eac6cafccccba92e623dffbc5",
      "new_mode": 33188,
      "new_path": "gazelle/python/target.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6a347d154e02668d5579aa8e54120695a172ef44",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/WORKSPACE"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e643d0e90cd55b5e355f25bb4a2ffd015248f446",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/test.yaml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/BUILD.in"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "60695352cabba5feed10a485181235a687ed7f77",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/BUILD.out"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "af2e8c54e0c711f233f830952e3676c321325432",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/bad_value_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d6dc8413d43e55eba3e404814fdbc5ee20f6f0c3",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/binary.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/conftest.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2c72ca4df118ca5eac87d5d6276f7a25fe7942e9",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/conftest_imported_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c942bfb1ab20cf281cb337f1948f9eabd3ddd437",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/conftest_included_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ba71a2818b922acf263972b05258cf002ac62d64",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/false_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c4387b3a8c2cd9a78e39293befb480e5d1df6147",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/falsey_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6ffc06f9c0d02773878ae218582da65afc077635",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/last_value_wins_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b2d10359da919515aec9141db2dfec91a0e8d9d7",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/library.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b2d10359da919515aec9141db2dfec91a0e8d9d7",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/true_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/with_conftest/unset_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/without_conftest/BUILD.in"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "01383344c5e916e81f91c9508279aeef47ddf5f6",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/without_conftest/BUILD.out"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ba71a2818b922acf263972b05258cf002ac62d64",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/without_conftest/false_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b2d10359da919515aec9141db2dfec91a0e8d9d7",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/without_conftest/true_test.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "new_mode": 33188,
      "new_path": "gazelle/python/testdata/annotation_include_pytest_conftest/without_conftest/unset_test.py"
    }
  ]
}
