)]}'
{
  "commit": "13ce1927b4ae03eb9b09542cd04ef2f5f0c1fd3e",
  "tree": "ccc6b7d78c99ce299f8203aee412ddc8dfc1bb80",
  "parents": [
    "425dfb0b225e4037978b32707534095daa6205dc"
  ],
  "author": {
    "name": "Richard Levasseur",
    "email": "rlevasseur@google.com",
    "time": "Mon Aug 19 11:08:38 2024 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Aug 19 18:08:38 2024 +0000"
  },
  "message": "sphinxdocs: add docs; support sources from other directories (#2128)\n\nDocuments how to use Sphinx syntax when writing docs. There\u0027s a variety\nof features the `sphinx_bzl` plugin enables, but without docs, they\u0027re\nsomewhat hard to discover and figure out how to use.\n\nBecause sphinxdocs is almost entirely separate, adding its docs under\n`//sphinxdocs/docs` is a more natural fit. Unfortunately, this became\nvery verbose, repetitive, and tedious, for two reasons:\n1. The only way `sphinx_docs` could accept files from other directories\nwas using the `rename_srcs` arg and manually renaming files one-by-one.\n2. Similarly, `sphinx_stardocs` required a one-by-one mapping of each\nbzl file to its output file, which then had to be repeated in\n`rename_srcs`.\n\nTo fix (1), the `sphinx_docs.deps` attribute and `sphinx_docs_library`\nrule are added. The library targets collect files, and `sphinx_docs`\nmoves then into the final Sphinx sources directory.\n\nTo fix (2), the `sphinx_stardoc.srcs` attribute is added, which accepts\n`bzl_library` targets. I noticed that, in almost all cases, the output\nname was simply the input name with the `.md` extension, so the rule now\ndoes that by default. For special cases, the `sphinx_stardoc` (singular)\nrule can be called directly.\n\nAlso:\n* Adds `bzl:rule` as a cross reference lookup role\n* Removes some defunct stuff relating to the stardoc template files that\naren\u0027t used anymore.\n* Disables warnings from the autosectionlabel extension. These were\nspamming warnings because CHANGELOG.md has many headers with the same\nname.\n* Adds more entries to bazel inventory (all of native and ctx)",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "947ebbae1555cbdfd396af3b513804d8de5a5f0c",
      "old_mode": 33188,
      "old_path": "docs/sphinx/BUILD.bazel",
      "new_id": "03c0e446b80e2e124211b5f703fcae3a96f562a3",
      "new_mode": 33188,
      "new_path": "docs/sphinx/BUILD.bazel"
    },
    {
      "type": "delete",
      "old_id": "7aa33f778fdcda63f75457b5fc2b7e60f5d6a646",
      "old_mode": 33188,
      "old_path": "docs/sphinx/_stardoc_footer.md",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "b3155778e6f2d23e6958e10829c5d72210d7afbc",
      "old_mode": 33188,
      "old_path": "docs/sphinx/conf.py",
      "new_id": "3200466efcf01a5c873978bb2dbf0f1c449d8a36",
      "new_mode": 33188,
      "new_path": "docs/sphinx/conf.py"
    },
    {
      "type": "modify",
      "old_id": "8405eacb315744e460a642935092aa7ffee5cc09",
      "old_mode": 33188,
      "old_path": "docs/sphinx/index.md",
      "new_id": "445cf2026833b591e19b8275aa5533d9cda6f247",
      "new_mode": 33188,
      "new_path": "docs/sphinx/index.md"
    },
    {
      "type": "modify",
      "old_id": "6cb69ba881dd1dba675724a8aae6a225dcc2c2a8",
      "old_mode": 33188,
      "old_path": "sphinxdocs/BUILD.bazel",
      "new_id": "9ad1e1eef9e1bbe95b5f3b07ff9d240da9e3f956",
      "new_mode": 33188,
      "new_path": "sphinxdocs/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a85155b0ef1fc8558a18ac05d90b9f1d7ad34a53",
      "new_mode": 33188,
      "new_path": "sphinxdocs/docs/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bd4e9b6eec5c7d034d1fee77b93d4831b3ff2bb6",
      "new_mode": 33188,
      "new_path": "sphinxdocs/docs/api/sphinxdocs/index.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a03645ed4453e200ba9ae609c4c1418ed631029f",
      "new_mode": 33188,
      "new_path": "sphinxdocs/docs/api/sphinxdocs/inventories/index.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ac857d625b3ba724cd6c6e612f1e956f7c5c4a05",
      "new_mode": 33188,
      "new_path": "sphinxdocs/docs/index.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c6dc430dd6b25927fc252456f8ad1d3ee16e3c55",
      "new_mode": 33188,
      "new_path": "sphinxdocs/docs/sphinx-bzl.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d131607c8ea9d7d230a3c23f6f741691c5cc93bd",
      "new_mode": 33188,
      "new_path": "sphinxdocs/docs/starlark-docgen.md"
    },
    {
      "type": "modify",
      "old_id": "a7f02223240ae0b1f2aefd4cd1fcaf38368ec54c",
      "old_mode": 33188,
      "old_path": "sphinxdocs/inventories/bazel_inventory.txt",
      "new_id": "445f0f71f456dbffcfe916712eb434a730845afc",
      "new_mode": 33188,
      "new_path": "sphinxdocs/inventories/bazel_inventory.txt"
    },
    {
      "type": "modify",
      "old_id": "ec6a945ac5b5cc55672e6eca64428af4633ff1db",
      "old_mode": 33188,
      "old_path": "sphinxdocs/private/BUILD.bazel",
      "new_id": "d91e048e8f1fee278836d21fb88bfc68268a2f52",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "ee8e7aa0e2af70dcd05e822c1bc65d403fa185b3",
      "old_mode": 33188,
      "old_path": "sphinxdocs/private/readthedocs.bzl",
      "new_id": "a62c51b86aaa7038e1052878f9a542f84749516e",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/readthedocs.bzl"
    },
    {
      "type": "modify",
      "old_id": "a5ac83152eff569ad03dc6fbccd0f4fe9b84aaa5",
      "old_mode": 33188,
      "old_path": "sphinxdocs/private/sphinx.bzl",
      "new_id": "a198291a88e9cb9d473de67d676c85617830b25e",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/sphinx.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "076ed7225464126b50a85fb31c9f67f061506e79",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/sphinx_docs_library.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "de40d8deed6e02b3dfde39a4b7310cb129208b6d",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/sphinx_docs_library_info.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "095b3769cabfae18897e0fc2a11c0d08b7f343b6",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/sphinx_docs_library_macro.bzl"
    },
    {
      "type": "modify",
      "old_id": "e2b1756e129e81b732cc78a21f584dabaf9d4814",
      "old_mode": 33188,
      "old_path": "sphinxdocs/private/sphinx_stardoc.bzl",
      "new_id": "d5869b0bc45e27e07b6eafab2fdbbe0aa12dae90",
      "new_mode": 33188,
      "new_path": "sphinxdocs/private/sphinx_stardoc.bzl"
    },
    {
      "type": "modify",
      "old_id": "d9385bda3ff78b653ef7a3a7fded6642ec1fcfdb",
      "old_mode": 33188,
      "old_path": "sphinxdocs/sphinx.bzl",
      "new_id": "3c9dc6b51516002b3f9f8e7497a76940b929fc7f",
      "new_mode": 33188,
      "new_path": "sphinxdocs/sphinx.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e86432996b0e120e9b696408f037f6d01c40d21a",
      "new_mode": 33188,
      "new_path": "sphinxdocs/sphinx_docs_library.bzl"
    },
    {
      "type": "modify",
      "old_id": "623bc64d0cb920bc20519fb0fa0b56e97af27f2c",
      "old_mode": 33188,
      "old_path": "sphinxdocs/sphinx_stardoc.bzl",
      "new_id": "991396435b36189f221a851784f5b8b531b233e1",
      "new_mode": 33188,
      "new_path": "sphinxdocs/sphinx_stardoc.bzl"
    },
    {
      "type": "modify",
      "old_id": "be38d8a7ca736fe3db98bceeec1aac87531c6694",
      "old_mode": 33188,
      "old_path": "sphinxdocs/src/sphinx_bzl/bzl.py",
      "new_id": "d09914b318c48961ec987298192e3ef1c0d212d0",
      "new_mode": 33188,
      "new_path": "sphinxdocs/src/sphinx_bzl/bzl.py"
    },
    {
      "type": "modify",
      "old_id": "b141e5f0fcca111f4bcc399ea98d53cc5efbea82",
      "old_mode": 33188,
      "old_path": "sphinxdocs/tests/sphinx_stardoc/BUILD.bazel",
      "new_id": "e2837ff78f024fe9b3afbd4f38ce861880bd119b",
      "new_mode": 33188,
      "new_path": "sphinxdocs/tests/sphinx_stardoc/BUILD.bazel"
    }
  ]
}
