)]}'
{
  "log": [
    {
      "commit": "b90f3587711b2171d2dafa8179fe013475558e8d",
      "tree": "7b0646342b6d1d5fb6d5425c8c1c38053965524a",
      "parents": [
        "85f4e5e2f9e269402eb1f5f82cb9c0291faeaf9f",
        "f42b6142846cbcede1f1c3ca923a93af67180a22"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Fri Mar 27 15:33:14 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 27 15:33:14 2026"
      },
      "message": "Merge pull request #2756 from bradking/graph-visit-cleanup\n\nImprove readability of dyndep, depfile, and validation node logic"
    },
    {
      "commit": "f42b6142846cbcede1f1c3ca923a93af67180a22",
      "tree": "47016b20a336a8c3b5a7b3ff5c404aff3a2fa306",
      "parents": [
        "882af5e3621bca06386b2f68f161ac172f363f9e"
      ],
      "author": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Sat Mar 21 02:33:21 2026"
      },
      "committer": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Thu Mar 26 21:47:16 2026"
      },
      "message": "Simplify logic that updates an edge from dyndep and depfile bindings\n\nRecomputeNodeDirty checks both dyndep and depfile bindings when an edge\nis first encountered.  Consolidate them into a single conditional block.\nThis simplification was missed in commit 0f0fb3275d (Teach RecomputeDirty\nto load dyndep files that are ready, 2015-11-05, v1.10.0~1^2~53^2~7).\n"
    },
    {
      "commit": "85f4e5e2f9e269402eb1f5f82cb9c0291faeaf9f",
      "tree": "da246aa23cde5bffbc82a6ca2769e13b40b75494",
      "parents": [
        "57157f677760f4da3a3e5f20bc3797ba04f6cb6d",
        "ec78f228477faa59e614e14737d4c008f95cc60a"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Mar 26 21:34:50 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 26 21:34:50 2026"
      },
      "message": "Merge pull request #2750 from lklivingstone/fix/browse-url-encode\n\nFix/browse url encode"
    },
    {
      "commit": "882af5e3621bca06386b2f68f161ac172f363f9e",
      "tree": "a2cbcea2ca76711a85b9daee74ef79d3c9b1d655",
      "parents": [
        "79482d3b41abacce99ba227849b2a91b4664dd5c"
      ],
      "author": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Thu Mar 26 18:09:00 2026"
      },
      "committer": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Thu Mar 26 18:11:42 2026"
      },
      "message": "Explicitly load a node\u0027s mtime before comparing it to the deps log\n\nPreviously we were relying on RecomputeNodeDirty to do\nthis before LoadDeps.  Avoid this non-local assumption.\n\nSuggestd-by: David \u0027Digit\u0027 Turner \u003cdigit+github@google.com\u003e\n"
    },
    {
      "commit": "ec78f228477faa59e614e14737d4c008f95cc60a",
      "tree": "d1140cb893e2dd132ca75a36c598d32577c12bef",
      "parents": [
        "5ff92d8a51b7af43aa53df0ad733c2c3e0120d4f"
      ],
      "author": {
        "name": "lklivingstone",
        "email": "livingstone.lk.337@gmail.com",
        "time": "Mon Mar 23 17:20:11 2026"
      },
      "committer": {
        "name": "lklivingstone",
        "email": "livingstone.lk.337@gmail.com",
        "time": "Thu Mar 26 16:12:45 2026"
      },
      "message": "fix URL-encode targets in -t browse\n\nThe browse tool did not correctly encode targets containing \u0027%\u0027, causing them to be interpreted incorrectly after URL decoding.\nFix this by URL-encoding targets using urllib.parse.quote when generating links.\n\nThe import changes are compatible with both Python 2.7 and Python 3.x.\n\nAdditionally included a test to ensure complex target names are preserved exactly during parsing.\n\nFixes #2652\n"
    },
    {
      "commit": "79482d3b41abacce99ba227849b2a91b4664dd5c",
      "tree": "227339dff3e7915917b284e98e46be502a7116ce",
      "parents": [
        "57157f677760f4da3a3e5f20bc3797ba04f6cb6d"
      ],
      "author": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Sat Mar 21 01:06:40 2026"
      },
      "committer": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Thu Mar 26 13:42:01 2026"
      },
      "message": "Queue an edge\u0027s validation nodes before *all* inputs\n\nPreviously a dyndep binding could cause one input to be traversed\nbefore queuing the validation nodes of the current edge.  This does\nnot affect correctness, but it makes the code easier to follow.\n"
    },
    {
      "commit": "57157f677760f4da3a3e5f20bc3797ba04f6cb6d",
      "tree": "0cdc94b2411a8b3b12fad29b80c8a5bebceb8c6b",
      "parents": [
        "a37b2ce615eb8e9710e9298b3c05f6b41fc71272",
        "1cda4274d941125aab6e798909ecb400f3cd2d2e"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Mar 25 17:50:20 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 25 17:50:20 2026"
      },
      "message": "Merge pull request #2754 from bradking/doc-dyndep\n\nDocument more precisely how a dyndep file may affect the build graph"
    },
    {
      "commit": "1cda4274d941125aab6e798909ecb400f3cd2d2e",
      "tree": "0cdc94b2411a8b3b12fad29b80c8a5bebceb8c6b",
      "parents": [
        "a37b2ce615eb8e9710e9298b3c05f6b41fc71272"
      ],
      "author": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Tue Mar 24 20:59:22 2026"
      },
      "committer": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Tue Mar 24 20:59:22 2026"
      },
      "message": "Document more precisely how a dyndep file may affect the build graph\n\nOnly the part of the graph that depends on the edges with a dyndep\nbinding may be affected by content loaded from the dyndep file.\nOtherwise the dyndep file could change the build graph in a way that\ncauses already up-to-date build statements to become out-of-date.\n"
    },
    {
      "commit": "a37b2ce615eb8e9710e9298b3c05f6b41fc71272",
      "tree": "a5c1679b5a4fe9c0ba8ce434bf0a8e18e4635b36",
      "parents": [
        "c04c5578f2a454ddd5c14f10df48f8b19b5a949c",
        "36c1fd98332935b08b7e7e57b9ac8ac66055c7b5"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Mar 24 20:42:01 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 24 20:42:01 2026"
      },
      "message": "Merge pull request #2749 from bradking/graph-visit-order\n\nVisit all of an edge\u0027s inputs before checking if any is ready"
    },
    {
      "commit": "c04c5578f2a454ddd5c14f10df48f8b19b5a949c",
      "tree": "e6687c4ead3f7b97f1f44f495b798eabf6e533c4",
      "parents": [
        "297718e2b5d3c6cb053154261d7acbee62e6c521",
        "258ec103025a176e737699149d72be5d101975be"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Mar 24 20:33:02 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 24 20:33:02 2026"
      },
      "message": "Merge pull request #2747 from cuiweixie/fix/lexer-version-check-operator\n\nfix: use \u003d\u003d instead of \u003d in newline escape version check"
    },
    {
      "commit": "297718e2b5d3c6cb053154261d7acbee62e6c521",
      "tree": "b77e79eff36fe27f3906e4a910b4d2ef0aec1153",
      "parents": [
        "5ff92d8a51b7af43aa53df0ad733c2c3e0120d4f"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Mar 24 20:30:01 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Mar 24 20:30:01 2026"
      },
      "message": "clang-tidy: bugprone-assignment-in-if-condition\n"
    },
    {
      "commit": "36c1fd98332935b08b7e7e57b9ac8ac66055c7b5",
      "tree": "539c44c914610f79a4cd5aaf6c2e3cdccfe5849f",
      "parents": [
        "5ff92d8a51b7af43aa53df0ad733c2c3e0120d4f"
      ],
      "author": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Sun Mar 22 15:34:28 2026"
      },
      "committer": {
        "name": "Brad King",
        "email": "brad.king@kitware.com",
        "time": "Sun Mar 22 18:12:40 2026"
      },
      "message": "Visit all of an edge\u0027s inputs before checking if any is ready\n\nNewly encountered edges may load dyndep files and gain outputs that\ncorrespond to some of our inputs.  In that case those inputs\u0027 readiness\nis determined by their edges instead of just mtimes.\n\nFixes: #2641\n"
    },
    {
      "commit": "258ec103025a176e737699149d72be5d101975be",
      "tree": "6e913ba0de5b1c860c025e9703bf357acd910502",
      "parents": [
        "5ff92d8a51b7af43aa53df0ad733c2c3e0120d4f"
      ],
      "author": {
        "name": "Weixie Cui",
        "email": "cuiweixie@gmail.com",
        "time": "Fri Mar 20 15:13:52 2026"
      },
      "committer": {
        "name": "Weixie Cui",
        "email": "cuiweixie@gmail.com",
        "time": "Fri Mar 20 15:14:02 2026"
      },
      "message": "fix: use \u003d\u003d instead of \u003d in newline escape version check\n\nThe condition used assignment (\u003d) instead of comparison (\u003d\u003d), which would\nalways evaluate to true and break the version check logic.\n"
    },
    {
      "commit": "5ff92d8a51b7af43aa53df0ad733c2c3e0120d4f",
      "tree": "ee1417511286df9f78226f164f773e044156be1d",
      "parents": [
        "0cd88be82de8fc7ecb3a66e5af4850145f81c90b",
        "293b34d433f89ee24721ebd5d11fdd6ee1bde661"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Mar 09 21:56:27 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 09 21:56:27 2026"
      },
      "message": "Merge pull request #2741 from adrian-javid/editor_config_python_indent_size_4\n\nset EditorConfig to use indent size of 4 for Python files"
    },
    {
      "commit": "293b34d433f89ee24721ebd5d11fdd6ee1bde661",
      "tree": "ee1417511286df9f78226f164f773e044156be1d",
      "parents": [
        "0cd88be82de8fc7ecb3a66e5af4850145f81c90b"
      ],
      "author": {
        "name": "Adrian",
        "email": "73155005+adrian-javid@users.noreply.github.com",
        "time": "Sun Mar 08 03:53:45 2026"
      },
      "committer": {
        "name": "Adrian",
        "email": "73155005+adrian-javid@users.noreply.github.com",
        "time": "Sun Mar 08 03:53:45 2026"
      },
      "message": "update `.editorconfig` such that indent size of 4 is used for Python files\n"
    },
    {
      "commit": "0cd88be82de8fc7ecb3a66e5af4850145f81c90b",
      "tree": "dfc23cac969c21dbcbc4f7569329fb0c79d9c09c",
      "parents": [
        "131337bf5c52b4f45b21afcaba3bc51007f0740a",
        "03ec8c658e6a94babb9fe766c4fb77d2761a4d46"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Mar 03 21:09:51 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 03 21:09:51 2026"
      },
      "message": "Merge pull request #2729 from codesuki/validations\n\nFix spurious rebuilds for phony targets with validations"
    },
    {
      "commit": "131337bf5c52b4f45b21afcaba3bc51007f0740a",
      "tree": "d59f6ece23ecb53ee142a5ce995f097ef205ec80",
      "parents": [
        "b227a2d8b8ccab8533dcef4147f316b1c03542d6"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Feb 26 21:43:37 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Feb 26 21:43:37 2026"
      },
      "message": "Fix typo, improve formatting in README.md\n"
    },
    {
      "commit": "b227a2d8b8ccab8533dcef4147f316b1c03542d6",
      "tree": "b5d3a234973665ff126267d9351a25518df46d6c",
      "parents": [
        "394ba36e5dfd9edd1768d89e2ff12b8e3a8db00a",
        "e7fcd463403f6698386645e1dfb6152a1a342c75"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Feb 26 20:10:52 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 26 20:10:52 2026"
      },
      "message": "Merge pull request #2736 from haosenwang1018/fix/bare-excepts\n\nfix: replace 2 bare except clauses with except Exception"
    },
    {
      "commit": "394ba36e5dfd9edd1768d89e2ff12b8e3a8db00a",
      "tree": "d38b71b405afb7a88ab3b4609f0114e73df5a449",
      "parents": [
        "bf070e07538495043bc3879db198a9d2f859123e",
        "35976f0303726e80cc5fb082aac5611ea964468d"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Feb 26 20:10:11 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 26 20:10:11 2026"
      },
      "message": "Merge pull request #2737 from zufuliu/msvc-c++17\n\nUpdate MSVC C++ standard to C++17, see PR #2734."
    },
    {
      "commit": "35976f0303726e80cc5fb082aac5611ea964468d",
      "tree": "d38b71b405afb7a88ab3b4609f0114e73df5a449",
      "parents": [
        "bf070e07538495043bc3879db198a9d2f859123e"
      ],
      "author": {
        "name": "zufuliu",
        "email": "zufuliu@gmail.com",
        "time": "Thu Feb 26 12:01:23 2026"
      },
      "committer": {
        "name": "zufuliu",
        "email": "zufuliu@gmail.com",
        "time": "Thu Feb 26 12:01:23 2026"
      },
      "message": "Update MSVC C++ standard to C++17, see PR #2734.\n"
    },
    {
      "commit": "e7fcd463403f6698386645e1dfb6152a1a342c75",
      "tree": "6bfeb86055cd1337c838383ad9cb1986c9ca5370",
      "parents": [
        "bf070e07538495043bc3879db198a9d2f859123e"
      ],
      "author": {
        "name": "haosenwang1018",
        "email": "167664334+haosenwang1018@users.noreply.github.com",
        "time": "Thu Feb 26 05:33:09 2026"
      },
      "committer": {
        "name": "haosenwang1018",
        "email": "167664334+haosenwang1018@users.noreply.github.com",
        "time": "Thu Feb 26 05:33:09 2026"
      },
      "message": "fix: replace 2 bare except clauses with except Exception\n"
    },
    {
      "commit": "bf070e07538495043bc3879db198a9d2f859123e",
      "tree": "6a9da7aba9bc4e85760d861f2747dc358e0ba5b1",
      "parents": [
        "4d76392b37866904a43583edafeff98e314f6ac0"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Feb 25 20:43:32 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Feb 25 20:44:22 2026"
      },
      "message": "Only allow integers for pool depth (no implicit conversion to 0)\n\nFixes #2733.\n"
    },
    {
      "commit": "4d76392b37866904a43583edafeff98e314f6ac0",
      "tree": "dda4fdc2486ce3e12dd66ebcd51dc945af87c2e0",
      "parents": [
        "6191ee39eb5fbf91ef8a950f76d8f7661a15dd9b",
        "04ba29b8e8953999c411dec613f3d52351b20bef"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Feb 25 20:42:01 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 25 20:42:01 2026"
      },
      "message": "Merge pull request #2734 from jhasse/cxx17\n\nBump C++14 to C++17"
    },
    {
      "commit": "04ba29b8e8953999c411dec613f3d52351b20bef",
      "tree": "dda4fdc2486ce3e12dd66ebcd51dc945af87c2e0",
      "parents": [
        "6191ee39eb5fbf91ef8a950f76d8f7661a15dd9b"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Feb 25 20:28:16 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Feb 25 20:28:16 2026"
      },
      "message": "Bump C++14 to C++17\n"
    },
    {
      "commit": "6191ee39eb5fbf91ef8a950f76d8f7661a15dd9b",
      "tree": "87dc8609bab7ede3deef6a8ac0d9935e80776451",
      "parents": [
        "cc60300ab94dae9bb28fece3c9b7c397235b17de",
        "3fdd1796b96e14bd904ca0d46d39809712a7952c"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Feb 25 20:20:29 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 25 20:20:29 2026"
      },
      "message": "Merge pull request #2730 from jhasse/restat-with-builddir\n\n\"ninja -t restat\" doesn\u0027t work with \"builddir\""
    },
    {
      "commit": "3fdd1796b96e14bd904ca0d46d39809712a7952c",
      "tree": "87dc8609bab7ede3deef6a8ac0d9935e80776451",
      "parents": [
        "8161d3ac87e530ad65f3096d0a461aabf06e3b7a"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Feb 17 20:33:45 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Feb 17 20:33:45 2026"
      },
      "message": "restat tool: Add --builddir\u003dDIR; might be needed because manifest won\u0027t be parsed\n"
    },
    {
      "commit": "8161d3ac87e530ad65f3096d0a461aabf06e3b7a",
      "tree": "38396e1ee122f1f0ffec899c0bd77bc7cc2da7ba",
      "parents": [
        "cc60300ab94dae9bb28fece3c9b7c397235b17de"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Feb 16 11:38:45 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Feb 16 11:38:45 2026"
      },
      "message": "Add an integration test for \"ninja -t restat\"\n"
    },
    {
      "commit": "03ec8c658e6a94babb9fe766c4fb77d2761a4d46",
      "tree": "90e514a734a445d64c1a3183354486a334a92096",
      "parents": [
        "43aa6e3a34150460512b3576859af7afdefa17e8"
      ],
      "author": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Feb 16 04:59:34 2026"
      },
      "committer": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Feb 16 04:59:34 2026"
      },
      "message": "fixup! fixup! fixup! Fix spurious rebuilds for phony targets with validations\n"
    },
    {
      "commit": "43aa6e3a34150460512b3576859af7afdefa17e8",
      "tree": "d48967150eb2a762975cbf788e13d393206bbd94",
      "parents": [
        "b5f70eed10a8239401830ef74d8bc0b64f9a8f47"
      ],
      "author": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Feb 16 04:57:30 2026"
      },
      "committer": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Feb 16 04:57:30 2026"
      },
      "message": "fixup! fixup! Fix spurious rebuilds for phony targets with validations\n"
    },
    {
      "commit": "b5f70eed10a8239401830ef74d8bc0b64f9a8f47",
      "tree": "f5bf77542521491e8c0f4a3d0331f8d4d0b50ab6",
      "parents": [
        "15c7373ba8b69e6159bdccf22ac15168504708e4"
      ],
      "author": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Feb 16 04:52:32 2026"
      },
      "committer": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Mon Feb 16 04:52:32 2026"
      },
      "message": "fixup! Fix spurious rebuilds for phony targets with validations\n"
    },
    {
      "commit": "15c7373ba8b69e6159bdccf22ac15168504708e4",
      "tree": "eb9c31f1abb9a836f71ae4303ea25e0cc937cdb9",
      "parents": [
        "cc60300ab94dae9bb28fece3c9b7c397235b17de"
      ],
      "author": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Fri Feb 13 07:46:41 2026"
      },
      "committer": {
        "name": "Neri Marschik",
        "email": "nerima@google.com",
        "time": "Fri Feb 13 07:49:33 2026"
      },
      "message": "Fix spurious rebuilds for phony targets with validations\n\nPhony targets with no inputs are considered dirty if their output is missing.\nHowever, phony targets used as anchors for validation dependencies (e.g. from GN groups)\noften have no regular inputs but should not force a rebuild if the validations are clean.\n\nThis change updates RecomputeOutputDirty to check if a phony target has validation dependencies.\nIf so, it is treated similarly to a target with inputs: it is only dirty if its dependencies are dirty,\nnot automatically dirty because the output file is missing.\n\nThis fixes an issue where targets depending on a phony validation anchor would rebuild on every run.\n"
    },
    {
      "commit": "cc60300ab94dae9bb28fece3c9b7c397235b17de",
      "tree": "1ae29a30522b075818286ec99915001eea662535",
      "parents": [
        "47c046750caff167787ffae562021cd58a54880a",
        "e4bff630fd339fcc6e8982a36cd88fc5d04c64a0"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Jan 20 16:10:35 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 20 16:10:35 2026"
      },
      "message": "Merge pull request #2705 from elliotgoodrich/reduce-sizeof-edge\n\nReduce `sizeof(Edge)`"
    },
    {
      "commit": "47c046750caff167787ffae562021cd58a54880a",
      "tree": "4f615b3952eb973c643d7e25f1a48e160f9a20d9",
      "parents": [
        "ad7ae6343cbf166023074470329fddf10fbf6e29",
        "9746811d26f6e17e14f98601f5c9927bbc45728a"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Jan 20 08:12:59 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jan 20 08:12:59 2026"
      },
      "message": "Merge pull request #2660 from jyn514/doc\n\nDocument some additional `-t` tool flags"
    },
    {
      "commit": "ad7ae6343cbf166023074470329fddf10fbf6e29",
      "tree": "d77fc0757336c2abffed18b4bd719f6591f56fab",
      "parents": [
        "714ae4bf0dd79e81200c336128164f5a049be368",
        "92b82576af4036fe39216245b3cd9ffe5fd99871"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 18 14:26:40 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 18 14:26:40 2026"
      },
      "message": "Merge pull request #2711 from jlonnberg/symlink-support-windows\n\nStat symlinks correctly on windows"
    },
    {
      "commit": "714ae4bf0dd79e81200c336128164f5a049be368",
      "tree": "b35700e32e8fac9dc666afadb6545ca758fe7dd7",
      "parents": [
        "83b15129cdfcd79a7fd71d445aae7cdf5bfc2a1a"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 18 13:17:03 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 18 13:20:33 2026"
      },
      "message": "Compare vectors in build_test.cc to get better output if sizes don\u0027t match\n"
    },
    {
      "commit": "83b15129cdfcd79a7fd71d445aae7cdf5bfc2a1a",
      "tree": "ccb6f0e55c5b1a54dc884f4394775352574fed6d",
      "parents": [
        "27e545a5a1695be26ffe7144a903492e7a013d45",
        "0a7b5bea0f5c373154f336b821ad20e4396e0d3d"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 18 12:59:05 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 18 12:59:05 2026"
      },
      "message": "Merge pull request #2704 from elliotgoodrich/reduce-node-sizeof\n\nReduce `sizeof(Node)`"
    },
    {
      "commit": "27e545a5a1695be26ffe7144a903492e7a013d45",
      "tree": "b793cc4345206c520f67db1f5b4fc91d3a0b503e",
      "parents": [
        "3cd2f23945ff8720b00c6c2a86411795beab6f87"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jan 15 20:46:37 2026"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jan 15 20:47:04 2026"
      },
      "message": "Don\u0027t clear err in VirtualFileSystem::Stat because real one also doesn\u0027t\n\nThis caused BuildWithLogTest.RebuildAfterFailure to fail because a previous error was still set.\n"
    },
    {
      "commit": "92b82576af4036fe39216245b3cd9ffe5fd99871",
      "tree": "de3d117eb5cb83bfe49026b2630faf6e8c178c4d",
      "parents": [
        "3cd2f23945ff8720b00c6c2a86411795beab6f87"
      ],
      "author": {
        "name": "Joakim Lonnberg",
        "email": "joakim.lonnberg@iar.com",
        "time": "Thu Jan 15 16:04:42 2026"
      },
      "committer": {
        "name": "Joakim Lonnberg",
        "email": "joakim.lonnberg@iar.com",
        "time": "Thu Jan 15 16:04:42 2026"
      },
      "message": "Stat symlinks correctly on windows\n"
    },
    {
      "commit": "3cd2f23945ff8720b00c6c2a86411795beab6f87",
      "tree": "7e96a8e9be3cc77d6a48e26cab5da79e214ff463",
      "parents": [
        "2d77de5e41b6d0beafd6955336297f3a6933dc96",
        "3eeda8fda65188bcea362e24b237f8eb113680f1"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Jan 14 00:16:20 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 14 00:16:20 2026"
      },
      "message": "Merge pull request #2673 from dblsaiko/push-mlnkxqoqmvru\n\nPrint an entry in the compilation database for each input file"
    },
    {
      "commit": "2d77de5e41b6d0beafd6955336297f3a6933dc96",
      "tree": "a2e4c8139d3fad8cecf05b8a1ec34a05d3032bdc",
      "parents": [
        "0311d436ae462c56cc98ef2cc63119a02cdd02c2",
        "a0e5f79ecc1207f28316c58fb5cd6d715b64cf97"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 11 13:44:17 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 11 13:44:17 2026"
      },
      "message": "Merge pull request #2697 from jerome-pouiller/permission-fix\n\nMake sure to carry the old uid and gid on file replace"
    },
    {
      "commit": "0311d436ae462c56cc98ef2cc63119a02cdd02c2",
      "tree": "4aeaa31ba46460edf2e93f1fe8d82d0fd36957da",
      "parents": [
        "077c794f4636e64d6d62209de2463e5a8a29d8de",
        "3b944c9813d4ff1701125aef272e5a60eab82741"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 11 13:41:36 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 11 13:41:36 2026"
      },
      "message": "Merge pull request #2606 from ildus/newline_insert\n\nSupport $^ escape sequence for newlines."
    },
    {
      "commit": "077c794f4636e64d6d62209de2463e5a8a29d8de",
      "tree": "9dd942da29f79fefd1f0df6529f380e7229ea8ea",
      "parents": [
        "c74beb43695ff8cae955f05a6cbe1753aa9517f8",
        "6fcd700456c4fa3ed12005116aaddb04717df2e2"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jan 11 13:38:57 2026"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jan 11 13:38:57 2026"
      },
      "message": "Merge pull request #2700 from ninja-build/dependabot/github_actions/actions/upload-artifact-6\n\nBump actions/upload-artifact from 5 to 6"
    },
    {
      "commit": "0a7b5bea0f5c373154f336b821ad20e4396e0d3d",
      "tree": "37e5f5900dbe027991879a2589be27709524ee7b",
      "parents": [
        "c74beb43695ff8cae955f05a6cbe1753aa9517f8"
      ],
      "author": {
        "name": "Elliot Goodrich",
        "email": "elliotgoodrich@gmail.com",
        "time": "Thu Jan 01 18:08:56 2026"
      },
      "committer": {
        "name": "Elliot Goodrich",
        "email": "elliotgoodrich@gmail.com",
        "time": "Thu Jan 01 18:28:58 2026"
      },
      "message": "Reduce `sizeof(Node)`\n\nReduce the size of `enum ExistenceStatus` from an `int` to `char`\nand then move an `int` to take up the 4 bytes of padding after the\n`bool` members.\n\nThis reduces `sizeof(Node)` from 144 to 136 on 64-bit (MSVC).\n"
    },
    {
      "commit": "e4bff630fd339fcc6e8982a36cd88fc5d04c64a0",
      "tree": "27258d74d9b9e546a68d1ffc6e9471d20d8a820d",
      "parents": [
        "c74beb43695ff8cae955f05a6cbe1753aa9517f8"
      ],
      "author": {
        "name": "Elliot Goodrich",
        "email": "elliotgoodrich@gmail.com",
        "time": "Thu Jan 01 18:22:55 2026"
      },
      "committer": {
        "name": "Elliot Goodrich",
        "email": "elliotgoodrich@gmail.com",
        "time": "Thu Jan 01 18:27:17 2026"
      },
      "message": "Reduce `sizeof(Edge)`\n\nReduce the size of `enum VisitMark` from an `int` to `char` and then\nmove this and the `Jobserver::Slot` (a `std::int16_t`) next to the\n`bool` members to fill up padding.\n\nThis reduces `sizeof(Edge)` from 196 to 184 on 64-bit (MSVC).\n"
    },
    {
      "commit": "3b944c9813d4ff1701125aef272e5a60eab82741",
      "tree": "0245ed4fe7c15bb1a910c3c1b86ed3982bec9ebe",
      "parents": [
        "85c1564114c91e5330742b5324f5886043d887f6"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Sun Dec 28 11:10:25 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Sun Dec 28 11:10:25 2025"
      },
      "message": "Rename minNewline.. constants to kMinNewline..\n"
    },
    {
      "commit": "85c1564114c91e5330742b5324f5886043d887f6",
      "tree": "28bb3bd894eb139f7fe53241e2af976895ad6607",
      "parents": [
        "68fbe8ae5d999e1f007401bcd19aeb234c966103"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Sun Dec 28 11:03:52 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Sun Dec 28 11:03:52 2025"
      },
      "message": "Revert \"Add \\r\\n on Windows\"\n\nThis reverts commit 6c6587b64b9cc3cc9d4a10cb53d5750157d6f2d9.\n"
    },
    {
      "commit": "c74beb43695ff8cae955f05a6cbe1753aa9517f8",
      "tree": "a7cb51b75a376c260b4346441b12c82ed864d3dc",
      "parents": [
        "4b72b15aac766afe6a9a2c0dad535b0c2035a550"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sat Dec 20 10:56:46 2025"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sat Dec 20 10:56:46 2025"
      },
      "message": "GitHub Actions: Update to macos-14\n\nI think this also switches from Intel to ARM, let\u0027s see how it goes.\n"
    },
    {
      "commit": "6fcd700456c4fa3ed12005116aaddb04717df2e2",
      "tree": "2b4efed1f83569e7b0b1415e0d524a9955587b9f",
      "parents": [
        "4b72b15aac766afe6a9a2c0dad535b0c2035a550"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Dec 15 08:05:38 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 15 08:05:38 2025"
      },
      "message": "Bump actions/upload-artifact from 5 to 6\n\nBumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6.\n- [Release notes](https://github.com/actions/upload-artifact/releases)\n- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/upload-artifact\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "a0e5f79ecc1207f28316c58fb5cd6d715b64cf97",
      "tree": "e31eee4659f6905180171763cd87816f7b12b3eb",
      "parents": [
        "4b72b15aac766afe6a9a2c0dad535b0c2035a550"
      ],
      "author": {
        "name": "Jérôme Pouiller",
        "email": "jerome.pouiller@silabs.com",
        "time": "Fri Dec 05 17:53:00 2025"
      },
      "committer": {
        "name": "Jérôme Pouiller",
        "email": "jerome.pouiller@silabs.com",
        "time": "Tue Dec 09 13:20:16 2025"
      },
      "message": "Make sure to carry the old uid and gid on file replace\n\nThe normal workflow is to run \"ninja all \u0026\u0026 sudo ninja install\".\nUnfortunately, ninja may rebuild .ninja_log or .ninja_deps. In this\ncase, they are created with root as owner. Once done, user can\u0027t build\nwithout being root.\n\nThe patch below carry the original owner of the file (as \"cp -a\" does).\n\nFixes: #1302\nCo-authored-by: Marcel Hollerbach \u003cmarcel-hollerbach@t-online.de\u003e\n"
    },
    {
      "commit": "4b72b15aac766afe6a9a2c0dad535b0c2035a550",
      "tree": "4a314853b0ca72593f4790ffd3333a5e1bebbc73",
      "parents": [
        "ae3884d5cc3a2f085c536d0d24d91941f95ae24c",
        "c9de7ce41939b098d8e2392dfb587863f95b6300"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sat Nov 29 18:51:23 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 29 18:51:23 2025"
      },
      "message": "Merge pull request #2684 from moritzx22/testSuiteMemoryLeak\n\nFix unit test crash, if test fails"
    },
    {
      "commit": "ae3884d5cc3a2f085c536d0d24d91941f95ae24c",
      "tree": "3f54d46e3b69e1b15b032a74bd3951eb875877c7",
      "parents": [
        "1272304319ea1a24a083a0b3bf466aee226fc5c9",
        "71cb2a4d6929409937adee9c2ca0c3d9d0be094e"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sat Nov 29 13:34:09 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 29 13:34:09 2025"
      },
      "message": "Merge pull request #2692 from thesamesam/fifo-no-validate\n\nDon\u0027t require a FIFO to be identifiable as such"
    },
    {
      "commit": "1272304319ea1a24a083a0b3bf466aee226fc5c9",
      "tree": "3285b2ee241acc77754351e951829c78343c1e3c",
      "parents": [
        "231db65ccf5427b16ff85b3a390a663f3c8a479f",
        "8d311b4f4a95da9c3fafa89ee80fe3774aa7dde9"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sat Nov 29 13:32:50 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Nov 29 13:32:50 2025"
      },
      "message": "Merge pull request #2693 from ninja-build/dependabot/github_actions/actions/checkout-6\n\nBump actions/checkout from 5 to 6"
    },
    {
      "commit": "71cb2a4d6929409937adee9c2ca0c3d9d0be094e",
      "tree": "1ef1b0639a1fda6313e669ca35939c958ace9b30",
      "parents": [
        "231db65ccf5427b16ff85b3a390a663f3c8a479f"
      ],
      "author": {
        "name": "Sam James",
        "email": "sam@gentoo.org",
        "time": "Sat Nov 22 12:49:35 2025"
      },
      "committer": {
        "name": "Sam James",
        "email": "sam@gentoo.org",
        "time": "Wed Nov 26 18:33:51 2025"
      },
      "message": "Permit jobserver on character device in addition to a named pipe\n\nThe jobserver specification [0] currently suggests that the FIFO must be a\ngenuine FIFO.\n\nFor some work we\u0027re doing [1][2], we\u0027re emulating a FIFO using CUSE/FUSE to allow\ntracking when consumers disappear to avoid lost tokens. nixos had a similar\nidea in the past too [3].\n\nmake already does not perform such a check, just the specification isn\u0027t\nclear about it, so we\u0027ve asked them to clarify it [4].\n\n[0] https://www.gnu.org/software/make/manual/html_node/POSIX-Jobserver.html\n[1] https://codeberg.org/amonakov/guildmaster\n[2] https://gitweb.gentoo.org/proj/steve.git/\n[3] https://github.com/NixOS/nixpkgs/pull/314888\n[4] https://savannah.gnu.org/bugs/index.php?67726\n\nSigned-off-by: Sam James \u003csam@gentoo.org\u003e\n"
    },
    {
      "commit": "8d311b4f4a95da9c3fafa89ee80fe3774aa7dde9",
      "tree": "3285b2ee241acc77754351e951829c78343c1e3c",
      "parents": [
        "231db65ccf5427b16ff85b3a390a663f3c8a479f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Nov 24 08:09:55 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 24 08:09:55 2025"
      },
      "message": "Bump actions/checkout from 5 to 6\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/v5...v6)\n\n---\nupdated-dependencies:\n- dependency-name: actions/checkout\n  dependency-version: \u00276\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "231db65ccf5427b16ff85b3a390a663f3c8a479f",
      "tree": "d171897832eced1e7e7ffa030bd209eb1ab53656",
      "parents": [
        "931d990d9721562c3d9bedac45415d944c37e75f",
        "cc0b6ffada6c2fc40fc8eb9182e76605bdc58566"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Nov 20 16:22:03 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 20 16:22:03 2025"
      },
      "message": "Merge pull request #2690 from digit-google/fix-status-code-when-ninja-is-interrupted\n\nFix Ninja exit code when interrupted (issue #2681)"
    },
    {
      "commit": "cc0b6ffada6c2fc40fc8eb9182e76605bdc58566",
      "tree": "d171897832eced1e7e7ffa030bd209eb1ab53656",
      "parents": [
        "931d990d9721562c3d9bedac45415d944c37e75f"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit+github@google.com",
        "time": "Wed Nov 05 14:08:10 2025"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit+github@google.com",
        "time": "Thu Nov 06 13:39:25 2025"
      },
      "message": "Fix Ninja exit code when interrupted.\n\nThis fixes ##2681, a regression that was introduced during PR #2540\nwhere Ninja would return a status code of 0 when interrupted.\n\nThe problem comes from RealCommandRunner::WaitForCommand() not\nupdating the result-\u003estatus field in case of interrupt being\ndetected in Subprocess::DoWork().\n\nThis fixes the issue and adds a regression test for it.\n\n+ Fix the CommandRunner::Result constructor to ensure that\n  the `status` field is always initialized, even though it\n  should now always be replaced at the end of a command.\n"
    },
    {
      "commit": "931d990d9721562c3d9bedac45415d944c37e75f",
      "tree": "2a3700c0a8acc4595b9909a457ab8138ca87822d",
      "parents": [
        "47ed2d244b8c926bbf8b12bcd1e9204586fcc798",
        "8d76cc4179b30fe6d02b7165e271228e3f26a7b6"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Oct 27 18:31:33 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 27 18:31:33 2025"
      },
      "message": "Merge pull request #2687 from ninja-build/dependabot/github_actions/actions/upload-artifact-5\n\nBump actions/upload-artifact from 4 to 5"
    },
    {
      "commit": "c9de7ce41939b098d8e2392dfb587863f95b6300",
      "tree": "937074a5aac23d6c01b8b8ecba1ef2411071b588",
      "parents": [
        "47ed2d244b8c926bbf8b12bcd1e9204586fcc798"
      ],
      "author": {
        "name": "Moritz",
        "email": "moritz.mh22@gmail.com",
        "time": "Wed Oct 15 17:31:03 2025"
      },
      "committer": {
        "name": "Moritz",
        "email": "moritz.mh22@gmail.com",
        "time": "Mon Oct 27 18:17:32 2025"
      },
      "message": "Fix unit test crash, if test fails\n"
    },
    {
      "commit": "8d76cc4179b30fe6d02b7165e271228e3f26a7b6",
      "tree": "2a3700c0a8acc4595b9909a457ab8138ca87822d",
      "parents": [
        "47ed2d244b8c926bbf8b12bcd1e9204586fcc798"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Oct 27 08:23:15 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 27 08:23:15 2025"
      },
      "message": "Bump actions/upload-artifact from 4 to 5\n\nBumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.\n- [Release notes](https://github.com/actions/upload-artifact/releases)\n- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5)\n\n---\nupdated-dependencies:\n- dependency-name: actions/upload-artifact\n  dependency-version: \u00275\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "3eeda8fda65188bcea362e24b237f8eb113680f1",
      "tree": "ec8f3ac5a088c113cb2aba72b8c325a753e631a9",
      "parents": [
        "47ed2d244b8c926bbf8b12bcd1e9204586fcc798"
      ],
      "author": {
        "name": "Katalin Rebhan",
        "email": "me@dblsaiko.net",
        "time": "Wed Sep 17 15:30:30 2025"
      },
      "committer": {
        "name": "Katalin Rebhan",
        "email": "me@dblsaiko.net",
        "time": "Fri Oct 10 09:19:22 2025"
      },
      "message": "Print an entry in the compilation database for each input file\n\nTargets which use multiple input files only have their first input\nfile show up in the compilation database. This can cause issues with\ntools that build a list of files to inspect from the compilation\ndatabase. For example, when using the Swift programming language\ntogether with the SourceKit-LSP language server, only one source file\nfrom each Swift module gets processed correctly by the language server\nusing the current compilation database output from Ninja, because Swift\nmodules are compiled with one compiler invocation and therefore one\nNinja target for the whole module.\n\nThis changes the compilation database formatter to emit one entry\nfor each input file of a target instead of just the first input\nfile, which makes tools able to pick up all the input files used in\nthe build.\n\nFixes #1590.\nSee also https://github.com/mesonbuild/meson/pull/14264.\n"
    },
    {
      "commit": "68fbe8ae5d999e1f007401bcd19aeb234c966103",
      "tree": "b79419882597e5ee05b65f9ead66edc3e488fa47",
      "parents": [
        "50db8fd1c301a31346e181bbffdca942c7388fcd"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Fri Sep 26 13:24:48 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Fri Sep 26 13:24:48 2025"
      },
      "message": "Fix formatting in version.h\n"
    },
    {
      "commit": "50db8fd1c301a31346e181bbffdca942c7388fcd",
      "tree": "34ff13b84fd8db360691ac8d236728f3dd9121f7",
      "parents": [
        "da390ef9d5d368fca94fc9d86f75e7a67058d413"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Fri Sep 26 13:15:26 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Fri Sep 26 13:15:26 2025"
      },
      "message": "Fix formatting and more precise doc\n"
    },
    {
      "commit": "da390ef9d5d368fca94fc9d86f75e7a67058d413",
      "tree": "a16164174e04517ff1c68e0aca8925ae6865594f",
      "parents": [
        "6c6587b64b9cc3cc9d4a10cb53d5750157d6f2d9"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Fri Sep 26 12:03:10 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Fri Sep 26 12:03:10 2025"
      },
      "message": "Improve docs and use pointer in CheckNinjaVersion\n"
    },
    {
      "commit": "6c6587b64b9cc3cc9d4a10cb53d5750157d6f2d9",
      "tree": "b826b9ede455e9988461fd47019d0c2cca10ea1a",
      "parents": [
        "43cf6b8b7894ebe747263fbe8c81e7b2f35d7b7b"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Thu Sep 25 20:12:16 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Thu Sep 25 20:12:16 2025"
      },
      "message": "Add \u0027\n\u0027 on Windows for \u0027$^\u0027\n"
    },
    {
      "commit": "43cf6b8b7894ebe747263fbe8c81e7b2f35d7b7b",
      "tree": "e1742e0e4c7dfbb1acc1d15543faae49b2c7de0e",
      "parents": [
        "d676f9eaa588af0bc7de62981c4c8ee606518af2"
      ],
      "author": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Sun Jun 29 15:53:42 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Thu Sep 25 19:56:31 2025"
      },
      "message": "Check for ninja_required_version when $^ escape is used\n"
    },
    {
      "commit": "d676f9eaa588af0bc7de62981c4c8ee606518af2",
      "tree": "bd1e5d722550659e2e8b0259444ccfaed1dcb6cf",
      "parents": [
        "47ed2d244b8c926bbf8b12bcd1e9204586fcc798"
      ],
      "author": {
        "name": "Ildus",
        "email": "ildus.kurbangaliev@actian.com",
        "time": "Thu Jun 05 08:24:46 2025"
      },
      "committer": {
        "name": "Ildus Kurbangaliev",
        "email": "i.kurbangaliev@gmail.com",
        "time": "Thu Sep 25 19:56:31 2025"
      },
      "message": "Support $^ escape sequence for newlines.\n"
    },
    {
      "commit": "47ed2d244b8c926bbf8b12bcd1e9204586fcc798",
      "tree": "4935d2b58dc162971eb569b58e91e99e79a3a5ed",
      "parents": [
        "3844671f6f0745ab798d3068fc5839444364f02d",
        "2e719411a0e8961df148bccb383890456457d137"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Tue Sep 16 20:19:06 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 16 20:19:06 2025"
      },
      "message": "Merge pull request #2661 from ninja-build/dependabot/github_actions/actions/checkout-5\n\nBump actions/checkout from 4 to 5"
    },
    {
      "commit": "2e719411a0e8961df148bccb383890456457d137",
      "tree": "4935d2b58dc162971eb569b58e91e99e79a3a5ed",
      "parents": [
        "3844671f6f0745ab798d3068fc5839444364f02d"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sun Sep 07 09:42:54 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 07 09:42:54 2025"
      },
      "message": "Bump actions/checkout from 4 to 5\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/v4...v5)\n\n---\nupdated-dependencies:\n- dependency-name: actions/checkout\n  dependency-version: \u00275\u0027\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "3844671f6f0745ab798d3068fc5839444364f02d",
      "tree": "7a6cd96a333e29a1498fa73dc62e7a5d05c01536",
      "parents": [
        "eac306c539b9739215d5fd01947889946ce8324a",
        "ef65f36d0028cf2c8f426751c3a05346b03930c4"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Sep 07 09:42:01 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Sep 07 09:42:01 2025"
      },
      "message": "Merge pull request #2668 from digit-google/github-macos-build-fix\n\nFix MacOS github builds."
    },
    {
      "commit": "ef65f36d0028cf2c8f426751c3a05346b03930c4",
      "tree": "7a6cd96a333e29a1498fa73dc62e7a5d05c01536",
      "parents": [
        "eac306c539b9739215d5fd01947889946ce8324a"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit+github@google.com",
        "time": "Sat Sep 06 17:27:33 2025"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit+github@google.com",
        "time": "Sat Sep 06 17:34:34 2025"
      },
      "message": "Fix MacOS github builds.\n\nMacOS builds are now failing at the \"Install dependencies\" step\nbecause Homebrew is now complaining that cmake is already installed\non the system. It also warns about p7zip, so remove them both from\nthe list of installed packages to resolve the problem.\n\nThe macos.yml workflow file uses the macos-13 image that was updated\nrecently. The latest succesful MacOS action on\nhttps://github.com/ninja-build/ninja [1] used release 20250818.1405,\nwhile the failing ones are using release 20250901.1455 [2].\n\nFrom the corresponding image release pages, it seems that Homebrew was\nupdated from 4.5.13 to 4.6.7 between the two, so assuming here this\nis why this started to happen.\n\n[1] https://github.com/ninja-build/ninja/actions/runs/17216151150/job/48840158004#step:1:15\n[2] https://github.com/ninja-build/ninja/actions/runs/17460573439/job/49584121159#step:1:15\n"
    },
    {
      "commit": "eac306c539b9739215d5fd01947889946ce8324a",
      "tree": "5137ee67606bc8c6d3b192d90f082bd4f401665d",
      "parents": [
        "370edd49a47379d0c3ff0c0ae9d825e627fd37c3",
        "e4dfed9e9ead69c058450fae4371f9b9f4100e02"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Aug 25 17:34:06 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Aug 25 17:34:06 2025"
      },
      "message": "Merge pull request #2654 from chwarr/manual-gnu-job-server\n\nCorrect GNU Make jobserver link"
    },
    {
      "commit": "9746811d26f6e17e14f98601f5c9927bbc45728a",
      "tree": "1980d685622901659dda674ef949bc821102acd6",
      "parents": [
        "370edd49a47379d0c3ff0c0ae9d825e627fd37c3"
      ],
      "author": {
        "name": "jyn",
        "email": "github@jyn.dev",
        "time": "Tue Aug 19 16:43:15 2025"
      },
      "committer": {
        "name": "jyn",
        "email": "github@jyn.dev",
        "time": "Tue Aug 19 16:43:15 2025"
      },
      "message": "Document some additional `-t` tool flags\n"
    },
    {
      "commit": "e4dfed9e9ead69c058450fae4371f9b9f4100e02",
      "tree": "5137ee67606bc8c6d3b192d90f082bd4f401665d",
      "parents": [
        "370edd49a47379d0c3ff0c0ae9d825e627fd37c3"
      ],
      "author": {
        "name": "Christopher Warrington",
        "email": "chwarr@microsoft.com",
        "time": "Mon Aug 18 21:18:38 2025"
      },
      "committer": {
        "name": "Christopher Warrington",
        "email": "chwarr@microsoft.com",
        "time": "Mon Aug 18 21:18:38 2025"
      },
      "message": "Correct GNU Make jobserver link\n\nIt has one too many instances of \"https://\" in it.\n"
    },
    {
      "commit": "370edd49a47379d0c3ff0c0ae9d825e627fd37c3",
      "tree": "f4bf2fab77577c9c32cb6c9b7f68eebd725bf789",
      "parents": [
        "50a5fb51e808e04a2e783ae8857b5e84d7b989bf",
        "c1b73eac553dd510703b265e559135e5af46ee6f"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sat Aug 02 08:46:16 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 02 08:46:16 2025"
      },
      "message": "Merge pull request #2631 from userdocs/linux.yml-build-with-python-update\n\nlinux.yml - build-with-python - add matrix to job"
    },
    {
      "commit": "50a5fb51e808e04a2e783ae8857b5e84d7b989bf",
      "tree": "09d4efa03757fd537fcfe3a52579220d39e1d941",
      "parents": [
        "bf84799b1586eeb53ffb86cf377ebe3a86e3a826"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Fri Aug 01 19:45:10 2025"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Fri Aug 01 19:45:10 2025"
      },
      "message": "Revert \"workflow update - concurrency to cancel outdated runs\"\n\nThis reverts commit cd8d029c36574b0361d422bf2676a305c294a34e.\n"
    },
    {
      "commit": "bf84799b1586eeb53ffb86cf377ebe3a86e3a826",
      "tree": "07666c06be6b6b6dea1456380fad1ac335e1da8c",
      "parents": [
        "c9921002f94a394622fe93a4879377574180b265",
        "9421d5c9f6a3190f68675796d88677fc1ebaae50"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jul 17 06:54:07 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 17 06:54:07 2025"
      },
      "message": "Merge pull request #2640 from mathstuf/test-deps-log-big-endian\n\ndeps_log_test: support big endian architectures"
    },
    {
      "commit": "c9921002f94a394622fe93a4879377574180b265",
      "tree": "51b9d79549b5b986f2e822556a40f0eccf64b664",
      "parents": [
        "77c9bd3877b7b2cedb23b4402820f0715312e4f3",
        "02a8d177bf8e24d962d00869197ef5b5a343634b"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jul 17 06:50:08 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 17 06:50:08 2025"
      },
      "message": "Merge pull request #2630 from userdocs/linux.yml-test-update\n\nlinux.yml - test - add matrix to job"
    },
    {
      "commit": "77c9bd3877b7b2cedb23b4402820f0715312e4f3",
      "tree": "53f1dc10687cc546d4f1968dc5d93d64b7bbc00a",
      "parents": [
        "f2baf1fba02c75d46643a7e485fb25f2d6bf399c",
        "77679f9f2c0c0e9ce50c406ae2734f8934f22e54"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jul 17 06:49:26 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 17 06:49:26 2025"
      },
      "message": "Merge pull request #2629 from userdocs/workflow-release-update\n\nreplace archived in 2021 release action for currently maintained one"
    },
    {
      "commit": "9421d5c9f6a3190f68675796d88677fc1ebaae50",
      "tree": "9f116e09c54df372d6a22a937473b58726f66abc",
      "parents": [
        "f2baf1fba02c75d46643a7e485fb25f2d6bf399c"
      ],
      "author": {
        "name": "Ben Boeckel",
        "email": "ben.boeckel@kitware.com",
        "time": "Tue Jul 15 04:09:28 2025"
      },
      "committer": {
        "name": "Ben Boeckel",
        "email": "ben.boeckel@kitware.com",
        "time": "Tue Jul 15 04:49:16 2025"
      },
      "message": "deps_log_test: support big endian architectures\n"
    },
    {
      "commit": "02a8d177bf8e24d962d00869197ef5b5a343634b",
      "tree": "d601cf21a3b937afc2b221962901b011dd712a74",
      "parents": [
        "d487f0b06cf3dd1b2964396e9d9f586d3f3684c6"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Sun Jul 13 10:37:30 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Sun Jul 13 10:37:30 2025"
      },
      "message": "Update linux.yml\n"
    },
    {
      "commit": "77679f9f2c0c0e9ce50c406ae2734f8934f22e54",
      "tree": "e26b93c6a3ad6e3dd290fbccefc8d9b95c53e2ae",
      "parents": [
        "991f34ad0a4861d79851ddf13418b1af96ac2fe3"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Sun Jul 13 10:13:41 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Sun Jul 13 10:13:41 2025"
      },
      "message": "requested: remove changes to dnf commands in linux.yml\n"
    },
    {
      "commit": "f2baf1fba02c75d46643a7e485fb25f2d6bf399c",
      "tree": "da268f3e1f11c836292bd1c9600b48ddce45da3d",
      "parents": [
        "ca46e23709cfa0113375a9dd2d78c299e62b9b87",
        "cd8d029c36574b0361d422bf2676a305c294a34e"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jul 13 09:50:59 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 13 09:50:59 2025"
      },
      "message": "Merge pull request #2632 from userdocs/workflows-concurrency\n\nworkflow update - concurrency to cancel outdated runs"
    },
    {
      "commit": "ca46e23709cfa0113375a9dd2d78c299e62b9b87",
      "tree": "88dca1d9f273762ff1f4fc07c3e282663e55a876",
      "parents": [
        "31af25000a45b4411026747e247453c219f94a85",
        "04f1d2ae1b3b743aa10c51e0911e03a70e264ada"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Fri Jul 11 14:07:24 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 11 14:07:24 2025"
      },
      "message": "Merge pull request #2635 from digit-google/cmake-set-c++14-when-building-ninja\n\nUpdate CMakeLists.txt to use C++14 too."
    },
    {
      "commit": "31af25000a45b4411026747e247453c219f94a85",
      "tree": "bedd8973239e25305129f6902df1e2224da53f4d",
      "parents": [
        "516a0ddcc468114a8e0f94857832d8fccfabca10",
        "114fb93b67b2281dd92b933f3d4180e13cd2bc7f"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jul 10 20:35:42 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 10 20:35:42 2025"
      },
      "message": "Merge pull request #2636 from jhasse/rsp-crlf\n\nConvert \\n to \\r\\n on Windows in rsp files, fix #2616"
    },
    {
      "commit": "516a0ddcc468114a8e0f94857832d8fccfabca10",
      "tree": "ee706c94674e0902e859b27cdac0ef6e46f21601",
      "parents": [
        "d60673d49e4facef8579eebeb818318c5b744b0b"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jul 10 20:32:03 2025"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Thu Jul 10 20:32:03 2025"
      },
      "message": "Add output test for multiple rules + dyndep, fix #2621\n"
    },
    {
      "commit": "04f1d2ae1b3b743aa10c51e0911e03a70e264ada",
      "tree": "51df4b6fd6f5e124a3c818097676eeebbd18954e",
      "parents": [
        "d60673d49e4facef8579eebeb818318c5b744b0b"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit+github@google.com",
        "time": "Tue Jul 01 12:48:42 2025"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit+github@google.com",
        "time": "Thu Jul 03 09:21:14 2025"
      },
      "message": "Update CMakeLists.txt to use C++14 too.\n\nIn PR #2560, configure.py was changed to force -std\u003dc++14, but this\nwas not done in the corresponding CMakeLists.txt, which still compiled\nNinja for C++11.\n\nThis PR simply fixes the situation.\n"
    },
    {
      "commit": "114fb93b67b2281dd92b933f3d4180e13cd2bc7f",
      "tree": "6a98973b5cf34fc9efa2b5640d073ee5ad0ef2db",
      "parents": [
        "d60673d49e4facef8579eebeb818318c5b744b0b"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Jul 02 17:30:44 2025"
      },
      "committer": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Jul 02 17:30:44 2025"
      },
      "message": "Convert \\n to \\r\\n on Windows in rsp files, fix #2616\n\nOther files written will still use \"wb\" as introduced in 46f272d.\n"
    },
    {
      "commit": "d60673d49e4facef8579eebeb818318c5b744b0b",
      "tree": "2b05ed740f5c7897d87aa847bab5ecae71cafae6",
      "parents": [
        "b783add490f05d9614e489530ab83e876a46c7b2",
        "9659311db4a973ea9783795eba64e8cb44689687"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Wed Jul 02 17:08:55 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 02 17:08:55 2025"
      },
      "message": "Merge pull request #2628 from userdocs/workflows-fix-triggers\n\nprevent duplicate runs being triggered when a release tag is published via webui"
    },
    {
      "commit": "cd8d029c36574b0361d422bf2676a305c294a34e",
      "tree": "be5ad35b6b64d2c946f7d5315a2b96389fca3f49",
      "parents": [
        "b783add490f05d9614e489530ab83e876a46c7b2"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Tue Jul 01 09:35:33 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Tue Jul 01 09:35:33 2025"
      },
      "message": "workflow update - concurrency to cancel outdated runs\n\ncancel old runs when new pushes are made to a pr/branch.\n"
    },
    {
      "commit": "c1b73eac553dd510703b265e559135e5af46ee6f",
      "tree": "6f3d322e737984a7a926efb3ed516ffe0cbf1981",
      "parents": [
        "b783add490f05d9614e489530ab83e876a46c7b2"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 22:09:44 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 22:09:44 2025"
      },
      "message": "linux.yml - build-with-python - add matrix to job\n\nadd matrix to this job to test on amd64/arm64 on jammy and noble LTS releases instead of only amd64 focal which is EOL.\n\nApplied two zizmor audits commented in the changes.\n"
    },
    {
      "commit": "d487f0b06cf3dd1b2964396e9d9f586d3f3684c6",
      "tree": "a57ab595f14a0d40f48dd1024d7d50079f34cc84",
      "parents": [
        "b783add490f05d9614e489530ab83e876a46c7b2"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 22:05:20 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 22:05:20 2025"
      },
      "message": "linux.yml - test - add matrix to job\n\nadd matrix to this job to test on amd64/arm64 on jammy and noble LTS releases instead of only amd64 focal which is EOL.\n\nApplied two zizmor audits commented in the changes.\n"
    },
    {
      "commit": "991f34ad0a4861d79851ddf13418b1af96ac2fe3",
      "tree": "7ed21360741aa8a0c60524b7f09457cd3b2a1756",
      "parents": [
        "b783add490f05d9614e489530ab83e876a46c7b2"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 18:59:46 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 21:48:58 2025"
      },
      "message": "replace archived in 2021 release action for currently maintained one\n\nactions/upload-release-asset is archived in 2021 but ncipollo/release-action is actively maintained a suitable drop in replacement with feature parity.\n\nIt can also be adapted to work the same when triggering aa release via a pushed  tag, should the need arise.\n\nlinux.yml only - tidied up dependency install commands.\n"
    },
    {
      "commit": "9659311db4a973ea9783795eba64e8cb44689687",
      "tree": "2b05ed740f5c7897d87aa847bab5ecae71cafae6",
      "parents": [
        "b783add490f05d9614e489530ab83e876a46c7b2"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 17:29:03 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 17:29:03 2025"
      },
      "message": "prevent duplicate runs being triggered when a release tag is published.\n\ncreating a release through the webui would trigger a non release run alongside the release run. It\u0027s not needed.\n\nThe release run fulfils alone is enough in this scenario.\n"
    },
    {
      "commit": "b783add490f05d9614e489530ab83e876a46c7b2",
      "tree": "4f8c2858a2a5d31ca5cfea3b9eb7b9792f66e89e",
      "parents": [
        "eb4cf5cd0fca344c6703b5e7dce3ddda979055c0",
        "70b06c6385f40cf48d43b5dceec7e983a4434c16"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Jun 30 16:58:39 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 30 16:58:39 2025"
      },
      "message": "Merge pull request #2627 from userdocs/linux.yml-build\n\nadd aarch64 matrix to linux.yml build job using rockylinux 8 container"
    },
    {
      "commit": "70b06c6385f40cf48d43b5dceec7e983a4434c16",
      "tree": "4f8c2858a2a5d31ca5cfea3b9eb7b9792f66e89e",
      "parents": [
        "eb4cf5cd0fca344c6703b5e7dce3ddda979055c0"
      ],
      "author": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 16:02:25 2025"
      },
      "committer": {
        "name": "userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Mon Jun 30 16:02:25 2025"
      },
      "message": "add aarch64 matrix to build job using rockylinux 8 container\n\ninstead of a separate arm64 and arm64 builds jobs, turn build job into a matrix and remove the build-aarch64\n"
    },
    {
      "commit": "eb4cf5cd0fca344c6703b5e7dce3ddda979055c0",
      "tree": "d55187cc9fe258b9709c495b02a0a46200cce833",
      "parents": [
        "7226ee18143925cfc785b9932bda05a54b134531",
        "56b33bbe25603486ea71e599d23e5c9ac278e7f3"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Mon Jun 30 15:21:38 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 30 15:21:38 2025"
      },
      "message": "Merge pull request #2625 from Felixoid/fix-planer-bug\n\nAddress the regression after propagating exit codes"
    },
    {
      "commit": "56b33bbe25603486ea71e599d23e5c9ac278e7f3",
      "tree": "d55187cc9fe258b9709c495b02a0a46200cce833",
      "parents": [
        "cbecfaffb4daf660869894c29d67d87f02de842b"
      ],
      "author": {
        "name": "Mikhail f. Shiryaev",
        "email": "mr.felixoid@gmail.com",
        "time": "Sun Jun 29 18:26:28 2025"
      },
      "committer": {
        "name": "Mikhail f. Shiryaev",
        "email": "mr.felixoid@gmail.com",
        "time": "Sun Jun 29 18:31:55 2025"
      },
      "message": "Fix exit code for unset result.status\n\nThe Builder.FinishCommand does not always set a proper result.status,\nwhich causing Builder.Build to return false ExitSuccess.\n"
    },
    {
      "commit": "cbecfaffb4daf660869894c29d67d87f02de842b",
      "tree": "7a3ba74c0b4e55425538934a4b3b2f8791626fe9",
      "parents": [
        "7226ee18143925cfc785b9932bda05a54b134531"
      ],
      "author": {
        "name": "Mikhail f. Shiryaev",
        "email": "mr.felixoid@gmail.com",
        "time": "Sun Jun 29 18:25:22 2025"
      },
      "committer": {
        "name": "Mikhail f. Shiryaev",
        "email": "mr.felixoid@gmail.com",
        "time": "Sun Jun 29 18:25:49 2025"
      },
      "message": "Fix tests to reflect the new Builder.Build\n"
    },
    {
      "commit": "7226ee18143925cfc785b9932bda05a54b134531",
      "tree": "74f765fc93c332fad8d084964240092f4cb56e12",
      "parents": [
        "3890808c19bd758d263aae0d11ff3b6873a44337",
        "56bfd79728048fd636fce191c8302e2a45b13d24"
      ],
      "author": {
        "name": "Jan Niklas Hasse",
        "email": "jhasse@bixense.com",
        "time": "Sun Jun 29 16:00:37 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 29 16:00:37 2025"
      },
      "message": "Merge pull request #2604 from userdocs/master\n\nUpdate to GTest 1.16, latest version to support C++14"
    },
    {
      "commit": "56bfd79728048fd636fce191c8302e2a45b13d24",
      "tree": "74f765fc93c332fad8d084964240092f4cb56e12",
      "parents": [
        "04175820f423bf88387678bebd89d0041a727ff0",
        "3890808c19bd758d263aae0d11ff3b6873a44337"
      ],
      "author": {
        "name": "Userdocs",
        "email": "16525024+userdocs@users.noreply.github.com",
        "time": "Sun Jun 29 12:54:46 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 29 12:54:46 2025"
      },
      "message": "Merge branch \u0027ninja-build:master\u0027 into master\n"
    }
  ],
  "next": "3890808c19bd758d263aae0d11ff3b6873a44337"
}
