)]}'
{
  "log": [
    {
      "commit": "f573d2046ec82a3b856bbf5192650b02173976ef",
      "tree": "88adbc58abcf79198d469ea28730eb1ac76846bf",
      "parents": [
        "db9a442488c8eefbeacb235d71f18cc3842aba12"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 13 17:19:35 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 13 17:19:35 2026 +0000"
      },
      "message": "Ignore missing links\n"
    },
    {
      "commit": "db9a442488c8eefbeacb235d71f18cc3842aba12",
      "tree": "de6374d18fb2506f4a0598d27d40491465dec3d0",
      "parents": [
        "130635980987d2e9017c364921e5ec87b5cfb4d5"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 13 15:30:28 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 13 15:30:28 2026 +0000"
      },
      "message": "Syntax error\n"
    },
    {
      "commit": "130635980987d2e9017c364921e5ec87b5cfb4d5",
      "tree": "506fb345cd6dd919519f42dca89179f39070a1d8",
      "parents": [
        "4e421c754de0d951d2989135eb92615d5214a4c0"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Nov 12 23:30:35 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Nov 12 23:30:35 2026 +0000"
      },
      "message": "Allow for non-ASCII mail headers\n"
    },
    {
      "commit": "4e421c754de0d951d2989135eb92615d5214a4c0",
      "tree": "df2a5e1af247f8d190e1b1d26f1fbdb06db1ab29",
      "parents": [
        "a573e15f0756ae777b77862f7e48ddc64bd91ce0"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 23:08:34 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 23:08:34 2026 +0000"
      },
      "message": "Add missing charset parameter\n"
    },
    {
      "commit": "a573e15f0756ae777b77862f7e48ddc64bd91ce0",
      "tree": "081c5808ba821c7266eb678cc0a94f1fbb8b1a71",
      "parents": [
        "f7363b11ad4208f95f181d38f83601d692a70c0c"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 22:14:01 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 22:14:01 2026 +0000"
      },
      "message": "Broken and unused [skip ci]\n"
    },
    {
      "commit": "f7363b11ad4208f95f181d38f83601d692a70c0c",
      "tree": "101b315b3b8bef5ce63d1dbccc3d50db2e2f910f",
      "parents": [
        "64c744f3e6475784d87e18ba1cf43d8e63537e36"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 21:43:22 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 21:43:22 2026 +0000"
      },
      "message": "FIxups for recent changes [skip ci]\n"
    },
    {
      "commit": "64c744f3e6475784d87e18ba1cf43d8e63537e36",
      "tree": "2bd2a63bbdc9ca466a2f251dff2a71f431ccadeb",
      "parents": [
        "d18e149c38baf3e5182c4f13351e407f5887a03d"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 20:08:32 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 20:08:32 2026 +0000"
      },
      "message": "Allow for different message [skip ci]\n"
    },
    {
      "commit": "d18e149c38baf3e5182c4f13351e407f5887a03d",
      "tree": "dbbdc427f483ca80dac4fcad8d6f423931dbadbf",
      "parents": [
        "d87ac806b42c0cdafb9df92a72cc51ebf03e380b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Wed Nov 11 18:42:47 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 11 18:42:47 2026 +0000"
      },
      "message": "Update CI to use ubuntu-latest instead of ubuntu-slim\n\nProblems with setup on ubuntu-slim"
    },
    {
      "commit": "d87ac806b42c0cdafb9df92a72cc51ebf03e380b",
      "tree": "804f0eb9736707a76f07e586c94e110351c2d5ce",
      "parents": [
        "2d3dc05d5fbbeaea9d28ab93028d5fc6610ac190"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 15:34:52 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 15:34:52 2026 +0000"
      },
      "message": "Reduce CI load [skip ci]\n"
    },
    {
      "commit": "2d3dc05d5fbbeaea9d28ab93028d5fc6610ac190",
      "tree": "6eb4d3eda63674b261050074537bf3cfd442274f",
      "parents": [
        "743f892144d4de37990404262e2d13efc7234cb3"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 15:32:51 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 15:32:51 2026 +0000"
      },
      "message": "Reduce CI load\n"
    },
    {
      "commit": "743f892144d4de37990404262e2d13efc7234cb3",
      "tree": "5f67f98c485194392087417ce5b552bde0529e22",
      "parents": [
        "ec3c652e604c6c376ddce38cd7424bc3cb252774"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 14:33:14 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 14:33:14 2026 +0000"
      },
      "message": "Fix up check\n"
    },
    {
      "commit": "ec3c652e604c6c376ddce38cd7424bc3cb252774",
      "tree": "4f8a0d1320eb601e84303e43b01ef098184a1ed5",
      "parents": [
        "16b5e4fb2fb125657a0686afbfe157f9674948ef"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 14:22:16 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 14:22:16 2026 +0000"
      },
      "message": "Allow for dropped repository entry\n"
    },
    {
      "commit": "16b5e4fb2fb125657a0686afbfe157f9674948ef",
      "tree": "ec7be3c840823445895709da87361a0e4f2ee2b8",
      "parents": [
        "7fe020916ef3ebb9c3e7fc2f4cef9cec01f96415"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 12:18:52 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Nov 11 12:18:52 2026 +0000"
      },
      "message": "docket.json is obsolete\n\nThis fixes PR #335\n"
    },
    {
      "commit": "7fe020916ef3ebb9c3e7fc2f4cef9cec01f96415",
      "tree": "f828e254d0f27d9f094efb026753a4b5a0c3394b",
      "parents": [
        "164178db73ce2450023625c38b8e6aabc0372fac"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Nov 09 23:42:54 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Nov 09 23:42:54 2026 +0000"
      },
      "message": "No longer needed\n"
    },
    {
      "commit": "164178db73ce2450023625c38b8e6aabc0372fac",
      "tree": "329b40657dbc7394359b42c6f9574aa5ac0d772a",
      "parents": [
        "76d829c5606dd96a649f83b981dadef4a3e86535"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Nov 09 23:35:10 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Nov 09 23:35:10 2026 +0000"
      },
      "message": "Not deployed; see project-icla branch for code\n"
    },
    {
      "commit": "76d829c5606dd96a649f83b981dadef4a3e86535",
      "tree": "80e2bbe9cb1f4c6eb63bac5c3a1c7c87a0a00f1c",
      "parents": [
        "9085f45febdcb25e29a49bd465d9079788db331d"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:23:55 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:23:55 2026 +0000"
      },
      "message": "Delete www/treasurer directory (#334)\n\n* Delete www/treasurer directory\n\nThis functionality is not used\n\n* Remove Treasurer\u0027s Bill Upload Helper link\n\nRemoved the Treasurer\u0027s Bill Upload Helper link from the index."
    },
    {
      "commit": "9085f45febdcb25e29a49bd465d9079788db331d",
      "tree": "7a15188cd92abab7917b7002945022de50cb8c1a",
      "parents": [
        "aeaa2aa12a0c20de889ca879da49e1fb19549e27"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:22:59 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:22:59 2026 +0000"
      },
      "message": "Delete www/project/icla2 directory (#333)\n\nIncomplete demo"
    },
    {
      "commit": "aeaa2aa12a0c20de889ca879da49e1fb19549e27",
      "tree": "3c61df9b19821d4755dec1ff13432ca698f3d2c9",
      "parents": [
        "798cbd5012b69fc59851b3d93e5fe39fbb3fb0e7"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:17:43 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:17:43 2026 +0000"
      },
      "message": "Delete www/committers/tm-report.cgi (#332)\n\nUnused beta functionality"
    },
    {
      "commit": "798cbd5012b69fc59851b3d93e5fe39fbb3fb0e7",
      "tree": "6df42611a493d9979917f0cf9c103f6361b48817",
      "parents": [
        "d2938ca613f20a18788a046df6fbc5050a0eff5d"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:16:04 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:16:04 2026 +0000"
      },
      "message": "Delete www/members/proxy_test.cgi (#331)"
    },
    {
      "commit": "d2938ca613f20a18788a046df6fbc5050a0eff5d",
      "tree": "ae0921793d81c3f9d96198085d64e4624b44a9fc",
      "parents": [
        "f86363b3d6ea62f3a16896c48ccd7c395d48400a"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:13:37 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:13:37 2026 +0000"
      },
      "message": "Delete www/test/vhost-generator.cgi (#330)"
    },
    {
      "commit": "f86363b3d6ea62f3a16896c48ccd7c395d48400a",
      "tree": "6825d578a50a97d563780618ae703bc8d5368cbf",
      "parents": [
        "92186fefb3daa177ec03b1c67327dd337d29894b"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:11:39 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:11:39 2026 +0000"
      },
      "message": "Delete www/committers/config_info.cgi (#329)"
    },
    {
      "commit": "92186fefb3daa177ec03b1c67327dd337d29894b",
      "tree": "a1f7df6d31d494798c79693fdda9e1994ca68b0a",
      "parents": [
        "ec41a160c4a6d582ed5f820ca153c376b0d7a4eb"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Mon Nov 09 15:06:42 2026 -0800"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 09 23:06:42 2026 +0000"
      },
      "message": "Delete debugging \u0027/env\u0027 route (#328)\n\nRemoved debugging endpoint for environment information."
    },
    {
      "commit": "ec41a160c4a6d582ed5f820ca153c376b0d7a4eb",
      "tree": "70ae372edf151bbca1bc5dc772e366c92e5285e2",
      "parents": [
        "a90518a5262bed2b938782464c161e97e1aeaa22"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Nov 07 12:32:21 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Nov 07 12:32:21 2026 +0000"
      },
      "message": "Generate unsubscribe address\n"
    },
    {
      "commit": "a90518a5262bed2b938782464c161e97e1aeaa22",
      "tree": "81eb3959e82359c00143b442f6c5f56a158d9e8a",
      "parents": [
        "f9c065ec193ccd89e0003d6edc948feca5adcb88"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 06 21:54:31 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 06 21:54:31 2026 +0000"
      },
      "message": "We only want the filename here\n"
    },
    {
      "commit": "f9c065ec193ccd89e0003d6edc948feca5adcb88",
      "tree": "e11a5142692d41b2dafb5e292df1c7ec6a446622",
      "parents": [
        "296c9b7eebaccc19f82f5bd4f91b85a87af8d908"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 06 21:44:28 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Nov 06 21:44:28 2026 +0000"
      },
      "message": "Run the mail server - no need for separate terminal\n"
    },
    {
      "commit": "296c9b7eebaccc19f82f5bd4f91b85a87af8d908",
      "tree": "6e192fb313f23b8b72f97bb68f49e50e88174ce1",
      "parents": [
        "003b5cca851121dff6bd6f8b7ae034f4352e9939"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Nov 03 23:45:27 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Nov 03 23:45:27 2026 +0000"
      },
      "message": "Skip some href parse errors\n"
    },
    {
      "commit": "003b5cca851121dff6bd6f8b7ae034f4352e9939",
      "tree": "f264b288de4845b5cff40f920a236b955a526430",
      "parents": [
        "a4da8c10d21662c0ae4f23c08a6d6877cc2b91c2"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Nov 03 21:10:31 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Nov 03 21:10:31 2026 +0000"
      },
      "message": "Ruby 3 now used\n"
    },
    {
      "commit": "a4da8c10d21662c0ae4f23c08a6d6877cc2b91c2",
      "tree": "7839ea1cdca3eebb2478f262ab1b24daf17c9065",
      "parents": [
        "a65059443bbcd244ca8aed71833f4c0fec1697d4"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Oct 14 21:39:57 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Oct 14 21:39:57 2026 +0100"
      },
      "message": "Ensure counts agree\n"
    },
    {
      "commit": "a65059443bbcd244ca8aed71833f4c0fec1697d4",
      "tree": "2cc8911a24b31a53f9c29675d3ba85ffccbd9a14",
      "parents": [
        "723f3849ae5504fdb44280f299746bb1a4f80d3f"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Oct 15 00:45:03 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 14 15:45:03 2026 +0100"
      },
      "message": "Add pre-commit hook gitleaks secret scanner (#317)\n\nGitleaks is a tool for detecting secrets like passwords, API keys, and tokens in git repos, files, and whatever else you wanna throw at it via stdin.\n\nhttps://github.com/gitleaks/gitleaks#pre-commit\n\nhttps://gitleaks.io"
    },
    {
      "commit": "723f3849ae5504fdb44280f299746bb1a4f80d3f",
      "tree": "f3b7a748b1d793bb23f6f78bc65f3decb25d000a",
      "parents": [
        "3d6b2843b7b47ce59795239d05598f96ad6f1615"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Oct 15 00:26:41 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 14 15:26:41 2026 +0100"
      },
      "message": "[CI] Pin pre-commit hooks to SHA for security (#327)"
    },
    {
      "commit": "3d6b2843b7b47ce59795239d05598f96ad6f1615",
      "tree": "315ef98a261d65d278f789882fc8a7bf86010408",
      "parents": [
        "ed90fa60b8540bb868ac275ff118232d71b1ede3"
      ],
      "author": {
        "name": "Lari Hotari",
        "email": "lhotari@users.noreply.github.com",
        "time": "Wed Oct 14 03:17:05 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 14 11:17:05 2026 +0100"
      },
      "message": "Fix duplicate role key in committee roster JSON (#326)\n\nThe roster entries use a symbol :role key, but the chair role was set\nwith a string \u0027role\u0027 key. This produced a hash with both keys, and newer\nversions of the json gem reject it with \"detected duplicate key\", which\nmakes /roster/committee/\u003cname\u003e.json fail with HTTP 500.\n\nAssisted-by: Claude Code (claude-opus-5-5)"
    },
    {
      "commit": "ed90fa60b8540bb868ac275ff118232d71b1ede3",
      "tree": "3fecba1f7abc61952467757d2e53dac4028a0c75",
      "parents": [
        "f8b4a00593d674b73c2034d16dc11dfc615cc264"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Sep 30 16:45:06 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Sep 30 16:45:06 2026 +0100"
      },
      "message": "Handle merged projects\n"
    },
    {
      "commit": "f8b4a00593d674b73c2034d16dc11dfc615cc264",
      "tree": "91b688c125febb00eece5b90c736392d4e477706",
      "parents": [
        "71b993d88ddac95ff0e5c1d8b7bf1430dc2be521"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Sep 25 10:38:22 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Sep 25 10:38:22 2026 +0100"
      },
      "message": "Finish removing Petri references\n"
    },
    {
      "commit": "71b993d88ddac95ff0e5c1d8b7bf1430dc2be521",
      "tree": "5deb700bc36e17011e09f1ed58fa4bf008be9f01",
      "parents": [
        "1b4deb03bfec556730d6207295407aefc546f10d"
      ],
      "author": {
        "name": "Craig L Russell",
        "email": "apache.clr@gmail.com",
        "time": "Thu Sep 17 03:27:21 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Sep 17 11:27:21 2026 +0100"
      },
      "message": "Change postal to residence to agree with ICLA form (#323)\n\n* Update incomplete.json.rb\n\nChange postal to residence to agree with ICLA form\n\n* Update parts.js.rb"
    },
    {
      "commit": "1b4deb03bfec556730d6207295407aefc546f10d",
      "tree": "29f480a9da5b4f0ec33503ac73b8387a0e50ca36",
      "parents": [
        "664a93bfaa8f29586c9b9bb6b97755a15ebc74d1"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Sep 16 23:47:05 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Sep 16 23:47:05 2026 +0100"
      },
      "message": "Encoding is not a valid parse option\n"
    },
    {
      "commit": "664a93bfaa8f29586c9b9bb6b97755a15ebc74d1",
      "tree": "1bdccb7948aeac7ea5fb39687c6f32c5cda9eebc",
      "parents": [
        "20205f05fabff034ce28ec9341c8f2e699a9dcbc"
      ],
      "author": {
        "name": "Craig L Russell",
        "email": "apache.clr@gmail.com",
        "time": "Mon Sep 14 16:51:03 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 14 16:51:03 2026 -0700"
      },
      "message": "Update parts.js.rb (#322)\n\n* Update parts.js.rb\n\nExhibit A from SGA is missing\n\n* Update incomplete.json.rb"
    },
    {
      "commit": "20205f05fabff034ce28ec9341c8f2e699a9dcbc",
      "tree": "46a783c417b3ffe3abadd1f0bd288a44ae09c729",
      "parents": [
        "29bd0b90314d3337cd4ad826c4dc2117ef7a14e2"
      ],
      "author": {
        "name": "Craig L Russell",
        "email": "apache.clr@gmail.com",
        "time": "Mon Sep 14 15:44:06 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 14 23:44:06 2026 +0100"
      },
      "message": "Add undated document as a reject reason"
    },
    {
      "commit": "29bd0b90314d3337cd4ad826c4dc2117ef7a14e2",
      "tree": "39cc5422d9e4c02bca1d6751be4102bff42d1a1a",
      "parents": [
        "537f0d87eaebbf72d20e894daa47f9de1604f9dd"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Sep 06 11:17:24 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Sep 06 11:17:24 2026 +0100"
      },
      "message": "Role was renamed a while back\n"
    },
    {
      "commit": "537f0d87eaebbf72d20e894daa47f9de1604f9dd",
      "tree": "9e44adf0eb110de2c55faadc9ae9285ab73efcb3",
      "parents": [
        "7a41ebdb8190aa7f1cf94a458d1bdb14aeda4be7"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 18 12:23:54 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 18 12:23:54 2026 +0100"
      },
      "message": "Allow for missing Apache prefix\n"
    },
    {
      "commit": "7a41ebdb8190aa7f1cf94a458d1bdb14aeda4be7",
      "tree": "5230505af72594702d0af98a86d6a90d7e50a139",
      "parents": [
        "f2983f3abfb81b2d2bfd8fd32e1bb967528ce049"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Aug 14 22:45:03 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Aug 14 22:45:03 2026 +0100"
      },
      "message": "Copy-paste error\n"
    },
    {
      "commit": "f2983f3abfb81b2d2bfd8fd32e1bb967528ce049",
      "tree": "cfb8bf1915dfde1242c3862d5f1a0dccab0882a9",
      "parents": [
        "512075b58e259e0aa6f069fda6ab7502ee9e0477"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Aug 13 15:24:38 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Aug 13 15:24:38 2026 +0100"
      },
      "message": "Update list of valid ASF hosts\n"
    },
    {
      "commit": "512075b58e259e0aa6f069fda6ab7502ee9e0477",
      "tree": "5b1d2ba68943e2712737963e9f98188d43bda846",
      "parents": [
        "94dde12d706debb05e864dc61f04c898be3ff66b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Aug 13 14:54:28 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Aug 13 14:54:28 2026 +0100"
      },
      "message": "Only for use with ASF hosts\n"
    },
    {
      "commit": "94dde12d706debb05e864dc61f04c898be3ff66b",
      "tree": "d9f092a59d5217cd2bb0702dcc18b1bbc759af6a",
      "parents": [
        "ec780e278e05c726bc193164e4e0f1c2356c0bcf"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Aug 12 21:47:17 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Aug 12 21:47:17 2026 +0100"
      },
      "message": "Fix up Git base URL (original no longer works)\n\nNote: there are no Git entries in repository.yml currently\nEnsure the code works if one is added.\n"
    },
    {
      "commit": "ec780e278e05c726bc193164e4e0f1c2356c0bcf",
      "tree": "70a5596325b11a3e7f0282cf168c256e38917155",
      "parents": [
        "e0069715c91f80f502ca27b919eb1a6a2dfb47ef"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 17:43:51 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 17:43:51 2026 +0100"
      },
      "message": "Only useful for ASF pages\n"
    },
    {
      "commit": "e0069715c91f80f502ca27b919eb1a6a2dfb47ef",
      "tree": "0e919c74d097b104589f7abfafa8ab655e462025",
      "parents": [
        "0f38598818567fd8afe37327fb0431cc4dde9faa"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 17:21:38 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 17:21:38 2026 +0100"
      },
      "message": "Only useful for ASF pages\n"
    },
    {
      "commit": "0f38598818567fd8afe37327fb0431cc4dde9faa",
      "tree": "d517f5d92a0c0444590768344be24c0d5d89f69a",
      "parents": [
        "b3e9ac1955ffa9b389b6bf78de5e5c95f082f1ca"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 17:19:22 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 17:19:22 2026 +0100"
      },
      "message": "No longer relevant\n"
    },
    {
      "commit": "b3e9ac1955ffa9b389b6bf78de5e5c95f082f1ca",
      "tree": "172304cb8b0dc8bdd7b18be4d41add00a8c559dc",
      "parents": [
        "2b3969bc2e9c8e844957e79b6c082e82dca41a39"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 15:20:24 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 15:20:24 2026 +0100"
      },
      "message": "No need to involve shell here\n"
    },
    {
      "commit": "2b3969bc2e9c8e844957e79b6c082e82dca41a39",
      "tree": "ce427a01d75d1f59575c89f95525a1608c83b721",
      "parents": [
        "945d4ba5765de88786a2ce33faf6ee26a0fc8f63"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 15:06:25 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 15:06:25 2026 +0100"
      },
      "message": "Simplify; only fetch values once\n"
    },
    {
      "commit": "945d4ba5765de88786a2ce33faf6ee26a0fc8f63",
      "tree": "419b5835d7a27b7dc48a2036935d3140b2e8106a",
      "parents": [
        "f56162a208ee056beca335d588303051c76ddaa9"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 15:05:03 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Aug 11 15:05:03 2026 +0100"
      },
      "message": "Fail fast if name has impossible value\n"
    },
    {
      "commit": "f56162a208ee056beca335d588303051c76ddaa9",
      "tree": "c9dc16417e94ac6d70d7f651322675b16880310e",
      "parents": [
        "7bf1f0107dba0aef5950f22e3d8672361ba89c1f"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sat Aug 08 22:10:16 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 08 22:10:16 2026 +0100"
      },
      "message": "Update prek-action version to v3.0.0\n\nPrevious version expired ..."
    },
    {
      "commit": "7bf1f0107dba0aef5950f22e3d8672361ba89c1f",
      "tree": "30a6fe8fb271ed3f7974c712f4ae5eed5e67f437",
      "parents": [
        "eab40e05018fffb0ba1c2d831c204ad7bb8d2d6c"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Aug 08 21:31:16 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Aug 08 21:31:16 2026 +0100"
      },
      "message": "Simplify pattern matching\n"
    },
    {
      "commit": "eab40e05018fffb0ba1c2d831c204ad7bb8d2d6c",
      "tree": "63d690d4d56e0d0cdafa26dbb26c25b902a19b03",
      "parents": [
        "2b6bdc5146ce4b160b35013de7effe0c9c9b34c5"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 29 13:49:26 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 29 13:49:26 2026 +0100"
      },
      "message": "Drop Petri references\n"
    },
    {
      "commit": "2b6bdc5146ce4b160b35013de7effe0c9c9b34c5",
      "tree": "2736475a41deb3f8f0a1d8445a0cb29fde5c2d6b",
      "parents": [
        "588ebcb8d4c355069a2a11c1499f0e8876212ab8"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 29 11:59:53 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 29 11:59:53 2026 +0100"
      },
      "message": "Add PMC size for comparison\n"
    },
    {
      "commit": "588ebcb8d4c355069a2a11c1499f0e8876212ab8",
      "tree": "ddca0c96c37506e04db735b3cd229b2e1de1484a",
      "parents": [
        "50e24a8d8e25daec09746d0894f7674bd19cff9d"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 26 16:44:42 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 26 16:44:42 2026 +0100"
      },
      "message": "Flag methods for eventual removal\n"
    },
    {
      "commit": "50e24a8d8e25daec09746d0894f7674bd19cff9d",
      "tree": "92050974d79878c513a8e4135dc343235b5573df",
      "parents": [
        "63867411a4469ef5e58223ea8b0023a319f23e3f"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 26 16:26:51 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 26 16:26:51 2026 +0100"
      },
      "message": "Include established_date if present\n"
    },
    {
      "commit": "63867411a4469ef5e58223ea8b0023a319f23e3f",
      "tree": "7ed1b5049fca489d26da0d86ddc9745748f949cd",
      "parents": [
        "61db159ca0735642774b9a5d79d2d275ec2d4b00"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 26 13:48:40 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 26 13:48:40 2026 +0100"
      },
      "message": "Include established date\n"
    },
    {
      "commit": "61db159ca0735642774b9a5d79d2d275ec2d4b00",
      "tree": "07631aafd7312d2f4004d79985a85879dffe20ae",
      "parents": [
        "00fb0eda5c44b39be8faa79eabfb21bf896892c6"
      ],
      "author": {
        "name": "Craig L Russell",
        "email": "apache.clr@gmail.com",
        "time": "Fri Jul 17 15:59:11 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 17 15:59:11 2026 -0700"
      },
      "message": "Update pubkey.erb\n\nRemove print, sign, scan from public key message to user"
    },
    {
      "commit": "00fb0eda5c44b39be8faa79eabfb21bf896892c6",
      "tree": "7c101f208f3aec2cdd94f6ce9cd874329eaa1605",
      "parents": [
        "e7ba72770c4e56732114bdde5dcd3a9208423d3f"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Jul 16 15:15:59 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Jul 16 15:15:59 2026 +0100"
      },
      "message": "Trailin spaces\n"
    },
    {
      "commit": "e7ba72770c4e56732114bdde5dcd3a9208423d3f",
      "tree": "bc48878bb95848727565c275f6700b28929d8f60",
      "parents": [
        "cbbe6813f375eedce96287b591f1724ca56cfc9d"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Jul 16 15:07:28 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Jul 16 15:07:28 2026 +0100"
      },
      "message": "Surface Org Chart\n"
    },
    {
      "commit": "cbbe6813f375eedce96287b591f1724ca56cfc9d",
      "tree": "4768b25b28180e023b016854737e7e2cae81f621",
      "parents": [
        "fa5a87bc00697ef90b1b44b91bdc5073abeb6bb9"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Jun 15 22:16:50 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Jun 15 22:16:50 2026 +0100"
      },
      "message": "Allow for non-standard LDAP project names\n"
    },
    {
      "commit": "fa5a87bc00697ef90b1b44b91bdc5073abeb6bb9",
      "tree": "d935708676837aecf8ac1fc9fef421f694cc629b",
      "parents": [
        "56e23e1711141939d90239237b64bd561bd71193"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 23:56:12 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 14:56:12 2026 +0100"
      },
      "message": "misc: order the `.gitignore` file (#311)\n\nRan: file -\u003e sort -\u003e uniq"
    },
    {
      "commit": "56e23e1711141939d90239237b64bd561bd71193",
      "tree": "001fc57d23f0e27ea10246539f1124089faabf57",
      "parents": [
        "129015bacf382bc496fe0abd0b5e88d52166c59b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Tue Jun 09 22:48:55 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 22:48:55 2026 +0100"
      },
      "message": "Update links in DEVELOPMENT.md for server changes\n\nThis fixes #315"
    },
    {
      "commit": "129015bacf382bc496fe0abd0b5e88d52166c59b",
      "tree": "dddb9a7a32ec4505a14c0131f1bdc691baa38d0a",
      "parents": [
        "4ca2acd1d6b798fe1d110e5d3d839c8c7a181316"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 10 07:40:55 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 22:40:55 2026 +0100"
      },
      "message": "Add 3 more official pre-commit hooks (#316)\n\nhttps://github.com/pre-commit/pre-commit-hooks"
    },
    {
      "commit": "4ca2acd1d6b798fe1d110e5d3d839c8c7a181316",
      "tree": "7fef96ca2322fb2092ad70ed41e43f882949a032",
      "parents": [
        "a8eb3a3b734a88b760544f76340a5b4b63957bf4"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 10 02:52:55 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 17:52:55 2026 +0100"
      },
      "message": "pre-commit configure end of file fixer more file types (#314)"
    },
    {
      "commit": "a8eb3a3b734a88b760544f76340a5b4b63957bf4",
      "tree": "5ad1b52867f8ccf703c58dba56f86728d384ba41",
      "parents": [
        "185d1aed7000c6fba5a3daced1af556bbbc267b5"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Tue Jun 09 17:29:55 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 17:29:55 2026 +0100"
      },
      "message": "Add Python files to pre-commit config file types"
    },
    {
      "commit": "185d1aed7000c6fba5a3daced1af556bbbc267b5",
      "tree": "71e7051595442fda1c48495c2ca870fc73c38ea2",
      "parents": [
        "9691755374b53915efb2eb35672212dc64cea053"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 10 02:28:38 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 17:28:38 2026 +0100"
      },
      "message": "pre-commit add end-of-file-fixer hook for cgi,rb,yaml (#313)\n\nhttps://github.com/pre-commit/pre-commit-hooks#end-of-file-fixer"
    },
    {
      "commit": "9691755374b53915efb2eb35672212dc64cea053",
      "tree": "222c9fd80d81d106ea7817bdacd50c9cc2eb007e",
      "parents": [
        "f34410e929365b06d337d6ef8a89890fbc5bf3d5"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 10 02:27:16 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 17:27:16 2026 +0100"
      },
      "message": "pre-commit configure trailing whitespace hook for more file types (#312)"
    },
    {
      "commit": "f34410e929365b06d337d6ef8a89890fbc5bf3d5",
      "tree": "a9aa1d09ef6cec336ad94ce3bb1a2293d2f0df5a",
      "parents": [
        "ed90e8f50a5d62f64da74e31bb82b03a6321f05e"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 09 08:28:08 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 23:28:08 2026 +0100"
      },
      "message": "`.asf.yaml`: use a better repo description (#310)"
    },
    {
      "commit": "ed90e8f50a5d62f64da74e31bb82b03a6321f05e",
      "tree": "b0138fb22fe480d6428f2c6fcaed0c11878226e2",
      "parents": [
        "bc5a265266f32d2eaac3a8a5bfcbe3f6a1f3108d"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 09 08:26:34 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 23:26:34 2026 +0100"
      },
      "message": "Add pre-commit hook fix-byte-order-marker (#303)"
    },
    {
      "commit": "bc5a265266f32d2eaac3a8a5bfcbe3f6a1f3108d",
      "tree": "3e9cf4d4f5cb41dff89e8684972dfd001a982c00",
      "parents": [
        "08cc45db49ceafd94849917ce4f73dde23739fb5"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 09 02:41:48 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 17:41:48 2026 +0100"
      },
      "message": "[CI] Pin remaining actions to sha (#309)"
    },
    {
      "commit": "08cc45db49ceafd94849917ce4f73dde23739fb5",
      "tree": "519ac7fb965449deb718a4c86a4a46db224e927a",
      "parents": [
        "1ae87befbf7a494ea6a8c941a5a409f3da827b99"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jun 03 11:46:13 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jun 03 11:46:13 2026 +0100"
      },
      "message": "Ensure Name is shown in diffs, even if it has not changed\n"
    },
    {
      "commit": "1ae87befbf7a494ea6a8c941a5a409f3da827b99",
      "tree": "fd680e03b62d0dd470beedc69a2fbdad7af02b35",
      "parents": [
        "be51b6ae40ca546b52d37139915d2ac3a2d4bf31"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Jun 02 16:18:12 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Jun 02 16:18:12 2026 +0100"
      },
      "message": "Show who last updated the group\n"
    },
    {
      "commit": "be51b6ae40ca546b52d37139915d2ac3a2d4bf31",
      "tree": "0ba10fdf0e7d719a3cb737d8cf6568605c61ebc0",
      "parents": [
        "a1149796df78954961cbb09c9f258f7a88eccf6d"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Jun 02 13:11:48 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Jun 02 13:11:48 2026 +0100"
      },
      "message": "Ignore email local part case differences\n"
    },
    {
      "commit": "a1149796df78954961cbb09c9f258f7a88eccf6d",
      "tree": "d104861fa1c117208ca71cc8c67f7a44b1bb7269",
      "parents": [
        "f17816b31c1224fe8cf176229a22a77156895349"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu May 21 00:33:16 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 20 16:33:16 2026 +0200"
      },
      "message": "pre-commit trailing-whitespace check more file types (#302)"
    },
    {
      "commit": "f17816b31c1224fe8cf176229a22a77156895349",
      "tree": "f80005645df3aa7ec901a86f49d40f5c82673cba",
      "parents": [
        "27733e217dc081915542ace2c08b64833862daa1"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu May 21 00:30:08 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 20 16:30:08 2026 +0200"
      },
      "message": "Switch pre-commit to ASF approved prek-action (#307)"
    },
    {
      "commit": "27733e217dc081915542ace2c08b64833862daa1",
      "tree": "da50febf247e1e7043b364682f9d52faa3d5d96b",
      "parents": [
        "20b9d4270121f01ae44a3e1b8984494739f62d7a"
      ],
      "author": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Sat May 16 10:18:13 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat May 16 17:18:13 2026 +0200"
      },
      "message": "Set up default protection ruleset for default and release branches (#306)"
    },
    {
      "commit": "20b9d4270121f01ae44a3e1b8984494739f62d7a",
      "tree": "ac6eed3e9b0d9b51409343f558a04743d2b9779e",
      "parents": [
        "55483e45110ab40ce76531b50d099c4838ad2ff6"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Apr 29 20:08:31 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Apr 29 20:08:31 2026 +0100"
      },
      "message": "Ensure either vote link and/or comments present\n"
    },
    {
      "commit": "55483e45110ab40ce76531b50d099c4838ad2ff6",
      "tree": "4554f992fa93f2bae5b5af7f628c5b049c77e4e9",
      "parents": [
        "efa2c193d52c103c836ff462fab142897749b118"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Apr 12 00:46:31 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Apr 12 00:46:31 2026 +0100"
      },
      "message": "These are URI components; fixes comma decoding\n"
    },
    {
      "commit": "efa2c193d52c103c836ff462fab142897749b118",
      "tree": "46cb6701393a7e9ff113d8ed8dda16609922c651",
      "parents": [
        "dbc3a13d61ce1421c2d08f4a27da8115b570e188"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Apr 12 00:02:26 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Apr 12 00:02:26 2026 +0100"
      },
      "message": "Standardise on Timestamp\n"
    },
    {
      "commit": "dbc3a13d61ce1421c2d08f4a27da8115b570e188",
      "tree": "a8f0b472ce52612952eae1a3406d59d32e26e358",
      "parents": [
        "9f3cf93a60e417eb2b3772e92c8eafae329fedec"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Apr 12 00:01:13 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Apr 12 00:01:13 2026 +0100"
      },
      "message": "Ensure envelope_date is valid\n"
    },
    {
      "commit": "9f3cf93a60e417eb2b3772e92c8eafae329fedec",
      "tree": "c0a49e57ddd314357d0bc7fc7a2de155a65da459",
      "parents": [
        "546ce6f5e49697860b514e51f42a7c2a78036b32"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 11 15:59:41 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 11 15:59:41 2026 +0100"
      },
      "message": "Trailing spaces\n"
    },
    {
      "commit": "546ce6f5e49697860b514e51f42a7c2a78036b32",
      "tree": "554cb2452e454b320b99d949ddf24380bd6b1253",
      "parents": [
        "0424d2baad82b996ef1b1b4f2338ada4871e0fc6"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 11 15:51:03 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 11 15:51:03 2026 +0100"
      },
      "message": "Action to join PDF pages\n"
    },
    {
      "commit": "0424d2baad82b996ef1b1b4f2338ada4871e0fc6",
      "tree": "0e009c0fcada49d4d2dc18de014f3f0d236acd05",
      "parents": [
        "3a81be408989427f5cdf445948b2b49f5423a48a"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 04 17:25:09 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 04 17:25:09 2026 +0100"
      },
      "message": "List id needed for disambiguation\n"
    },
    {
      "commit": "3a81be408989427f5cdf445948b2b49f5423a48a",
      "tree": "d3ff0f9962f48b395b3953dde5fe69a87804b0ff",
      "parents": [
        "3bf5511f7bab90edbffe953fab36971f64ec1c44"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 04 17:13:43 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Apr 04 17:13:43 2026 +0100"
      },
      "message": "Typo\n"
    },
    {
      "commit": "3bf5511f7bab90edbffe953fab36971f64ec1c44",
      "tree": "b268cb405e78dc50a46a5b8caa4eed55c1951871",
      "parents": [
        "c937648241fa8f98dc28456429ac9882f977298d"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Apr 02 15:22:25 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Apr 02 15:22:25 2026 +0100"
      },
      "message": "Drop board agenda code\n"
    },
    {
      "commit": "c937648241fa8f98dc28456429ac9882f977298d",
      "tree": "2a1c1707d4e1bba7bd53025e49d9b26c753993e5",
      "parents": [
        "11d02248d99f241e812feb789b8f3aaefe5b50be"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Mar 26 18:04:20 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 26 08:04:20 2026 +0000"
      },
      "message": "Fix pre-commit workflow; change branch to master (#300)"
    },
    {
      "commit": "11d02248d99f241e812feb789b8f3aaefe5b50be",
      "tree": "b9af63db9f5fdc89401bd92d8c455216df1830af",
      "parents": [
        "20bca573682601861b4d08e615d838bfdce5e516"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Mar 25 12:52:22 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 25 16:52:22 2026 +0000"
      },
      "message": "Consolidate duplicate \u0027nominations closed\u0027 messages. (#298)"
    },
    {
      "commit": "20bca573682601861b4d08e615d838bfdce5e516",
      "tree": "5558e8b717cea5435f8400354257a1238153ae86",
      "parents": [
        "cdc12504191cd0593f0427884a52757bbd4be6f8"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 25 15:10:50 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 25 15:10:50 2026 +0000"
      },
      "message": "Dropped a private SVN reference\n"
    },
    {
      "commit": "cdc12504191cd0593f0427884a52757bbd4be6f8",
      "tree": "22720b4c69acda88c90c0b9d561a0a03187629b2",
      "parents": [
        "26c4ebf11a76f457a115ee9254e9756af9ee3c6f"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Mar 25 11:03:47 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 25 15:03:47 2026 +0000"
      },
      "message": "Adds link to members meeting FAQ. (#299)"
    },
    {
      "commit": "26c4ebf11a76f457a115ee9254e9756af9ee3c6f",
      "tree": "fcc3793027bfefb75f2679159803ba3505bbc7d5",
      "parents": [
        "b2fd24a6d3184b77dc4929dcd6d756d5eeed7455"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 25 14:50:53 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 25 14:50:53 2026 +0000"
      },
      "message": "No longer needed\n"
    },
    {
      "commit": "b2fd24a6d3184b77dc4929dcd6d756d5eeed7455",
      "tree": "eb597882d5aba670b97f477bcd174bfcbf45d993",
      "parents": [
        "24fb8c910fa0d5baa4c7be785d7bb1739c568aa3"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 25 14:49:56 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 25 14:49:56 2026 +0000"
      },
      "message": "Get involuntary emeritus from member file comments\n"
    },
    {
      "commit": "24fb8c910fa0d5baa4c7be785d7bb1739c568aa3",
      "tree": "aea48e451bdf96b361f52d58a5b3cee86a5c4cbb",
      "parents": [
        "ae147f7ab35bc1906aa3c72c9a0df5f1e522e23b"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Sat Mar 21 01:24:18 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Mar 20 15:24:18 2026 +0000"
      },
      "message": "[CI] Add pre-commit workflow with 10+ hooks (#294)\n\n* [CI] Add pre-commit workflow with 10+ hooks\n\n* Run pre-commit and auto clean up\n\nhttps://github.com/pre-commit/pre-commit-hooks\n\n10 basic checks added to enforce standards, quality an to stop regressions\n\nThis pre-commit config can be greatly expanded with many more checks in future\n\nExamples:\n\nhttps://github.com/apache/sedona/blob/master/.github/workflows/pre-commit.yml\n\nhttps://pre-commit.com/#github-actions-example\n\nhttps://github.com/apache/shiro/blob/main/.github/workflows/pre-commit.yml\n\nhttps://github.com/apache/sedona/blob/master/.pre-commit-config.yaml"
    },
    {
      "commit": "ae147f7ab35bc1906aa3c72c9a0df5f1e522e23b",
      "tree": "e824ef309951bf98c14b9ae266523fbc77043f32",
      "parents": [
        "a6fdff0ba9a87b3a877a5a45c5b6d1b9abd5baf3"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 18 16:59:12 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Mar 18 16:59:12 2026 +0000"
      },
      "message": "Allow active members to pretend\n"
    },
    {
      "commit": "a6fdff0ba9a87b3a877a5a45c5b6d1b9abd5baf3",
      "tree": "fcc0df68fe27704260653013f4b649502ff419dd",
      "parents": [
        "f64d24f3e5f346f80024d99f21c750b1fe8faf59"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 17 16:36:48 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 17 16:36:48 2026 +0000"
      },
      "message": "Convert to UTC\n"
    },
    {
      "commit": "f64d24f3e5f346f80024d99f21c750b1fe8faf59",
      "tree": "1fe64158f665525fe02dfa80d0054beaeba5037c",
      "parents": [
        "11e0dae8f602163b678f36a7a1030ef7582b41b6"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 17 16:34:39 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 17 16:34:39 2026 +0000"
      },
      "message": "Show application end time\n"
    },
    {
      "commit": "11e0dae8f602163b678f36a7a1030ef7582b41b6",
      "tree": "6cb49d1306a99b10df29c27073ed94e218b0c767",
      "parents": [
        "bdfeaf6e65d72084e2d72145dda1d92b1792eef1"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 17 14:24:57 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 17 14:24:57 2026 +0000"
      },
      "message": "Tweak wording\n"
    },
    {
      "commit": "bdfeaf6e65d72084e2d72145dda1d92b1792eef1",
      "tree": "29436ea9018bb2695bf3a887ca9b71db03012f36",
      "parents": [
        "0efdfb15f722d9f1056fad60330d1e57c79e2f67"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Mar 16 15:20:26 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Mon Mar 16 15:20:26 2026 +0000"
      },
      "message": "Trailing spaces\n"
    },
    {
      "commit": "0efdfb15f722d9f1056fad60330d1e57c79e2f67",
      "tree": "1b5c6af70438dc97418f987a08bc305924fdc2d2",
      "parents": [
        "972616cf061495d7b746b26db6e8cee4a05dcb4f"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Mon Mar 16 22:03:30 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 16 12:03:30 2026 +0000"
      },
      "message": "docs: fix typos in code comments (#295)\n\nGeneral clean up"
    },
    {
      "commit": "972616cf061495d7b746b26db6e8cee4a05dcb4f",
      "tree": "c03356b4b97475e8b6404badbd0894cae5cc7d8f",
      "parents": [
        "6d67c5c839e9da162a00e4669536674bcba21a8c"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Mar 14 20:57:07 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sat Mar 14 20:57:07 2026 +0000"
      },
      "message": "workround for logparser crash\n"
    },
    {
      "commit": "6d67c5c839e9da162a00e4669536674bcba21a8c",
      "tree": "e4aa15f165d67c3b815440fa21b3f2035f237547",
      "parents": [
        "ebc9a6c45c4d5fa516b45433bbce6b3aea175e2c"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sat Mar 14 10:21:47 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Mar 14 10:21:47 2026 +0000"
      },
      "message": "Modernise link"
    }
  ],
  "next": "ebc9a6c45c4d5fa516b45433bbce6b3aea175e2c"
}
