)]}'
{
  "log": [
    {
      "commit": "88f227b1d279d941ec41014c96264dd21ec96eb4",
      "tree": "b0e7f0ff64d9d7a6370a7da2d5299e3a42a2548c",
      "parents": [
        "88ce2a3c6abf156fa9fc61bf8e2783c509befe2d",
        "fa25c37519637daf8772c4b2084c2dd773d42dc8"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 29 15:42:00 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 29 15:42:00 2026 +0200"
      },
      "message": "Merge pull request #328 from apache/double-submission\n\nDisable Send Reply button on click to prevent duplicate posts"
    },
    {
      "commit": "fa25c37519637daf8772c4b2084c2dd773d42dc8",
      "tree": "b0e7f0ff64d9d7a6370a7da2d5299e3a42a2548c",
      "parents": [
        "88ce2a3c6abf156fa9fc61bf8e2783c509befe2d"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jul 29 09:15:40 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jul 29 09:15:40 2026 -0400"
      },
      "message": "Disable Send Reply button on click to prevent duplicate posts\n\nGreys out and disables the Send Reply button immediately on press, changing its label to \"Sending...\" while the request is in flight. Re-enables only if the server returns an error so the user can retry.\n"
    },
    {
      "commit": "88ce2a3c6abf156fa9fc61bf8e2783c509befe2d",
      "tree": "d8084806633a9972b647be2ed2e18ab33e5a0869",
      "parents": [
        "0a82bc7ef462d173ea16e4afcd6468dca74260f2"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jul 22 12:45:27 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jul 22 12:45:27 2026 -0400"
      },
      "message": "No longer incubating\n"
    },
    {
      "commit": "0a82bc7ef462d173ea16e4afcd6468dca74260f2",
      "tree": "b1bd4c4c018bd05c963aad70270e654b8a242cea",
      "parents": [
        "d6cdecdf7e0eb995605d98574dadd13b70f4131e",
        "6516230b3c03c6947e2c54aff8516814a0ce7c55"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Mon Jul 13 10:18:25 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 13 10:18:25 2026 -0400"
      },
      "message": "Merge pull request #322 from apache/rbowen-author-names\n\nMake author names clickable as search items"
    },
    {
      "commit": "d6cdecdf7e0eb995605d98574dadd13b70f4131e",
      "tree": "24aaa88d70a280b6837ed0d1b80e738b782083cf",
      "parents": [
        "4f78b7ad4a37ba686eae158fa666c261b3239618"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 17:17:15 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 17:17:15 2026 +0100"
      },
      "message": "This fixes #326\n"
    },
    {
      "commit": "4f78b7ad4a37ba686eae158fa666c261b3239618",
      "tree": "77834225f92934ea6799ad86ee25c076f0c97760",
      "parents": [
        "a13cd4fd24c516416a699b5278724cdab5f3cff2"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:58:56 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:58:56 2026 +0100"
      },
      "message": "Typo [skip ci]\n"
    },
    {
      "commit": "a13cd4fd24c516416a699b5278724cdab5f3cff2",
      "tree": "9cb323593c5aa40f43db71eadb7f2946edcf866d",
      "parents": [
        "b1db84835aeba2ea1fe59b5e778baa63cc698ceb"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:49:09 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:49:09 2026 +0100"
      },
      "message": "Trailing spaces\n"
    },
    {
      "commit": "b1db84835aeba2ea1fe59b5e778baa63cc698ceb",
      "tree": "2f45b53a459f35c685a92956aae6dcf98f7b5c3a",
      "parents": [
        "3405e7504eb1cda08ed160cf3618237444fae763"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:46:25 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:46:25 2026 +0100"
      },
      "message": "Document additional version definition\n"
    },
    {
      "commit": "3405e7504eb1cda08ed160cf3618237444fae763",
      "tree": "930fd07a04ddf8edfe511f72b5cd8c5a43861f7e",
      "parents": [
        "e0323f3e4e9ebb965937982037e2cc43b00e515f"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sun Jul 12 13:31:29 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 12 13:31:29 2026 +0100"
      },
      "message": "Partial fixes for #323 (#324)"
    },
    {
      "commit": "e0323f3e4e9ebb965937982037e2cc43b00e515f",
      "tree": "ecb919567cc540f30b72524f31c9caa715cd7245",
      "parents": [
        "d2e3f3d26b114027f471765be517f3ff9258426f"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:30:31 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:30:31 2026 +0100"
      },
      "message": "Document additional version definition\n"
    },
    {
      "commit": "d2e3f3d26b114027f471765be517f3ff9258426f",
      "tree": "53535061177b6d954f0a5a0348625d6dce4f2271",
      "parents": [
        "ba17212e5a3d78c702520830d007a239b834ea53"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:12:47 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 12 13:12:47 2026 +0100"
      },
      "message": "Use constant to ensure consistent usge\n"
    },
    {
      "commit": "6516230b3c03c6947e2c54aff8516814a0ce7c55",
      "tree": "076ed6feb2c1df7bf55cb0c293d78277d2e3c330",
      "parents": [
        "ba17212e5a3d78c702520830d007a239b834ea53"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Tue Jul 07 12:12:47 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Tue Jul 07 12:12:50 2026 -0400"
      },
      "message": "Make author names clickable as search items\n\nClicking an author name in the sidebar stats now triggers a\nheader_from search for that author, filtered to the current\ndate range. Matches the existing behavior of the word cloud.\n\nFixes #145\n"
    },
    {
      "commit": "ba17212e5a3d78c702520830d007a239b834ea53",
      "tree": "17acc06a019c9a36589484f2586461e0d48fe2c8",
      "parents": [
        "cda03a4628b86fce0e1536fb51fe77ff99eb6dda"
      ],
      "author": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Tue Jul 07 04:49:48 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 10:49:48 2026 +0100"
      },
      "message": "Set up default protection ruleset for default and release branches (#311)"
    },
    {
      "commit": "cda03a4628b86fce0e1536fb51fe77ff99eb6dda",
      "tree": "0f95e1b89fd4f067ac469f4ea1f2ae226a8ecaf4",
      "parents": [
        "9ac84f251d87eca42bfc7377a53c33e80d10ee67"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Tue Jul 07 05:48:44 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 10:48:44 2026 +0100"
      },
      "message": "Filter stopwords from word cloud results (#318)\n\nThe significant_terms aggregation can surface common English stopwords\nand email-specific noise (re, fwd, by) because on mailing lists these\nterms are frequent in both foreground and background sets. Filter the\nreturned buckets against a stopword set and drop terms shorter than 3\ncharacters.\n\nCloses #196"
    },
    {
      "commit": "9ac84f251d87eca42bfc7377a53c33e80d10ee67",
      "tree": "5a051914968f1aed74a2b2ca2305dc2391625f0f",
      "parents": [
        "696d68880c002a72b56355253a57d9c40d957555"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Tue Jul 07 05:45:18 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 10:45:18 2026 +0100"
      },
      "message": "Encode query and header values in pushState URLs (#315)\n\nSearch queries containing spaces were not URL-encoded when\npushed to browser history, producing URLs with literal spaces\nthat break when shared or pasted. Encode the query segment and\nall header_* values with encodeURIComponent in search.js and\nsidebar-calendar.js."
    },
    {
      "commit": "696d68880c002a72b56355253a57d9c40d957555",
      "tree": "89cfd987e98d9dd7476e7c2aa6ee56142742216f",
      "parents": [
        "62806e79b0f364abf674993e1b21b1f4df014927"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Jul 07 10:41:45 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 07 10:41:45 2026 +0100"
      },
      "message": "Update aiosmtplib requirement from ~\u003d4.0.1 to ~\u003d5.1.2 (#309)\n\nUpdates the requirements on [aiosmtplib](https://github.com/cole/aiosmtplib) to permit the latest version.\n- [Release notes](https://github.com/cole/aiosmtplib/releases)\n- [Changelog](https://github.com/cole/aiosmtplib/blob/main/CHANGELOG.rst)\n- [Commits](https://github.com/cole/aiosmtplib/compare/v4.0.1...v5.1.2)\n\n---\nupdated-dependencies:\n- dependency-name: aiosmtplib\n  dependency-version: 5.1.0\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "62806e79b0f364abf674993e1b21b1f4df014927",
      "tree": "179436fc032acc35da2944e7403d0d0c2b5210e0",
      "parents": [
        "24ae2c4b60f43b9258d67332e36035b1a713b4e6"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Jul 06 23:40:22 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 23:40:22 2026 +0100"
      },
      "message": "Update google-auth requirement from ~\u003d2.45.0 to ~\u003d2.49.1 (#308)\n\nUpdates the requirements on [google-auth](https://github.com/googleapis/google-auth-library-python) to permit the latest version.\n- [Release notes](https://github.com/googleapis/google-auth-library-python/releases)\n- [Changelog](https://github.com/googleapis/google-auth-library-python/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/googleapis/google-auth-library-python/commits)\n\n---\nupdated-dependencies:\n- dependency-name: google-auth\n  dependency-version: 2.49.1\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "24ae2c4b60f43b9258d67332e36035b1a713b4e6",
      "tree": "22fbc5b102b82a641668492593e00bfa4dccad52",
      "parents": [
        "3b59afc7eb4e32f9d23ce04dd1174882b5da54e1"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Jul 06 23:39:48 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 23:39:48 2026 +0100"
      },
      "message": "Update multipart requirement from ~\u003d1.3.0 to ~\u003d1.3.1 (#307)\n\nUpdates the requirements on [multipart](https://github.com/defnull/multipart) to permit the latest version.\n- [Release notes](https://github.com/defnull/multipart/releases)\n- [Changelog](https://github.com/defnull/multipart/blob/main/CHANGELOG.rst)\n- [Commits](https://github.com/defnull/multipart/compare/v1.3.0...v1.3.1)\n\n---\nupdated-dependencies:\n- dependency-name: multipart\n  dependency-version: 1.3.1\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "3b59afc7eb4e32f9d23ce04dd1174882b5da54e1",
      "tree": "bd9f32642ddf2f9b44778c394828377384c14d0f",
      "parents": [
        "52d5b17f3970d7c05fc36393ea4b5e228b5287aa"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Jul 06 23:39:19 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 23:39:19 2026 +0100"
      },
      "message": "Update certifi requirement from ~\u003d2025.11.12 to ~\u003d2026.2.25 (#306)\n\nUpdates the requirements on [certifi](https://github.com/certifi/python-certifi) to permit the latest version.\n- [Commits](https://github.com/certifi/python-certifi/compare/2025.11.12...2026.02.25)\n\n---\nupdated-dependencies:\n- dependency-name: certifi\n  dependency-version: 2026.2.25\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "52d5b17f3970d7c05fc36393ea4b5e228b5287aa",
      "tree": "3018eda6037f530e19f546d84a90d4cb43dc25ed",
      "parents": [
        "600bd7a27cb57a47eac7e4aea208c9880ae6bbea"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Mon Jul 06 18:36:14 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 06 23:36:14 2026 +0100"
      },
      "message": "Document complete database schema in architecture.md (#320)\n\nExpanded from a brief 4-index summary to full field-level documentation\ncovering all 7 indices (mbox, source, attachment, account, session,\nnotification, auditlog) with types and descriptions sourced from\ntools/mappings.yaml."
    },
    {
      "commit": "600bd7a27cb57a47eac7e4aea208c9880ae6bbea",
      "tree": "291816ee41bd954ee260d0305640b0198fad99f4",
      "parents": [
        "bb7bc87f60616de614031343f49ec0192d8c5858"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Jun 19 21:51:54 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Jun 19 21:51:54 2026 +0100"
      },
      "message": "Satisfy mypy\n"
    },
    {
      "commit": "bb7bc87f60616de614031343f49ec0192d8c5858",
      "tree": "60af6b3aa40b7edca86917817cc7767b7b9c3fc2",
      "parents": [
        "1980d5bc4fa50d173b41c4676e90851454660c4e"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Jun 19 21:34:09 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Jun 19 21:34:09 2026 +0100"
      },
      "message": "Pin actions\n"
    },
    {
      "commit": "1980d5bc4fa50d173b41c4676e90851454660c4e",
      "tree": "3d7d4abd515c85ee661e0495bf217da71bf1ac8f",
      "parents": [
        "2d408c1f5a85e6b006d263dda2e2442c1f71a82b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Jun 19 21:24:12 2026 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Fri Jun 19 21:24:12 2026 +0100"
      },
      "message": "Fix incorrect indentation\n"
    },
    {
      "commit": "2d408c1f5a85e6b006d263dda2e2442c1f71a82b",
      "tree": "118cc13c83cae41891efbd8aeb2c0f5762c56502",
      "parents": [
        "475561f2f2e63a2f6d26ab1a781e1e941ae1ad3c"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Fri Jun 19 20:44:19 2026 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 19 20:44:19 2026 +0100"
      },
      "message": "Disable push trigger for as_bytes() output change\n\nThis is unlikely ever to be addressed now."
    },
    {
      "commit": "475561f2f2e63a2f6d26ab1a781e1e941ae1ad3c",
      "tree": "b0a7ad64c44caf2b34d1040f03d95a91173c146b",
      "parents": [
        "4bffdd03968627f5137d03b93e68aa2218a5f29f"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:47:58 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:47:58 2026 -0400"
      },
      "message": "OpenSearch rather than ElasticSearch.\n"
    },
    {
      "commit": "4bffdd03968627f5137d03b93e68aa2218a5f29f",
      "tree": "fc4f9c04ff33a47c79e41d3b52f393830d3efc24",
      "parents": [
        "cc7a5e1fa03b53389d6bf167ec68183f034fac42"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:21:24 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:21:24 2026 -0400"
      },
      "message": "Fix failing unit tests by allowing version scripts to run without failing\n\nThe Check versions step runs build.sh and update_version.sh which update\nversion files based on the latest commit hashes. In CI, these scripts may\ndetect changes and exit with code 1, causing the entire job to fail even\nthough the tests pass.\n\nAdding || true allows these version checks to run for their intended purpose\n(updating version info) without failing the job if the files change.\n\n(Copilot told me to do this. Feel free to revert if you think this is\ndumb.)\n\nFixes: Job 76266809606\n"
    },
    {
      "commit": "cc7a5e1fa03b53389d6bf167ec68183f034fac42",
      "tree": "5b0be568eb812dbb4c7de0afa8a23d399adcb230",
      "parents": [
        "db0a28f36e49395ea7c9a2cbbe5a096e2f3ceb0e",
        "7481c529663e6b5a109589a8f3fb0ae88bd8e554"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:14:29 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 19 13:14:29 2026 -0400"
      },
      "message": "Merge pull request #317 from apache/rbowen-docs\n\nAdd comprehensive documentation suite"
    },
    {
      "commit": "7481c529663e6b5a109589a8f3fb0ae88bd8e554",
      "tree": "5b0be568eb812dbb4c7de0afa8a23d399adcb230",
      "parents": [
        "8c7556c66559edabc5b1e30960c73044cbcbfd47"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:05:33 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:05:33 2026 -0400"
      },
      "message": "Add installation guide using OpenSearch\n\nStep-by-step install covering OpenSearch setup, Python dependencies,\nsetup.py, mbox import, systemd service, httpd proxy config, live\narchiving via Postfix, and troubleshooting. Verified against\ntools/setup.py for accuracy.\n"
    },
    {
      "commit": "8c7556c66559edabc5b1e30960c73044cbcbfd47",
      "tree": "b9fdce29e1ed8c92e5f5a5e69135fcf30e99e2b8",
      "parents": [
        "db0a28f36e49395ea7c9a2cbbe5a096e2f3ceb0e"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:01:00 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Fri Jun 19 13:01:00 2026 -0400"
      },
      "message": "Add comprehensive documentation suite\n\nNew docs:\n- docs/index.md: Documentation hub linking all guides\n- docs/architecture.md: Component diagram, data model, plugin system\n- docs/operator_guide.md: Docker quickstart + production deployment\n- docs/user_guide.md: Browsing, searching, OAuth, composing replies\n- docs/admin_guide.md: Management console, GDPR, audit log, bulk ops\n- docs/plugins.md: How to write endpoints and extend the system\n- docs/api_client_guide.md: Curl examples for common API operations\n- docs/releases.md: Versioning and how to identify deployed version\n\nAlso adds AGENTS.md for AI coding agent guidance, and updates\nREADME.md to link to the documentation directory.\n\nDisclosure: This was written with the assistance of our robot overlords\n(Claude, if it matters.)\n"
    },
    {
      "commit": "db0a28f36e49395ea7c9a2cbbe5a096e2f3ceb0e",
      "tree": "e6b020d7bb1c3048e5d242678594da999e3e91ff",
      "parents": [
        "775c4ba34396853ad6d24b7bf1df58fa4ac260e1",
        "0c3dbff5d3dc387706bd43fa4190c158f3adb724"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Fri Jun 19 08:59:21 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 19 08:59:21 2026 -0700"
      },
      "message": "Merge pull request #314 from apache/rbowen-search-syntax-199\n\nAdd search syntax documentation"
    },
    {
      "commit": "775c4ba34396853ad6d24b7bf1df58fa4ac260e1",
      "tree": "62315c8dfd20257fa82b9b173b2863f6b7e34f86",
      "parents": [
        "07748e92473ff9fb9f545e813aff52dad5f1e48f",
        "76c9587b36db7294ea6c78c62fd8a464506deba3"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Fri Jun 19 08:58:09 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 19 08:58:09 2026 -0700"
      },
      "message": "Merge pull request #316 from apache/rbowen-configuration-218\n\nAdd configuration reference documenting all ponymail.yaml options"
    },
    {
      "commit": "07748e92473ff9fb9f545e813aff52dad5f1e48f",
      "tree": "108be26f88ec8cb256198a104546627fa6241f50",
      "parents": [
        "79f5a0f187749b5658e69adf782f10695bc9dc76",
        "9da95541a92ba8e4c7fab066f0741c8c983b9b62"
      ],
      "author": {
        "name": "Dave Fisher",
        "email": "dave2wave@comcast.net",
        "time": "Fri Jun 19 08:43:50 2026 -0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jun 19 08:43:50 2026 -0700"
      },
      "message": "Merge pull request #313 from apache/rbowen-api-doc-34\n\nAdd API documentation for Foal endpoints"
    },
    {
      "commit": "76c9587b36db7294ea6c78c62fd8a464506deba3",
      "tree": "ab16780d8f1cbfb329a5ce4b9f6e2f9ef9f7ab40",
      "parents": [
        "79f5a0f187749b5658e69adf782f10695bc9dc76"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 16:22:22 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 16:22:22 2026 -0400"
      },
      "message": "Add configuration reference documenting all ponymail.yaml options\n\nCovers every key recognized by server/plugins/configuration.py with\ntypes, defaults, and descriptions. Includes keys not present in\nponymail.yaml.example (database.secure, database.url_prefix,\nui.focus_domain, archiver threading options).\n\nPartially addresses #218.\n"
    },
    {
      "commit": "9da95541a92ba8e4c7fab066f0741c8c983b9b62",
      "tree": "108be26f88ec8cb256198a104546627fa6241f50",
      "parents": [
        "a192314be4fc5aa48d0f5c4a9ac9a605bd7f8ea2"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 12:04:27 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 12:04:27 2026 -0400"
      },
      "message": "Skip md files in unit tests.\n\nCopilot recommended this change.\n"
    },
    {
      "commit": "0c3dbff5d3dc387706bd43fa4190c158f3adb724",
      "tree": "9311154c8f4ec96d47e34a9ec83a630ac777cec2",
      "parents": [
        "38aca384778fa3202d651979d1cfacabd5b060f6"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 11:53:40 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 11:53:40 2026 -0400"
      },
      "message": "Fixes examples\n\nI was confused about how spaces were handled, as well as how the ---\nsyntax was used for expressing a literal -, eg, searching for -1\nrequires using ---1. So, fixed the examples, and tested them all.\n"
    },
    {
      "commit": "38aca384778fa3202d651979d1cfacabd5b060f6",
      "tree": "58f9f4080fe83b897c5ec99beb47b118f2a76fa2",
      "parents": [
        "768fb723515ccb550e2af3e8e9d0725d582e5ce9"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 11:30:46 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 11:30:46 2026 -0400"
      },
      "message": "Omits examples that don\u0027t work.\n\nIt looks like there\u0027s some stuff that *should* work but doesn\u0027t. In\nparticular, search terms with spaces seem broken, and the example of\n---1 to mean a literal -1 doesn\u0027t work. So this should be accurate now,\nalthough I suspect that those other things are bugs.\n"
    },
    {
      "commit": "768fb723515ccb550e2af3e8e9d0725d582e5ce9",
      "tree": "ffed1d222c18abc1732340cefc5b13efbc02e8f7",
      "parents": [
        "58893b0bd97951bb7f0376f468532eb588917f14"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 11:11:12 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 11:11:12 2026 -0400"
      },
      "message": "Actually ... that was wrong. Trying again.\n\nThis is documenting the actual URLs that a user would encounter/craft,\nrather than the API URLs, which are already documented in my other PR.\n\nThis is still a draft, since some of the examples seem to not be\nworking. Will verify all examples before unmarking \"draft\".\n"
    },
    {
      "commit": "58893b0bd97951bb7f0376f468532eb588917f14",
      "tree": "79a83739fe80b2a74acb0b8e7fc708111692a760",
      "parents": [
        "79f5a0f187749b5658e69adf782f10695bc9dc76"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 10:57:04 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Wed Jun 17 10:57:04 2026 -0400"
      },
      "message": "Add search syntax documentation\n\nDocuments the search query syntax including free-text search,\nheader filters, date ranges, and list scoping with URL examples.\n\nAssisted by Claude.\n\nAddresses #199\n"
    },
    {
      "commit": "a192314be4fc5aa48d0f5c4a9ac9a605bd7f8ea2",
      "tree": "3fb609d68ba47cff589a7b9262e8c9c3237e58b9",
      "parents": [
        "79f5a0f187749b5658e69adf782f10695bc9dc76"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Tue Jun 16 16:44:10 2026 -0400"
      },
      "committer": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Tue Jun 16 16:44:10 2026 -0400"
      },
      "message": "Add API documentation for Foal endpoints\n\nDocuments all HTTP API endpoints including request parameters,\nresponse schemas, search/date syntax, and differences from the\nlegacy Lua-based API. Based on the OpenAPI spec and endpoint\nsource code.\n\nAddresses #34\n"
    },
    {
      "commit": "79f5a0f187749b5658e69adf782f10695bc9dc76",
      "tree": "b408b9361f875926fcabe8b683bd05d6de687153",
      "parents": [
        "09bfa6de66d3a5ab477e7ff8b60837a21f825920"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Feb 10 22:59:54 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Feb 10 22:59:54 2026 +0000"
      },
      "message": "Fix mypy errors\n"
    },
    {
      "commit": "09bfa6de66d3a5ab477e7ff8b60837a21f825920",
      "tree": "149b872444f9f54c0d7b6ce77a6a6f0776908856",
      "parents": [
        "bf33256d9c04ad3925ef92030e410620af121e69"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Feb 10 22:24:09 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 10 22:24:09 2026 +0000"
      },
      "message": "Update certifi requirement from ~\u003d2025.7.14 to ~\u003d2025.11.12 (#302)\n\nUpdates the requirements on [certifi](https://github.com/certifi/python-certifi) to permit the latest version.\n- [Commits](https://github.com/certifi/python-certifi/compare/2025.07.14...2025.11.12)\n\n---\nupdated-dependencies:\n- dependency-name: certifi\n  dependency-version: 2025.11.12\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "bf33256d9c04ad3925ef92030e410620af121e69",
      "tree": "b89477935a41fa77e14230707cc2652e203b50a6",
      "parents": [
        "40db544f7c5e2307652180e91e1cf7b374a6c349"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Feb 10 22:23:41 2026 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 10 22:23:41 2026 +0000"
      },
      "message": "Update google-auth[urllib3] requirement from ~\u003d2.40.3 to ~\u003d2.45.0 (#305)\n\nUpdates the requirements on [google-auth[urllib3]](https://github.com/googleapis/google-auth-library-python) to permit the latest version.\n- [Release notes](https://github.com/googleapis/google-auth-library-python/releases)\n- [Changelog](https://github.com/googleapis/google-auth-library-python/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/googleapis/google-auth-library-python/compare/v2.40.3...v2.45.0)\n\n---\nupdated-dependencies:\n- dependency-name: google-auth[urllib3]\n  dependency-version: 2.45.0\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "40db544f7c5e2307652180e91e1cf7b374a6c349",
      "tree": "4fb3d3599805e85a018a2d5de426401d0131f004",
      "parents": [
        "84c4275040164cd7221c218fc07f5c0f699366e0"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Feb 10 22:22:39 2026 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Feb 10 22:22:39 2026 +0000"
      },
      "message": "Test oldest and newest supported versions\n"
    },
    {
      "commit": "84c4275040164cd7221c218fc07f5c0f699366e0",
      "tree": "5982bb712069c37e4c0c19cf441543bb5f1efffc",
      "parents": [
        "6660b94f7490ff8ebca9b4d6c4a9b6cf3b3898da"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Dec 16 17:50:26 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Dec 16 17:50:26 2025 +0000"
      },
      "message": "Update server version\n"
    },
    {
      "commit": "6660b94f7490ff8ebca9b4d6c4a9b6cf3b3898da",
      "tree": "37e29d4f1f67d1bdb6896ae07448b60cb9ed61db",
      "parents": [
        "8637f08c386b715e40c1d83d608b58c4b31bd0c5",
        "328bbcdc590692fa61299096e326da5a36522541"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Tue Dec 16 17:14:36 2025 +0100"
      },
      "committer": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Tue Dec 16 17:14:36 2025 +0100"
      },
      "message": "Merge remote-tracking branch \u0027ponymail-foal/oauth-simplify\u0027\n"
    },
    {
      "commit": "8637f08c386b715e40c1d83d608b58c4b31bd0c5",
      "tree": "c22e17fe05f709254fe2d3a8cf1052a371cc51c0",
      "parents": [
        "1a73e546bf9b93bfdd027a4739cf4e38ccb30b95"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Mon Dec 01 08:48:16 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 01 08:48:16 2025 +0000"
      },
      "message": "Reduce noise"
    },
    {
      "commit": "1a73e546bf9b93bfdd027a4739cf4e38ccb30b95",
      "tree": "553135db46afb8e5053210da889ea07ab84bee66",
      "parents": [
        "a873f1d089a56914b2fb736dee14a65afb6d1ec8"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Dec 01 08:45:00 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 01 08:45:00 2025 +0000"
      },
      "message": "Update pyyaml requirement from ~\u003d6.0.2 to ~\u003d6.0.3 (#295)\n\nUpdates the requirements on [pyyaml](https://github.com/yaml/pyyaml) to permit the latest version.\n- [Release notes](https://github.com/yaml/pyyaml/releases)\n- [Changelog](https://github.com/yaml/pyyaml/blob/6.0.3/CHANGES)\n- [Commits](https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3)\n\n---\nupdated-dependencies:\n- dependency-name: pyyaml\n  dependency-version: 6.0.3\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "328bbcdc590692fa61299096e326da5a36522541",
      "tree": "b654116514e66e9680199ac4c3c81132fba2fc61",
      "parents": [
        "44326c058225d6142962583007b7950ddbe4bb8b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Oct 21 15:58:36 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Oct 21 15:58:36 2025 +0100"
      },
      "message": "Update server version\n"
    },
    {
      "commit": "44326c058225d6142962583007b7950ddbe4bb8b",
      "tree": "dec24b8feb78d6651cdc98d041a69064f14d4026",
      "parents": [
        "fca3121cbb7ea072cd7d83ea058715947cd2894b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Oct 21 15:53:01 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Oct 21 15:53:01 2025 +0100"
      },
      "message": "Check for invalid provider key - just in case\n"
    },
    {
      "commit": "a873f1d089a56914b2fb736dee14a65afb6d1ec8",
      "tree": "92aaa66240cd6b73f8ed99da1f868a9179bd5985",
      "parents": [
        "2745d1aad3cf884cdb39c576f1b705193035beaa",
        "a976fc0ba2adf196030e934e0b1173802b0b731d"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sun Jul 27 21:09:35 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 27 21:09:35 2025 +0100"
      },
      "message": "Merge pull request #291 from apache/dependabot/pip/multipart-approx-eq-1.3.0\n\nUpdate multipart requirement from ~\u003d1.2.1 to ~\u003d1.3.0"
    },
    {
      "commit": "2745d1aad3cf884cdb39c576f1b705193035beaa",
      "tree": "c37b6355909dbf48ba00a889fd873873767c657c",
      "parents": [
        "7b2cf053c68784f3de9902e2472269c1dd5b727f",
        "572aa9e8c2ed15518807dd017d68171236f23327"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sun Jul 27 21:09:19 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 27 21:09:19 2025 +0100"
      },
      "message": "Merge pull request #290 from apache/dependabot/pip/certifi-approx-eq-2025.7.14\n\nUpdate certifi requirement from ~\u003d2025.1.31 to ~\u003d2025.7.14"
    },
    {
      "commit": "572aa9e8c2ed15518807dd017d68171236f23327",
      "tree": "c37b6355909dbf48ba00a889fd873873767c657c",
      "parents": [
        "7b2cf053c68784f3de9902e2472269c1dd5b727f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sun Jul 27 20:08:21 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 27 20:08:21 2025 +0000"
      },
      "message": "Update certifi requirement from ~\u003d2025.1.31 to ~\u003d2025.7.14\n\nUpdates the requirements on [certifi](https://github.com/certifi/python-certifi) to permit the latest version.\n- [Commits](https://github.com/certifi/python-certifi/compare/2025.01.31...2025.07.14)\n\n---\nupdated-dependencies:\n- dependency-name: certifi\n  dependency-version: 2025.7.14\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "a976fc0ba2adf196030e934e0b1173802b0b731d",
      "tree": "4b6b40f0d88639aa99c91f818a8ecdd1340ef027",
      "parents": [
        "7b2cf053c68784f3de9902e2472269c1dd5b727f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sun Jul 27 20:08:20 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 27 20:08:20 2025 +0000"
      },
      "message": "Update multipart requirement from ~\u003d1.2.1 to ~\u003d1.3.0\n\nUpdates the requirements on [multipart](https://github.com/defnull/multipart) to permit the latest version.\n- [Release notes](https://github.com/defnull/multipart/releases)\n- [Changelog](https://github.com/defnull/multipart/blob/master/CHANGELOG.rst)\n- [Commits](https://github.com/defnull/multipart/compare/v1.2.1...v1.3.0)\n\n---\nupdated-dependencies:\n- dependency-name: multipart\n  dependency-version: 1.3.0\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "7b2cf053c68784f3de9902e2472269c1dd5b727f",
      "tree": "f419266fa2e2968d8bb17214b079c0a533539bfb",
      "parents": [
        "983546e542ba62bf4b4e8158c50eff0dc4f67e13"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 27 21:07:11 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 27 21:07:11 2025 +0100"
      },
      "message": "Need urllib3 extra for google auth\n\nFixes #281\n"
    },
    {
      "commit": "983546e542ba62bf4b4e8158c50eff0dc4f67e13",
      "tree": "6c1644acfb54ac7521942bf23dfca2182b41bc38",
      "parents": [
        "469ef456d88ed55fd2cbf0928c2cdead72174720"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 27 20:46:04 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 27 20:46:04 2025 +0100"
      },
      "message": "Try to stop warnings about ES updates\n\n[skip CI]\n"
    },
    {
      "commit": "469ef456d88ed55fd2cbf0928c2cdead72174720",
      "tree": "d00fcc6a2472efc5df042d0bb4274ef362d052fd",
      "parents": [
        "0e03da41fa1b49a4e974864b9d459002bc028821",
        "bb6043641a85e1eb2415f9f661dbeccf6e69b477"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sun Jul 27 20:43:38 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 27 20:43:38 2025 +0100"
      },
      "message": "Merge pull request #288 from apache/dependabot/pip/pyyaml-approx-eq-6.0.2\n\nUpdate pyyaml requirement from ~\u003d6.0.1 to ~\u003d6.0.2"
    },
    {
      "commit": "0e03da41fa1b49a4e974864b9d459002bc028821",
      "tree": "88ede3f423472e95c575d879075dd1058c228ac9",
      "parents": [
        "de6d90bf75298d0380035f6da39bfd0eaac27904",
        "54dab52631a4383932b1130066aaeb155e176aea"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sun Jul 27 20:43:00 2025 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jul 27 20:43:00 2025 +0100"
      },
      "message": "Merge pull request #284 from apache/dependabot/pip/aiosmtplib-approx-eq-4.0.1\n\nUpdate aiosmtplib requirement from ~\u003d4.0.0 to ~\u003d4.0.1"
    },
    {
      "commit": "de6d90bf75298d0380035f6da39bfd0eaac27904",
      "tree": "ec1e0c6a07ea565f3585e5c0f8f7ac43fe5bce30",
      "parents": [
        "12dac0b81a1029a29195ac73c30cdef6c4bb49fe"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 27 20:36:07 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Jul 27 20:36:07 2025 +0100"
      },
      "message": "Try to stop warnings about ES updates\n"
    },
    {
      "commit": "12dac0b81a1029a29195ac73c30cdef6c4bb49fe",
      "tree": "56e7b8148ab52101301beea2d83260d19109d83f",
      "parents": [
        "e4b148ab64ce7a86097e3d86b59430f6d04286b9"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:39:16 2025 +0200"
      },
      "committer": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:39:16 2025 +0200"
      },
      "message": "bump version descriptor\n"
    },
    {
      "commit": "e4b148ab64ce7a86097e3d86b59430f6d04286b9",
      "tree": "d884c8f9f3b3b1ae7ac19485f81f22674b5d7c74",
      "parents": [
        "ade2a147943eb047f77fd41fa8abbb8572281db7"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:35:49 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 23 10:35:49 2025 +0200"
      },
      "message": "Update itest_integration.py, proper conversion to tuple, oops!"
    },
    {
      "commit": "ade2a147943eb047f77fd41fa8abbb8572281db7",
      "tree": "2e09b273744871a8c683a060c2caa847b634ee3c",
      "parents": [
        "6046ae8dca59c3da319a0e8fbb660cd151d9a5ca"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:33:05 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 23 10:33:05 2025 +0200"
      },
      "message": "Update itest_integration.py, query expects a list of items, not a single string value"
    },
    {
      "commit": "6046ae8dca59c3da319a0e8fbb660cd151d9a5ca",
      "tree": "1dd16f958994f4b2678d269da6791512da228290",
      "parents": [
        "1ecbc2e32621e485bb49f02ee2c43327ad115def"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:17:44 2025 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 23 10:17:44 2025 +0200"
      },
      "message": "Update mgmt.py, unshadow core function filter"
    },
    {
      "commit": "1ecbc2e32621e485bb49f02ee2c43327ad115def",
      "tree": "02949fd8535a99b62152478f80911d2434b999e6",
      "parents": [
        "4f5ece3fbf0bc5a75ecc0678e70f33ee7c0dc0eb"
      ],
      "author": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:10:22 2025 +0200"
      },
      "committer": {
        "name": "Daniel Gruno",
        "email": "humbedooh@apache.org",
        "time": "Wed Jul 23 10:10:22 2025 +0200"
      },
      "message": "bump version descriptor\n"
    },
    {
      "commit": "4f5ece3fbf0bc5a75ecc0678e70f33ee7c0dc0eb",
      "tree": "7fef05a050c0ba98138fa1f3d4ccff4c5b06eeaa",
      "parents": [
        "ce8adf1b7e7c6dc9d0a7fd1e9390f55f32b897cb"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 02 12:27:18 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 02 12:27:18 2025 +0100"
      },
      "message": "Don\u0027t aself-assign\n"
    },
    {
      "commit": "ce8adf1b7e7c6dc9d0a7fd1e9390f55f32b897cb",
      "tree": "b777407cf481164eaabe64d1376db183b64d2c98",
      "parents": [
        "c4cfa41cd6f34ad9b413d71c5fbe2563cdc1fe0f"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 02 12:24:31 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Wed Jul 02 12:24:31 2025 +0100"
      },
      "message": "Fix stricter mypy checks\n"
    },
    {
      "commit": "bb6043641a85e1eb2415f9f661dbeccf6e69b477",
      "tree": "4b4686a3bb33c11175c24d3de9e9f8e12a2a79f7",
      "parents": [
        "c4cfa41cd6f34ad9b413d71c5fbe2563cdc1fe0f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Jul 01 09:27:30 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 01 09:27:30 2025 +0000"
      },
      "message": "Update pyyaml requirement from ~\u003d6.0.1 to ~\u003d6.0.2\n\nUpdates the requirements on [pyyaml](https://github.com/yaml/pyyaml) to permit the latest version.\n- [Release notes](https://github.com/yaml/pyyaml/releases)\n- [Changelog](https://github.com/yaml/pyyaml/blob/main/CHANGES)\n- [Commits](https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2)\n\n---\nupdated-dependencies:\n- dependency-name: pyyaml\n  dependency-version: 6.0.2\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "54dab52631a4383932b1130066aaeb155e176aea",
      "tree": "09b7af7c27fbbc8c2db3f68f02936975bdb0887c",
      "parents": [
        "c4cfa41cd6f34ad9b413d71c5fbe2563cdc1fe0f"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu May 01 05:35:05 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 01 05:35:05 2025 +0000"
      },
      "message": "Update aiosmtplib requirement from ~\u003d4.0.0 to ~\u003d4.0.1\n\nUpdates the requirements on [aiosmtplib](https://github.com/cole/aiosmtplib) to permit the latest version.\n- [Release notes](https://github.com/cole/aiosmtplib/releases)\n- [Changelog](https://github.com/cole/aiosmtplib/blob/main/CHANGELOG.rst)\n- [Commits](https://github.com/cole/aiosmtplib/compare/v4.0.0...v4.0.1)\n\n---\nupdated-dependencies:\n- dependency-name: aiosmtplib\n  dependency-version: 4.0.1\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "c4cfa41cd6f34ad9b413d71c5fbe2563cdc1fe0f",
      "tree": "14dc26204acdcd1cc38943ec651e534a48cecc9d",
      "parents": [
        "d33360d508e043bb61e22cbfd5c907e0f9624b69"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Mar 30 14:43:12 2025 +0100"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Mar 30 14:43:12 2025 +0100"
      },
      "message": "Docco [skip ci]\n"
    },
    {
      "commit": "d33360d508e043bb61e22cbfd5c907e0f9624b69",
      "tree": "093203bbce896dbb7b44226e9a46997e87cc4c0b",
      "parents": [
        "fc363fdb0a818139c43ef04a0de074a4e21934e9",
        "0275a2b8ecd495a7f2e22eaf0c3d48cc75b01320"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Tue Mar 11 22:50:47 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 11 22:50:47 2025 +0000"
      },
      "message": "Merge pull request #279 from apache/dependabot/pip/aiosmtplib-approx-eq-4.0.0\n\nUpdate aiosmtplib requirement from ~\u003d1.1.3 to ~\u003d4.0.0"
    },
    {
      "commit": "0275a2b8ecd495a7f2e22eaf0c3d48cc75b01320",
      "tree": "093203bbce896dbb7b44226e9a46997e87cc4c0b",
      "parents": [
        "fc363fdb0a818139c43ef04a0de074a4e21934e9"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 11 22:48:00 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 11 22:48:00 2025 +0000"
      },
      "message": "Update aiosmtplib requirement from ~\u003d1.1.3 to ~\u003d4.0.0\n\nUpdates the requirements on [aiosmtplib](https://github.com/cole/aiosmtplib) to permit the latest version.\n- [Release notes](https://github.com/cole/aiosmtplib/releases)\n- [Changelog](https://github.com/cole/aiosmtplib/blob/main/CHANGELOG.rst)\n- [Commits](https://github.com/cole/aiosmtplib/compare/v1.1.3...v4.0.0)\n\n---\nupdated-dependencies:\n- dependency-name: aiosmtplib\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "fc363fdb0a818139c43ef04a0de074a4e21934e9",
      "tree": "2526b6e5fdca294754f529a92e2835a8d406fd48",
      "parents": [
        "79d806b7679774b54892dcd3d3044a40b070aa36"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 11 22:43:07 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 11 22:43:07 2025 +0000"
      },
      "message": "Need to show changes with Python 3.12+\n"
    },
    {
      "commit": "79d806b7679774b54892dcd3d3044a40b070aa36",
      "tree": "f74d0e635bdd481115e1eb773bce1a98001f06a8",
      "parents": [
        "f15b41822f981b054f3cc6fc7f33c00412597533"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 11 22:42:19 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Tue Mar 11 22:42:19 2025 +0000"
      },
      "message": "Python 3.8 is EOL\n"
    },
    {
      "commit": "f15b41822f981b054f3cc6fc7f33c00412597533",
      "tree": "3d3227a60babe3afbf0277b3e509b8603da63a5e",
      "parents": [
        "ea30fbc6e7a6b32a14810f38f9ae66e39327e78e",
        "97d84406e433ab80bc51144bab27fb56248d90ff"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Tue Mar 11 21:54:17 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 11 21:54:17 2025 +0000"
      },
      "message": "Merge pull request #270 from apache/dependabot/pip/netaddr-approx-eq-1.3.0\n\nUpdate netaddr requirement from ~\u003d0.8.0 to ~\u003d1.3.0"
    },
    {
      "commit": "97d84406e433ab80bc51144bab27fb56248d90ff",
      "tree": "3d3227a60babe3afbf0277b3e509b8603da63a5e",
      "parents": [
        "ea30fbc6e7a6b32a14810f38f9ae66e39327e78e"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Mar 11 17:28:39 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 11 17:28:39 2025 +0000"
      },
      "message": "Update netaddr requirement from ~\u003d0.8.0 to ~\u003d1.3.0\n\nUpdates the requirements on [netaddr](https://github.com/netaddr/netaddr) to permit the latest version.\n- [Release notes](https://github.com/netaddr/netaddr/releases)\n- [Changelog](https://github.com/netaddr/netaddr/blob/master/CHANGELOG.rst)\n- [Commits](https://github.com/netaddr/netaddr/compare/0.8.0...1.3.0)\n\n---\nupdated-dependencies:\n- dependency-name: netaddr\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "ea30fbc6e7a6b32a14810f38f9ae66e39327e78e",
      "tree": "664585357827486327d379c3acbf83e28f2fb040",
      "parents": [
        "4819ca707cd8b4ccee02135f5b4782fe1825e09c",
        "57101ae34bc17e6bd21fd7e9433233416b7aa00b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Tue Mar 11 17:25:34 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Mar 11 17:25:34 2025 +0000"
      },
      "message": "Merge pull request #271 from apache/dependabot/pip/multipart-approx-eq-1.2.1\n\nUpdate multipart requirement from ~\u003d0.2.1 to ~\u003d1.2.1"
    },
    {
      "commit": "4819ca707cd8b4ccee02135f5b4782fe1825e09c",
      "tree": "47488c20bdc4aa7eec82cc87a1befcef9a8adc86",
      "parents": [
        "ec283ccf96973c8df1575a13892d978a7f79e65b",
        "8a7c58c41fd788099f5408bac0ba59886e10b911"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Thu Feb 27 23:09:11 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 27 23:09:11 2025 +0000"
      },
      "message": "Merge pull request #276 from apache/dependabot/pip/google-auth-approx-eq-2.38.0\n\nUpdate google-auth requirement from ~\u003d1.30.0 to ~\u003d2.38.0"
    },
    {
      "commit": "8a7c58c41fd788099f5408bac0ba59886e10b911",
      "tree": "47488c20bdc4aa7eec82cc87a1befcef9a8adc86",
      "parents": [
        "ec283ccf96973c8df1575a13892d978a7f79e65b"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Feb 27 23:08:58 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 27 23:08:58 2025 +0000"
      },
      "message": "Update google-auth requirement from ~\u003d1.30.0 to ~\u003d2.38.0\n\nUpdates the requirements on [google-auth](https://github.com/googleapis/google-auth-library-python) to permit the latest version.\n- [Release notes](https://github.com/googleapis/google-auth-library-python/releases)\n- [Changelog](https://github.com/googleapis/google-auth-library-python/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/googleapis/google-auth-library-python/compare/v1.30.0...v2.38.0)\n\n---\nupdated-dependencies:\n- dependency-name: google-auth\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "ec283ccf96973c8df1575a13892d978a7f79e65b",
      "tree": "5380a71b95e05a3e3fc6e6673a48554e9cae72a9",
      "parents": [
        "bf2a96ddd57a0805253729b426a35ced1124b715",
        "3f342197a40023d96a62eacc41a04a7fdc60b538"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Thu Feb 27 23:07:48 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 27 23:07:48 2025 +0000"
      },
      "message": "Merge pull request #277 from apache/dependabot/pip/certifi-approx-eq-2025.1.31\n\nUpdate certifi requirement from ~\u003d2024.2.2 to ~\u003d2025.1.31"
    },
    {
      "commit": "bf2a96ddd57a0805253729b426a35ced1124b715",
      "tree": "36cf79c5ceabdcd2be14f1708843d16d55ae0078",
      "parents": [
        "0236a487078c06806c3f9072069b149f1ab7f4db"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:37:22 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:37:22 2025 +0000"
      },
      "message": "Bump server version\n"
    },
    {
      "commit": "0236a487078c06806c3f9072069b149f1ab7f4db",
      "tree": "3abe25b2791b977423faf458331f62a23019035a",
      "parents": [
        "a1536d198880f8d8a584010e589b4514fe97dfa1"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:35:47 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:35:47 2025 +0000"
      },
      "message": "import should come at top of modules\n"
    },
    {
      "commit": "a1536d198880f8d8a584010e589b4514fe97dfa1",
      "tree": "e8f25e1f08414ed5cd09442b9e85e6049e965276",
      "parents": [
        "c4a35008508eb8eeada2b9a594c88c46e20a6756"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:35:31 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:35:31 2025 +0000"
      },
      "message": "Don\u0027t test for False; drop unused statement\n"
    },
    {
      "commit": "c4a35008508eb8eeada2b9a594c88c46e20a6756",
      "tree": "1999df83ebbedc8eaaf9ba4fa96bfbd7c3a7e1be",
      "parents": [
        "82370439ab70bb999742502e393ad9f49f15a738"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:33:38 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:33:38 2025 +0000"
      },
      "message": "import should come at top of modules\n"
    },
    {
      "commit": "82370439ab70bb999742502e393ad9f49f15a738",
      "tree": "4a1af864f101952044312b1131460a44a96dac9b",
      "parents": [
        "f2c910a25097e11230e79570d381b3e547fe942c"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:33:04 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:33:04 2025 +0000"
      },
      "message": "Ignore warning re import not at top of module\n\nThese cannot be earlier\n"
    },
    {
      "commit": "f2c910a25097e11230e79570d381b3e547fe942c",
      "tree": "2423f8cb67f1bd90c0afee33cffcc1b0cde6343a",
      "parents": [
        "8f80ed8e85d0ef94b8fda1d4434dbf9626e553e1"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:31:45 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:31:45 2025 +0000"
      },
      "message": "Unused\n"
    },
    {
      "commit": "8f80ed8e85d0ef94b8fda1d4434dbf9626e553e1",
      "tree": "1cf464a4a57f8b1278ab4f2e4110772d14497055",
      "parents": [
        "ace70fa16eeab43b903e70687064d255dd829c52"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:31:07 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 21:31:07 2025 +0000"
      },
      "message": "Fix placement of negated condtions\n\nif not xyz in \u003d\u003e if xyz not in\nif not xyz is None \u003d\u003e if xyz is not None\n"
    },
    {
      "commit": "ace70fa16eeab43b903e70687064d255dd829c52",
      "tree": "481a7afe84abd65e18220b004443e6e6d5952bf7",
      "parents": [
        "b9ce9826557f9d83b43e5a9f6e72aee68f100e0b"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 13:19:25 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 13:19:25 2025 +0000"
      },
      "message": "Bump server version\n"
    },
    {
      "commit": "b9ce9826557f9d83b43e5a9f6e72aee68f100e0b",
      "tree": "d49394c8866060b35b98b9d27e369244756887a8",
      "parents": [
        "ab5b8bafe1e058ff379ea56d4ed29d19fe906d35"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 13:18:23 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Thu Feb 27 13:18:23 2025 +0000"
      },
      "message": "Docstrings need to be single strings\n"
    },
    {
      "commit": "ab5b8bafe1e058ff379ea56d4ed29d19fe906d35",
      "tree": "5394be7e0a20ef4683292eb0174aa4374c9de4f3",
      "parents": [
        "99659a5ce8c3c26d7f99cf80c86270d477933a45"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Feb 23 10:59:19 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Feb 23 10:59:19 2025 +0000"
      },
      "message": "Check versions last\n"
    },
    {
      "commit": "fca3121cbb7ea072cd7d83ea058715947cd2894b",
      "tree": "c8070e9fff0688bac67a7bc6d470f069df1a289a",
      "parents": [
        "0f78e6a83c56814e29d7cc117830eb77588fb9d1"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Feb 23 10:57:08 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Feb 23 10:57:08 2025 +0000"
      },
      "message": "Run version tests last\n"
    },
    {
      "commit": "0f78e6a83c56814e29d7cc117830eb77588fb9d1",
      "tree": "d5f151a0dc1f5e3e91f548b07da266a417d57ba2",
      "parents": [
        "a1b4bd782216dab10dca16b407ff3d926e30a5af"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Feb 23 10:56:11 2025 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Feb 23 10:56:11 2025 +0000"
      },
      "message": "Bump version\n"
    },
    {
      "commit": "99659a5ce8c3c26d7f99cf80c86270d477933a45",
      "tree": "f014dfa9ea4f1dade8c0e217dbfa0cf93b1a975d",
      "parents": [
        "e54db015256a98063359d6d9345ba19c46485414"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sat Feb 01 09:27:58 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 01 09:27:58 2025 +0000"
      },
      "message": "Test all versions"
    },
    {
      "commit": "e54db015256a98063359d6d9345ba19c46485414",
      "tree": "99f5969f5f9f013a50bf7d140c90477d82eb93a3",
      "parents": [
        "3e28ffaae6250f0e33ae0525ea94449fdc63cb11"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebbASF@users.noreply.github.com",
        "time": "Sat Feb 01 09:17:39 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 01 09:17:39 2025 +0000"
      },
      "message": "Update unittest.yml"
    },
    {
      "commit": "3f342197a40023d96a62eacc41a04a7fdc60b538",
      "tree": "58305bc6ec75186e60915ad5991a0168b38e5454",
      "parents": [
        "3e28ffaae6250f0e33ae0525ea94449fdc63cb11"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sat Feb 01 05:14:49 2025 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Feb 01 05:14:49 2025 +0000"
      },
      "message": "Update certifi requirement from ~\u003d2024.2.2 to ~\u003d2025.1.31\n\nUpdates the requirements on [certifi](https://github.com/certifi/python-certifi) to permit the latest version.\n- [Commits](https://github.com/certifi/python-certifi/compare/2024.02.02...2025.01.31)\n\n---\nupdated-dependencies:\n- dependency-name: certifi\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "3e28ffaae6250f0e33ae0525ea94449fdc63cb11",
      "tree": "763d3a71e97735bb202f44d559a206539f6683e0",
      "parents": [
        "57aa71d730e08d304f4d15cfa804263fd3c9cad6"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 14:10:39 2024 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 14:10:39 2024 +0000"
      },
      "message": "Missing types\n"
    },
    {
      "commit": "57aa71d730e08d304f4d15cfa804263fd3c9cad6",
      "tree": "807c45307596d7bed60550b56a352b9a84fbc668",
      "parents": [
        "9c6ed12b6bf687e6645196abc1c040fe25d6df97"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 14:08:16 2024 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 14:08:16 2024 +0000"
      },
      "message": "Yaml syntax\n"
    },
    {
      "commit": "57101ae34bc17e6bd21fd7e9433233416b7aa00b",
      "tree": "c4d5d4407c1b64acfc54d3afe2f364e1a3072bfe",
      "parents": [
        "9c6ed12b6bf687e6645196abc1c040fe25d6df97"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sun Dec 08 14:07:15 2024 +0000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Dec 08 14:07:15 2024 +0000"
      },
      "message": "Update multipart requirement from ~\u003d0.2.1 to ~\u003d1.2.1\n\nUpdates the requirements on [multipart](https://github.com/defnull/multipart) to permit the latest version.\n- [Release notes](https://github.com/defnull/multipart/releases)\n- [Changelog](https://github.com/defnull/multipart/blob/master/CHANGELOG.rst)\n- [Commits](https://github.com/defnull/multipart/compare/v0.2.1...v1.2.1)\n\n---\nupdated-dependencies:\n- dependency-name: multipart\n  dependency-type: direct:production\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e"
    },
    {
      "commit": "9c6ed12b6bf687e6645196abc1c040fe25d6df97",
      "tree": "f2cf7f3da613d37d71bdd04dd66d3a5d494a1faf",
      "parents": [
        "401518ccce1e86e3627f99f82388e2c0fd9071ae"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 14:06:14 2024 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 14:06:14 2024 +0000"
      },
      "message": "Quieten dependabot\n"
    },
    {
      "commit": "401518ccce1e86e3627f99f82388e2c0fd9071ae",
      "tree": "d2cb63413e530bcc73dd18b71e376f59feacfa7e",
      "parents": [
        "d9306e389d5566cc22f9de3d2efd0c96638f10d9"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 13:48:26 2024 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 13:48:26 2024 +0000"
      },
      "message": "Run mypy on test folder\n"
    },
    {
      "commit": "d9306e389d5566cc22f9de3d2efd0c96638f10d9",
      "tree": "78d93104b185bcb9f75b34d62119e383c1367183",
      "parents": [
        "4a33e024678bf1e5306bda8d84e12330243823e6"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 12:09:09 2024 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 12:09:09 2024 +0000"
      },
      "message": "Suppress error\n"
    },
    {
      "commit": "4a33e024678bf1e5306bda8d84e12330243823e6",
      "tree": "8a173c9accf1d50c153cc629841a38a6531d428d",
      "parents": [
        "1fc599949be789aefc426c09eca9cf0c8110ffd6"
      ],
      "author": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 11:59:05 2024 +0000"
      },
      "committer": {
        "name": "Sebb",
        "email": "sebb@apache.org",
        "time": "Sun Dec 08 11:59:05 2024 +0000"
      },
      "message": "--install-types is deprecated; simplify by using parent dir\n"
    }
  ],
  "next": "1fc599949be789aefc426c09eca9cf0c8110ffd6"
}
