)]}'
{
  "log": [
    {
      "commit": "567cec69d483704f173260daf9a4259f38d7fcbc",
      "tree": "ef0c5b2b358e695570f094384225ea356fca8682",
      "parents": [
        "89f5f0751d2c52cf677c50afd458769553d499a8"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sun Aug 09 15:24:26 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Aug 09 15:24:26 2026 -0600"
      },
      "message": "Remove outdated System.Text.Json pinned reference (#1436)"
    },
    {
      "commit": "89f5f0751d2c52cf677c50afd458769553d499a8",
      "tree": "cd9a2499737378b0dd8e6a86132942afc8491ff5",
      "parents": [
        "ede62021d3a97a124b321d1da5721045d9301174"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sun Aug 09 15:02:59 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Aug 09 15:02:59 2026 -0600"
      },
      "message": "Bump Microsoft.Extensions parent version to 10.0.10 (#1435)"
    },
    {
      "commit": "ede62021d3a97a124b321d1da5721045d9301174",
      "tree": "6fbb505b71d76a2f06ff0264459282caf34bdafb",
      "parents": [
        "29f50d66e51b546cc000f84f8ea061600a9f3c8c"
      ],
      "author": {
        "name": "w3lld1",
        "email": "42353747+w3lld1@users.noreply.github.com",
        "time": "Wed Aug 05 05:19:26 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Aug 04 20:19:26 2026 -0600"
      },
      "message": "fix(docs): keep right menu below sticky header (#1425)\n\nSigned-off-by: w3lld1 \u003c42353747+w3lld1@users.noreply.github.com\u003e"
    },
    {
      "commit": "29f50d66e51b546cc000f84f8ea061600a9f3c8c",
      "tree": "c2a2de7032d8f0da7e07c37121301959164be6fa",
      "parents": [
        "60d98643ed13bec6339a3ddead272ffdceae9f63"
      ],
      "author": {
        "name": "Mario Noack",
        "email": "127193505+marionoack@users.noreply.github.com",
        "time": "Sun Aug 02 04:03:27 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 01 20:03:27 2026 -0600"
      },
      "message": "Reduce lock scope in `FSDirectory.DeleteFile`, #1428 (#1429)"
    },
    {
      "commit": "60d98643ed13bec6339a3ddead272ffdceae9f63",
      "tree": "b048a1a3fc181aef6cbfeffe4815304874f07b7f",
      "parents": [
        "13c5105ed66bc8cbaad99f6ba2d54820a4e0803e"
      ],
      "author": {
        "name": "tomatotomata",
        "email": "Ahmadalgaidy@hotmail.com",
        "time": "Sun Aug 02 05:02:30 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Aug 01 20:02:30 2026 -0600"
      },
      "message": "docs: explain omitted Sandbox query types (#1430)"
    },
    {
      "commit": "13c5105ed66bc8cbaad99f6ba2d54820a4e0803e",
      "tree": "21b24285edf9e6ebc47978eefdce624ea6e29b39",
      "parents": [
        "034c009d260a455e7a54385820daea4fd67ba28a"
      ],
      "author": {
        "name": "Nehan Khan Pathan",
        "email": "pathannehan26@gmail.com",
        "time": "Tue Jul 21 08:17:35 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 20 20:47:35 2026 -0600"
      },
      "message": "Add client-side async API for replication (IAsyncReplicator) (#1182)\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e"
    },
    {
      "commit": "034c009d260a455e7a54385820daea4fd67ba28a",
      "tree": "16e450b4ea2a91a86796273354b2b33edb5b4906",
      "parents": [
        "69431e7c9e7db80c79d9c769555fc122153b8599"
      ],
      "author": {
        "name": "Shashwat Sinha",
        "email": "76537375+ShashwatSinha03@users.noreply.github.com",
        "time": "Fri Jul 10 18:45:05 2026 +0530"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jul 10 07:15:05 2026 -0600"
      },
      "message": "fix(ReplicatorTestCase): Replace deprecated WebHostBuilder with HostBuilder (#1411) (#1416)\n\nSigned-off-by: Shashwat Sinha \u003cshashwat.sinha2003@gmail.com\u003e"
    },
    {
      "commit": "69431e7c9e7db80c79d9c769555fc122153b8599",
      "tree": "9b8ce5006f7771751e229144312d90387275419c",
      "parents": [
        "8a51154dfff75ae2f65531eadb514e7f3985bce4"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 23:05:16 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 07:05:16 2026 -0600"
      },
      "message": "Fix website build job to only run if it is executing on the main upstream repository (#1418)"
    },
    {
      "commit": "8a51154dfff75ae2f65531eadb514e7f3985bce4",
      "tree": "94485a3d8cdec2e669faab7b69267603da8ee070",
      "parents": [
        "9c6f8cb22f4f1fb7f406e25fbc9de86e6bbcaa2c"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 23:04:11 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jul 09 07:04:11 2026 -0600"
      },
      "message": "Remove duplicate entry from .gitignore (#1417)"
    },
    {
      "commit": "9c6f8cb22f4f1fb7f406e25fbc9de86e6bbcaa2c",
      "tree": "a0fceb8987d1ebdafd33463956aa3dc94df720cb",
      "parents": [
        "f7678bdbf3cfed59b287672319cfeb07dac318a0"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 07:07:44 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 15:07:44 2026 -0600"
      },
      "message": "Clean up and fix Python and Shell shebang lines (#1415)"
    },
    {
      "commit": "f7678bdbf3cfed59b287672319cfeb07dac318a0",
      "tree": "491a7a99dfccc46336dc4d2c6691edd1f5e7298e",
      "parents": [
        "af9c814f6b89d0cd4d28d8f41e6bcfeaa2dde277"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 07:07:04 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 15:07:04 2026 -0600"
      },
      "message": "misc: fix typos (#1404)\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e"
    },
    {
      "commit": "af9c814f6b89d0cd4d28d8f41e6bcfeaa2dde277",
      "tree": "5e2f1be4f601c1c72efa21621a9999f7d6facd79",
      "parents": [
        "b1e88ae2b9f42ffec2082f4a659ee0386ebaf5e5"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 07:06:46 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 15:06:46 2026 -0600"
      },
      "message": "Enable markdownlint rule MD047; Auto fix end of files with prek (#1412)"
    },
    {
      "commit": "b1e88ae2b9f42ffec2082f4a659ee0386ebaf5e5",
      "tree": "db7c7fd0fe74b32794c409e670bd412f1e11f730",
      "parents": [
        "046bca9b1a18e0703cee75d540d901e6790c796c"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 00:22:28 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 08:22:28 2026 -0600"
      },
      "message": "[CI] Add prek hook `yamllint`; Minor YAML formatting (#1403)"
    },
    {
      "commit": "046bca9b1a18e0703cee75d540d901e6790c796c",
      "tree": "bb72f336e37e905178d6b8c093984c592299a75c",
      "parents": [
        "1cfe9657f72abf340f796090719b52c00b66520e"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 00:20:46 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 08:20:46 2026 -0600"
      },
      "message": "[CI] Add prek hook `end-of-file-fixer`; Auto fix C# files (#1405)"
    },
    {
      "commit": "1cfe9657f72abf340f796090719b52c00b66520e",
      "tree": "0c37cb46e592dee675d68b82ca6575e3dcf570e9",
      "parents": [
        "04f75067f1a34fe39d85af57fe5adeb0fe526822"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 00:20:02 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 08:20:02 2026 -0600"
      },
      "message": "Enable markdownlint rule MD038/no-space-in-code Spaces inside code sp… (#1406)"
    },
    {
      "commit": "04f75067f1a34fe39d85af57fe5adeb0fe526822",
      "tree": "6b3227448d5446960de10ac8202ab1c3a3bf5592",
      "parents": [
        "736554ef592c0e1daf59c9ec87d512216186456a"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jul 09 00:17:53 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jul 08 08:17:53 2026 -0600"
      },
      "message": "Add docs on the `prek` hook system; Configure `doctoc` hook (#1410)"
    },
    {
      "commit": "736554ef592c0e1daf59c9ec87d512216186456a",
      "tree": "6f70768f80e1f683351cf4ba1b3f31848c80c8ca",
      "parents": [
        "2cde8b5e9f84ec5f8f4428cd979693093c45c74f"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Sat Jul 04 22:03:45 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jul 04 22:03:45 2026 +0700"
      },
      "message": "Fix for `DebugAssertException` detection during testing + `VIntUtils` length assertions (#1400)"
    },
    {
      "commit": "2cde8b5e9f84ec5f8f4428cd979693093c45c74f",
      "tree": "a4405f421bea401b24677ae7fa58a8c9299830fe",
      "parents": [
        "cd6dfef5524da1fd82d52c0022c178d03f99ec3f"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sun Jun 28 11:18:27 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 29 00:18:27 2026 +0700"
      },
      "message": "Fix random TestRandomChains failures by excluding broken-offsets producers, #1072 (#1348)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "cd6dfef5524da1fd82d52c0022c178d03f99ec3f",
      "tree": "3662e22bee0bd580e04f83f2b016e21523899776",
      "parents": [
        "08730de8fcee9a00bce46fa18579d2d5dfda0780"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Thu Jun 25 00:34:09 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 25 00:34:09 2026 +0700"
      },
      "message": "Website: 4.8.0 beta00018 release updates (#1395)"
    },
    {
      "commit": "08730de8fcee9a00bce46fa18579d2d5dfda0780",
      "tree": "a7695a00c44fae75b8fd529ff62ebb13423a517b",
      "parents": [
        "53a994cb1a9c64059939a767f0699fc11a4f7744"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 24 22:56:41 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 22:56:41 2026 +0700"
      },
      "message": "`.asf.yaml`: Enable rebase and merge option for PRs. (#1393)"
    },
    {
      "commit": "53a994cb1a9c64059939a767f0699fc11a4f7744",
      "tree": "58cc3d4732c04fb24dd7006520a87b871ea871b3",
      "parents": [
        "3606afdd968d06e212374572277b46d870e83aa3"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 24 20:24:34 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 20:24:34 2026 +0700"
      },
      "message": "`Lucene-Net-Website.yml`: Don\u0027t persist checkout credentials on PR branch (#1392)"
    },
    {
      "commit": "3606afdd968d06e212374572277b46d870e83aa3",
      "tree": "9bce5c18fed0a52e2e261e5db04eb229d5707b5b",
      "parents": [
        "3fe4c42f8f39db75db7bb0613c3cd0cc031b8930"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 24 23:19:31 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 07:19:31 2026 -0600"
      },
      "message": "ci(performance): add prek hook priorities for parallel execution (#1379)\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e"
    },
    {
      "commit": "3fe4c42f8f39db75db7bb0613c3cd0cc031b8930",
      "tree": "54ca56da063d82d8f0884c607429b61e9c1f23a0",
      "parents": [
        "c5c7942974857e0705c3c5640a5116ad6c5e27bd"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Wed Jun 24 06:43:43 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 06:43:43 2026 -0600"
      },
      "message": "Implement IsTestThread to fix flaky TestFlushExceptions (#1382)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "c5c7942974857e0705c3c5640a5116ad6c5e27bd",
      "tree": "49c1e8cff0b3b0af915dd5d75bfd17414251fd74",
      "parents": [
        "03d58e3c771ab36eed751ab865386adbc6798b8b"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 24 22:35:12 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 06:35:12 2026 -0600"
      },
      "message": "[CI] Add pre-commit hook `markdownlint` with basic config (#1391)"
    },
    {
      "commit": "03d58e3c771ab36eed751ab865386adbc6798b8b",
      "tree": "4dd2abf9b44179dcdcabe1582e739d4b3a37994e",
      "parents": [
        "d7af24e8427e35c2fb911f044b3884c5eb5f15fb"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 24 15:19:09 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 12:19:09 2026 +0700"
      },
      "message": "misc: fix typos (#1388)"
    },
    {
      "commit": "d7af24e8427e35c2fb911f044b3884c5eb5f15fb",
      "tree": "89e9c48551e55ac8d57178316b23c00d49bcf25c",
      "parents": [
        "33c44be2fb2158cdf75e9111047cf331553122f2"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 24 12:00:22 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 12:00:22 2026 +0700"
      },
      "message": "Added `SpanTools.ValueStringBuilder.Generator` Reference (#1390)"
    },
    {
      "commit": "33c44be2fb2158cdf75e9111047cf331553122f2",
      "tree": "c6ad01c56acbc8eb663392ab7251cb4986c63d59",
      "parents": [
        "fd7ed5c530ea99d2ee49f8d18b1987bde4ce733a"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 24 11:40:55 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 11:40:55 2026 +0700"
      },
      "message": "Updated Docs and Website Automation Trigger + Procedures (#1386)\n\nCo-authored-by: John Bampton \u003cjbampton@users.noreply.github.com\u003e"
    },
    {
      "commit": "fd7ed5c530ea99d2ee49f8d18b1987bde4ce733a",
      "tree": "3064b8801c19404bc206bde598121f1cb35a06c8",
      "parents": [
        "0bd234df6a5b145c68f9b1bb946d513eac7d972d"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 24 07:33:24 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 23 15:33:24 2026 -0600"
      },
      "message": "misc: fix typos (#1385)"
    },
    {
      "commit": "0bd234df6a5b145c68f9b1bb946d513eac7d972d",
      "tree": "0ddcdeec0f1cb8b796478ad833e6b74365d09578",
      "parents": [
        "9566bececaf21b17fd863e97cc9d2879f1e8934f"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 24 05:19:59 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 23 13:19:59 2026 -0600"
      },
      "message": "misc: fix typos (#1384)"
    },
    {
      "commit": "9566bececaf21b17fd863e97cc9d2879f1e8934f",
      "tree": "2b1d7996fcfebeb723420b17893edae23cdc2b5e",
      "parents": [
        "b135f056b19c3769cd6136c21b8b31b56b523979"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 24 02:01:28 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 24 02:01:28 2026 +0700"
      },
      "message": ".asf.yaml: Added docs/* to Maintenance Branch Protection rules, since… (#1383)"
    },
    {
      "commit": "b135f056b19c3769cd6136c21b8b31b56b523979",
      "tree": "17549fd4ec0e48f9edac03ddda09fbae0264ce43",
      "parents": [
        "3602621aaabd65dd96186c7089a7689bbef9b20f"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 23 09:03:08 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 23 09:03:08 2026 -0600"
      },
      "message": "Remove unnecessary `string.AsSpan()` calls as of C# 14, #1340 (#1374)"
    },
    {
      "commit": "3602621aaabd65dd96186c7089a7689bbef9b20f",
      "tree": "de4d4dd4d109b810148162ce978f75b316c90ea2",
      "parents": [
        "ff37677aa6b579bcc799d1dfc8198b722b5de933"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 23 09:02:42 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 23 09:02:42 2026 -0600"
      },
      "message": "Implement IBufferWriter\u003cchar\u003e in OpenStringBuilder and CharTermAttribute, #1315 (#1339)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "ff37677aa6b579bcc799d1dfc8198b722b5de933",
      "tree": "7e8e76f200a2f106bd806b745eafed298669a0ab",
      "parents": [
        "2e3cf855185c92cf781282ae803d7b06475a174c"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Tue Jun 23 05:21:20 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 16:21:20 2026 -0600"
      },
      "message": "Bumped J2N to 2.2.0-alpha-0048 (#1378)"
    },
    {
      "commit": "2e3cf855185c92cf781282ae803d7b06475a174c",
      "tree": "340cb0dbdd95bf488143f70f701a140693f3be79",
      "parents": [
        "3dbdaefc01c818f629432e973abb490ea2bc92c9"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 23 06:37:35 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 14:37:35 2026 -0600"
      },
      "message": "Clean up and regenerate codespell.txt ignored words list (#1377)"
    },
    {
      "commit": "3dbdaefc01c818f629432e973abb490ea2bc92c9",
      "tree": "0be80e431d079925131b6cbf4be7738fbd666efb",
      "parents": [
        "e6dd61a932a4838c2a9d2b6edce419e959b0b886"
      ],
      "author": {
        "name": "Victor Wilson",
        "email": "victor.wilson@gmail.com",
        "time": "Mon Jun 22 12:43:58 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 11:43:58 2026 -0600"
      },
      "message": "Fix FSDirectory fsync race on output close (#1292)\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "e6dd61a932a4838c2a9d2b6edce419e959b0b886",
      "tree": "382c47812017dee54a7846d9f6187eccf13db5f9",
      "parents": [
        "cba1a56b588e870eb537aaa19c06610d5c09f7a4"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 23 02:41:36 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 10:41:36 2026 -0600"
      },
      "message": "misc: fix spelling (#1365)"
    },
    {
      "commit": "cba1a56b588e870eb537aaa19c06610d5c09f7a4",
      "tree": "ee7387402f50eca9705880d34ecabfe30b358493",
      "parents": [
        "f7f8c2340a0b65d68b6d71b8d268f9f2e3251799"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 23 02:39:46 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 10:39:46 2026 -0600"
      },
      "message": "Add pre-commit hook `doctoc` to auto generate README table of contents (#1366)"
    },
    {
      "commit": "f7f8c2340a0b65d68b6d71b8d268f9f2e3251799",
      "tree": "6e4fdc34c275198f1ad93c8b8ebab4cbefdf98ec",
      "parents": [
        "60748509eb9544fb7f6898adc66d5cecd5bf88a2"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 23 02:37:40 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 10:37:40 2026 -0600"
      },
      "message": "[CI] Add Python bandit security linter as a pre-commit hook (#1370)"
    },
    {
      "commit": "60748509eb9544fb7f6898adc66d5cecd5bf88a2",
      "tree": "75424d32404c5febd9fcb0c7daffdb3a8ec14a4a",
      "parents": [
        "ba1b050a3dee6bae6a1218c23fced1492e38a76d"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 23 02:35:46 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 22 10:35:46 2026 -0600"
      },
      "message": "website: add missing `_appName` docfx config entries (#1372)"
    },
    {
      "commit": "ba1b050a3dee6bae6a1218c23fced1492e38a76d",
      "tree": "bbcc2b31297e6f55a45f7fe320f34fa01ecb73cb",
      "parents": [
        "0a16c76e6b596afe726fa5f0d6e250f3fdbe72f5"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Thu Jun 18 11:40:51 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 18 11:40:51 2026 -0600"
      },
      "message": "Fix GroupingSearch.TotalGroupCount null when groupOffset exceeds group count, #1362 (#1363)"
    },
    {
      "commit": "0a16c76e6b596afe726fa5f0d6e250f3fdbe72f5",
      "tree": "755943412738eb3228d20b51cbec1adef8610801",
      "parents": [
        "a6f4657f3e6ab71411fc2b719be1d265bab19b33"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Wed Jun 17 06:19:20 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 17 06:19:20 2026 -0600"
      },
      "message": "Fix debug asserts and docs for VIntUtils, #1279 (#1360)"
    },
    {
      "commit": "a6f4657f3e6ab71411fc2b719be1d265bab19b33",
      "tree": "00c02bd18dcf75fdc0db483e60bd8db7649d5375",
      "parents": [
        "7b7314634f58952d7e2752e589391eeac22fba78"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 14:41:19 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 14:41:19 2026 -0600"
      },
      "message": "Validate PatternParser DTDs against expected name (#1358)"
    },
    {
      "commit": "7b7314634f58952d7e2752e589391eeac22fba78",
      "tree": "0d12ff802cc6a065e4bb687bf69780187b2d8d9d",
      "parents": [
        "b64bc6518f20f0e3ba080fbdafcf65cdc12f919a"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 14:37:02 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 14:37:02 2026 -0600"
      },
      "message": "Validate file paths for FSDirectory and Replicator (#1357)"
    },
    {
      "commit": "b64bc6518f20f0e3ba080fbdafcf65cdc12f919a",
      "tree": "84addb06ac8b054e6117b4adf9426cb044aa8121",
      "parents": [
        "836755219b4ffdfa7b752879cf7940bdb89271d6"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 13:58:42 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 13:58:42 2026 -0600"
      },
      "message": "Update .asf.yaml for release branch PRs (#1356)"
    },
    {
      "commit": "836755219b4ffdfa7b752879cf7940bdb89271d6",
      "tree": "6f0e54c86d1ca0d073728604be1a5c2722c7587a",
      "parents": [
        "ba8f0497ad5d8c63984c6859e2369ea37b660ece"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 13:35:39 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 13:35:39 2026 -0600"
      },
      "message": "Update .asf.yaml for release branch rules (#1355)"
    },
    {
      "commit": "ba8f0497ad5d8c63984c6859e2369ea37b660ece",
      "tree": "29f3b2efb575ea62464d8ff4447ea31ddcc28418",
      "parents": [
        "e67da5b44fde6476d6728c4917fc7952fa4860b6"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 13:05:56 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 13:05:56 2026 -0600"
      },
      "message": "Finish port of Lucene.Net.Collation functionality, #1343 (#1347)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "e67da5b44fde6476d6728c4917fc7952fa4860b6",
      "tree": "afeb17678f6bb2322667a018f93c158fddf312dd",
      "parents": [
        "34284735ea8c30ad3c27171b88138fa32781ebc8"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 12:40:43 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 12:40:43 2026 -0600"
      },
      "message": "Performance improvements for DataInput/DataOutput and bit-shifting logic, #1279 (#1345)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "34284735ea8c30ad3c27171b88138fa32781ebc8",
      "tree": "40bbf616081617d5f1b6baa0ab9a383849b09248",
      "parents": [
        "7bceef42818e51640e93c9e7f965565dfccf0576"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 08:46:48 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 08:46:48 2026 -0600"
      },
      "message": "Reduce Azure DevOps Windows parallelism from 8 to 2, #1350 (#1354)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "7bceef42818e51640e93c9e7f965565dfccf0576",
      "tree": "af1a626fb2b66c963643dfb72a5328b93f0d6b98",
      "parents": [
        "cada5e7ad805cebc105bb844424f19de7fb6378f"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Tue Jun 16 21:28:03 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 21:28:03 2026 +0700"
      },
      "message": "Bumped ICU4N to 60.1.0-alpha.440 (#1353)"
    },
    {
      "commit": "cada5e7ad805cebc105bb844424f19de7fb6378f",
      "tree": "d8b44b1aa8b77a1d836ac5ea89938339ea1f2220",
      "parents": [
        "e9ade1fc33f0e2a02e7c77a77854a7046084bad8"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue Jun 16 07:16:00 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 16 07:16:00 2026 -0600"
      },
      "message": "Use C# 14 and fix field warnings/errors, #1340 (#1352)"
    },
    {
      "commit": "e9ade1fc33f0e2a02e7c77a77854a7046084bad8",
      "tree": "cbd3f1c315eaada226229e8dc3d5b64a82cf25d2",
      "parents": [
        "e2e5d9738588d50f014aaa9c9559f5586b7cf0b8"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Mon Jun 15 09:11:59 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 15 09:11:59 2026 -0600"
      },
      "message": "Add required_pull_request_reviews section to .asf.yaml, #1321 (#1349)"
    },
    {
      "commit": "e2e5d9738588d50f014aaa9c9559f5586b7cf0b8",
      "tree": "397bc992efce59ffc428981e86281df3857e269e",
      "parents": [
        "53cf888fbb3b630bb1c44464f40a5c6ed846f12c"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sat Jun 13 07:51:13 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jun 13 07:51:13 2026 -0600"
      },
      "message": "Add FileShare.Delete to SimpleFSDirectory and FSIndexOutput, #1283 (#1344)"
    },
    {
      "commit": "53cf888fbb3b630bb1c44464f40a5c6ed846f12c",
      "tree": "86ef13e5b7d42d77e4637a1d1f0eb1cdc300ac97",
      "parents": [
        "80b2a66f74f15f5596a2e2a03078038269cf87d1"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Fri Jun 12 16:24:33 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Jun 13 05:24:33 2026 +0700"
      },
      "message": "Scan TestFramework assembly in analysis discovery tests, #1126 (#1333)\n\nCo-authored-by: Claude Opus 4.8 (1M context) \u003cnoreply@anthropic.com\u003e\nCo-authored-by: Shad Storhaug \u003cshad@shadstorhaug.com\u003e"
    },
    {
      "commit": "80b2a66f74f15f5596a2e2a03078038269cf87d1",
      "tree": "1668b8ebe76ab994c6a0bea6015d1e52eea495c5",
      "parents": [
        "27ee39c0478102fcf94b7e055f296d6920dee920"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Fri Jun 12 04:59:59 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 12:59:59 2026 -0600"
      },
      "message": "[CI] Pin all pre-commit hooks to sha for supply chain security (#1332)"
    },
    {
      "commit": "27ee39c0478102fcf94b7e055f296d6920dee920",
      "tree": "7a9407c10eca5dad15491ef0a7cbb4c0824e52bc",
      "parents": [
        "b38edb72616fa16e10c83649bd775178bcc269c5"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Fri Jun 12 04:57:30 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 12:57:30 2026 -0600"
      },
      "message": "misc: fix grammar and spelling (#1335)"
    },
    {
      "commit": "b38edb72616fa16e10c83649bd775178bcc269c5",
      "tree": "0c615b2d147f0a02e1e551a08cfc29b861aa1c1c",
      "parents": [
        "7b7cbb0d49670c0848c062384cf0a1f01d5875e4"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 16:28:40 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 11 13:28:40 2026 +0700"
      },
      "message": "Add CITATION file to help users correctly cite the Lucene.NET software (#1330)"
    },
    {
      "commit": "7b7cbb0d49670c0848c062384cf0a1f01d5875e4",
      "tree": "d8ce1481b05811518fc7ed7ceac31955f044de5c",
      "parents": [
        "04395f4e80746cc5f52d5644a15aeb1604641f7c"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 08:49:52 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 16:49:52 2026 -0600"
      },
      "message": "website: fix grammar and spelling in Markdown files (#1334)"
    },
    {
      "commit": "04395f4e80746cc5f52d5644a15aeb1604641f7c",
      "tree": "7bf4d5c4f3f477f4b4a9481d31e1a82f6746b4e3",
      "parents": [
        "4c9efd7ecbc3122605760f5d0feef9fa1b17d563"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 05:53:43 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 13:53:43 2026 -0600"
      },
      "message": "[CI] Add official pre-commit hook `detect-aws-credentials` (#1328)"
    },
    {
      "commit": "4c9efd7ecbc3122605760f5d0feef9fa1b17d563",
      "tree": "1e77e9910c6a9c8a55970ddba733607e0bc25189",
      "parents": [
        "ff956eeb1881d4cdc4cd8da0db765459da77b194"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 05:51:39 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 13:51:39 2026 -0600"
      },
      "message": "[CI] Add pre-commit hook gitleaks secret scanner (#1320)"
    },
    {
      "commit": "ff956eeb1881d4cdc4cd8da0db765459da77b194",
      "tree": "ea29327fd479c170c715a394df0a210e4b705531",
      "parents": [
        "bfa05f89d06bcc3ccc7d89e8318f952f7d051f8e"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 05:48:21 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 13:48:21 2026 -0600"
      },
      "message": "misc: fix typos (#1329)"
    },
    {
      "commit": "bfa05f89d06bcc3ccc7d89e8318f952f7d051f8e",
      "tree": "95f94240c67336a47d803efa79bd92abef2c28ff",
      "parents": [
        "f7b3913e7bdb9d066dfadb8c1a1c41c3cb4d04e4"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 01:24:29 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 09:24:29 2026 -0600"
      },
      "message": "[CI] Switch pre-commit to use ASF approved prek-action (#1318)"
    },
    {
      "commit": "f7b3913e7bdb9d066dfadb8c1a1c41c3cb4d04e4",
      "tree": "e59c002096cb4c50ce7a0f7409551793e51e0a77",
      "parents": [
        "fd356f70cda1484b37f7df272e4ffc3440c17ce1"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 00:50:20 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 08:50:20 2026 -0600"
      },
      "message": "[CI] Pin all actions to latest sha (#1326)\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e\nCo-authored-by: Claude Opus 4.8 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "fd356f70cda1484b37f7df272e4ffc3440c17ce1",
      "tree": "f1766968c855ef345c19357581b634afb7b6b8f4",
      "parents": [
        "ab189988a7dbea3349fd83c6dffa6e8a9dd87916"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Thu Jun 11 00:20:32 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 08:20:32 2026 -0600"
      },
      "message": "Update copyright year in NOTICE.txt (#1317)"
    },
    {
      "commit": "ab189988a7dbea3349fd83c6dffa6e8a9dd87916",
      "tree": "61c89774c6d7518bcd1f01e585395e655aaf95f2",
      "parents": [
        "a27bda471e8850ef5f712a5aadbe8a2d2e011e1e"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 10 21:19:08 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 08:19:08 2026 -0600"
      },
      "message": "Updated copyright year to 2026 in LICENSE.txt (#1323)"
    },
    {
      "commit": "a27bda471e8850ef5f712a5aadbe8a2d2e011e1e",
      "tree": "31ff68beab9a811006545e41f3f0d6cfb239953e",
      "parents": [
        "dc57c2e9ca4f67d6724339cc01c1c3444f2e2d93"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Wed Jun 10 08:18:35 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jun 10 08:18:35 2026 -0600"
      },
      "message": "Upgrade .NET SDK in Azure DevOps to 10.0.301, #1322 (#1327)"
    },
    {
      "commit": "dc57c2e9ca4f67d6724339cc01c1c3444f2e2d93",
      "tree": "ea8ee75b50d7d8202628d6ae3effec3631074663",
      "parents": [
        "0c15e6da6a6ddf77187cae83a87a4826660f108a"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Wed Jun 10 05:25:07 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 16:25:07 2026 -0600"
      },
      "message": "CI: Upgraded `DownloadPipelineArtifact` to version 2 (#1324)"
    },
    {
      "commit": "0c15e6da6a6ddf77187cae83a87a4826660f108a",
      "tree": "26228423c4b858a41ee5800e81b4b33002d2bd13",
      "parents": [
        "34812b5f01753ac180fac5ee4ac17f1c2c7b77bc"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Jun 10 08:23:58 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 09 16:23:58 2026 -0600"
      },
      "message": "misc: fix typos (#1325)"
    },
    {
      "commit": "34812b5f01753ac180fac5ee4ac17f1c2c7b77bc",
      "tree": "d5c532ca71c49d5af4283a1bab2114a5810d58fb",
      "parents": [
        "7e749cc43c4e496d53ae7cf318840a8c108744f9"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 09 05:00:21 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 13:00:21 2026 -0600"
      },
      "message": "`.asf.yaml`: use a better repository description (#1319)\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e"
    },
    {
      "commit": "7e749cc43c4e496d53ae7cf318840a8c108744f9",
      "tree": "0f0fd1228429b7d1579f453f92c5e4aae30038af",
      "parents": [
        "90fbe041c79259583b00023a76a70fa6e10079a1"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Jun 09 01:09:16 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 09:09:16 2026 -0600"
      },
      "message": "Fix typos (#1316)"
    },
    {
      "commit": "90fbe041c79259583b00023a76a70fa6e10079a1",
      "tree": "fb215843149d130653a35e18d53eb2810b542a3d",
      "parents": [
        "c00eabb1af86a2750d53282437796d937e0a6800"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Mon Jun 08 07:50:16 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 07:50:16 2026 -0600"
      },
      "message": "Guard Commit() in TestTransactions to handle injected I/O failures, #1298 (#1312)\n\nCo-authored-by: Claude Haiku 4.5 \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "c00eabb1af86a2750d53282437796d937e0a6800",
      "tree": "012d7ce71278a72706bf6a24a5b333b6c8040649",
      "parents": [
        "8c57a0f389f1afa783b73a05328e052dea0b768b"
      ],
      "author": {
        "name": "Martin Lindqvist",
        "email": "LindqvistMartin@proton.me",
        "time": "Mon Jun 08 16:10:38 2026 +0300"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 08 07:10:38 2026 -0600"
      },
      "message": "Replace LinkedHashSet\u003cT\u003e with OrderedHashSet\u003cT\u003e, #1272 (#1313)"
    },
    {
      "commit": "8c57a0f389f1afa783b73a05328e052dea0b768b",
      "tree": "4899c82339ad75b7b8b76fde56d4a91a56263702",
      "parents": [
        "640564b521f847924971c3527e0270ddd934fc16"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Fri May 29 06:55:42 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 29 06:55:42 2026 -0600"
      },
      "message": "Throw on invalid offset 0 in LZ4 decompression, #1276 (#1310)\n\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "640564b521f847924971c3527e0270ddd934fc16",
      "tree": "0966790b5c0d744a0f37d931d37fcbc02d59fc82",
      "parents": [
        "ff37ad21156d3ca56de8a6f97b508ecd78a5fe57"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Thu May 28 08:04:36 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 28 08:04:36 2026 -0600"
      },
      "message": "Configure merge buttons to attempt fix to .asf.yaml (#1304)\n\nThe .asf.yaml file is failing with an obscure error message:\r\n\r\n\u003e An error occurred while processing the github feature in .asf.yaml:\r\n\u003e \r\n\u003e Validation failed while creating ruleset \u0027Branch Protection\u0027: Invalid request.\r\n\u003e \r\n\u003e Invalid property /rules/3: data matches no possible input. See `documentation_url`.\r\n\r\nIt appears this error comes from the GitHub API, and basically means that one of the rule configurations is invalid.\r\n\r\nThe ASF YAML docs say that to use require linear history, the squash option must be enabled. I assumed it was by default (because we\u0027ve been using it exclusively), but this is a shot in the dark to be explicit about it. This will also disable the merge and rebase types which we discourage use of in practice. \r\n\r\nAdditionally, I\u0027m adding the `bypass_teams` that was added automatically by Infra\u0027s bot to our other repos, the only other significant difference I could detect.\r\n\r\nIf this doesn\u0027t work, we might need to try removing the `required_` rules and see if that works. Otherwise, I\u0027ll reach out to Infra for help."
    },
    {
      "commit": "ff37ad21156d3ca56de8a6f97b508ecd78a5fe57",
      "tree": "c6731cbe88b6042a53ec05b4ef6c9d12263c4bf0",
      "parents": [
        "774bd8120e6548403fa7b163793ed64135ecfb71"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Fri May 29 00:03:11 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 28 08:03:11 2026 -0600"
      },
      "message": "misc: fix typos (#1308)\n\n* misc: fix typos\n\nGeneral clean up\n\n* Add script to prune suppressions, remove old psake file\n\n---------\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e"
    },
    {
      "commit": "774bd8120e6548403fa7b163793ed64135ecfb71",
      "tree": "19e8d27f411ade88cee73b4082f6c1a2f182b894",
      "parents": [
        "ffbfb36f9227e3acd34b05ec9aa6d8a4854c6c6b"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Wed May 27 21:05:16 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 27 21:05:16 2026 -0600"
      },
      "message": "Update dev analyzers; fix some findings (#1168, #924, #1211, #1097) (#1294)\n\n* Upgrade CodeAnalysis.Dev to 1.0.0-alpha.34\n\n* Upgrade CodeAnalysis.Dev to 1.0.0-alpha.36\n\n* Suppress noisy rules for now\n\n* Fix LuceneDev6001 errors\n\n* Fix LuceneDev4001 and LuceneDev6003 warnings"
    },
    {
      "commit": "ffbfb36f9227e3acd34b05ec9aa6d8a4854c6c6b",
      "tree": "0e204e9beb217c81941a274b083eb5ef44e1158e",
      "parents": [
        "03c5fa66d634b77908160bf6206f1cb7a32d63dd"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Wed May 27 21:04:41 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 27 21:04:41 2026 -0600"
      },
      "message": "Add Lucene1001 / Lucene1002 analyzers for TokenStream contract, #1146 (#1288)\n\n* Add Lucene1001 / Lucene1002 analyzers for TokenStream contract (#1146)\n\nAdds two new public Roslyn analyzers (C# + VB) that surface the\nTokenStream subclassing rules at compile time as warnings instead of\nruntime exceptions:\n\n- Lucene1001: an override of End()/Reset()/Close() on a TokenStream\n  subclass must call the corresponding base method.\n- Lucene1002: a non-abstract Tokenizer subclass must override End()\n  (passes if any class in the hierarchy between the subclass and\n  Tokenizer already provides the override).\n\nBoth analyzers ship with code fix providers. The primary audience is\nconsumers of the library who write their own TokenStream-derived\ntypes — Lucene.NET\u0027s in-tree TokenStream subclasses intentionally\nmatch the upstream Java behavior, which itself does not always call\nsuper.X() in End/Reset/Close. Each in-tree violation is therefore\nsuppressed with [SuppressMessage] and a \"LUCENENET specific\" comment\nthat explains why it matches the Java parent. Two End() overrides\n(PrefixAwareTokenFilter, PrefixAndSuffixAwareTokenFilter) carry an\nadditional \"LUCENENET TODO\" because the upstream Java omission of\nsuper.end() may be a latent bug worth revisiting.\n\nThe test verifier helper now references System.Runtime so analyzer\nfixes that introduce base calls returning void don\u0027t trigger a\nspurious CS0012 in the post-fix compilation check.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* Address Copilot review feedback on Lucene1001/Lucene1002 analyzers\n\n- Lucene1001 CS code fix: emit ThrowStatement (not ExpressionStatement) when\n  converting an expression-bodied `\u003d\u003e throw ...` member, so the produced code\n  is valid C#.\n- Lucene1001 CS + VB analyzers: exclude lambdas, anonymous methods, and (CS)\n  local functions from the base-call scan. A base call inside an uninvoked\n  delegate body should not satisfy the contract.\n- Lucene1002 CS + VB code fixes: use ElasticCarriageReturnLineFeed instead of\n  hardcoded line endings so the formatter normalizes to the document\u0027s\n  convention.\n- DiagnosticVerifier: harden System.Runtime.dll lookup with a\n  TRUSTED_PLATFORM_ASSEMBLIES fallback and a clear error if neither resolves.\n- Tests: add VerifyCSharpFix/VerifyBasicFix coverage for Lucene1002, a\n  VerifyCSharpFix for the Lucene1001 expression-bodied case plus a new\n  throw-expression regression, lambda/local-function exclusion tests for\n  Lucene1001 (CS + VB), and the missing VB indirect-Tokenizer-inheritance\n  test for Lucene1002.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "03c5fa66d634b77908160bf6206f1cb7a32d63dd",
      "tree": "73046e73dd07e4c43d97c1688eacc51b1b3be670",
      "parents": [
        "3f058e29cb6468417f02c8e48abba15fde5e50f2"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Wed May 27 21:00:08 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed May 27 21:00:08 2026 -0600"
      },
      "message": "Exclude binary fonts and test corpora from editorconfig-checker (#1309)\n\neditorconfig-checker v3.7.0 added stricter pre-decode binary detection.\nGOTHIC.TTF has an uppercase extension that bypasses the case-sensitive\ndefault \\.ttf$ exclude, and two random-text test corpora under\nAnalysis/Core/ contain byte sequences the new detector flags as binary.\n\nAdd both patterns to the Exclude list. The .editorconfig override for\ntest .txt files only unsets formatting rules and cannot silence the\nencoding-detection check."
    },
    {
      "commit": "3f058e29cb6468417f02c8e48abba15fde5e50f2",
      "tree": "0dddbdc9296e055be36834de722399542d6d0ff8",
      "parents": [
        "7177c8b4af0cba14b9124cc1a4487885a305db4f"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed May 20 04:26:51 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 19 12:26:51 2026 -0600"
      },
      "message": "Fix case of Apache License text in ACKNOWLEDGEMENTS.txt (#1307)"
    },
    {
      "commit": "7177c8b4af0cba14b9124cc1a4487885a305db4f",
      "tree": "56b57f0451555838327b00e459993a2455e4459e",
      "parents": [
        "4fbf2e115856f875dd1cb878dfa04a3f535766e9"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue May 19 08:03:24 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 16:03:24 2026 -0600"
      },
      "message": "[CI] Add 3 more pre-commit hooks (#1306)\n\nAdded 3 more official hooks:\n\nhttps://github.com/pre-commit/pre-commit-hooks\n\nMinor addition"
    },
    {
      "commit": "4fbf2e115856f875dd1cb878dfa04a3f535766e9",
      "tree": "4584c8636c2949233aa208e7e3a6464746aeb69a",
      "parents": [
        "a7ff29ace50a9a27b8ba6011693f88607e66b330"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon May 18 10:49:12 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 10:49:12 2026 -0600"
      },
      "message": "Bump https://github.com/oxipng/oxipng in the pre-commit-hooks group (#1305)\n\nBumps the pre-commit-hooks group with 1 update: [https://github.com/oxipng/oxipng](https://github.com/oxipng/oxipng).\n\n\nUpdates `https://github.com/oxipng/oxipng` from v10.1.0 to 10.1.1\n- [Release notes](https://github.com/oxipng/oxipng/releases)\n- [Changelog](https://github.com/oxipng/oxipng/blob/master/CHANGELOG.md)\n- [Commits](https://github.com/oxipng/oxipng/compare/v10.1.0...v10.1.1)\n\n---\nupdated-dependencies:\n- dependency-name: https://github.com/oxipng/oxipng\n  dependency-version: 10.1.1\n  dependency-type: direct:production\n  dependency-group: pre-commit-hooks\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": "a7ff29ace50a9a27b8ba6011693f88607e66b330",
      "tree": "0b4c9101fab46c9c54924bdee96f2d66cdd61ed6",
      "parents": [
        "8d801fb8578d2f09ef06ca7e6d74a925a558a50b"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue May 19 00:45:34 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 08:45:34 2026 -0600"
      },
      "message": "Add Dependabot and configure pre-commit ecosystem (#1249)\n\nMonthly updates, limit open pull requests and group updates to reduce noise.\n\nAdd 7 day cooldown\n\nhttps://docs.github.com/en/code-security/reference/supply-chain-security/dependabot-options-reference\n\nhttps://docs.github.com/en/code-security/concepts/supply-chain-security/about-dependabot-version-updates\n\nhttps://docs.github.com/en/code-security/reference/supply-chain-security/supported-ecosystems-and-repositories"
    },
    {
      "commit": "8d801fb8578d2f09ef06ca7e6d74a925a558a50b",
      "tree": "842edc16e2f4e8a9cdc82ee405a5589675b6a0a6",
      "parents": [
        "93285b8971e2bb5c310e99cde4ffaf1074f25979"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Mon May 18 08:41:18 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 08:41:18 2026 -0600"
      },
      "message": "Improve performance and correctness of NumericUtils methods, #1280 (#1282)\n\n* Improve performance and correctness of NumericUtils methods, #1280\n\n* More perf optimization of decoding\n\n* Fix comment per PR review"
    },
    {
      "commit": "93285b8971e2bb5c310e99cde4ffaf1074f25979",
      "tree": "af99b253284fb5e30eaf0e49f7260d050f59f00f",
      "parents": [
        "1c95ddc0bf0c58ff7ce8b1c8bb21e94a166d9ee0"
      ],
      "author": {
        "name": "Rich Bowen",
        "email": "rbowen@rcbowen.com",
        "time": "Mon May 18 09:28:57 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 08:28:57 2026 -0600"
      },
      "message": "fix: Render ASF policy links in static HTML footer (#1303)\n\nThe Lucene.NET website already has all required ASF policy links\ndefined in docfx.json and toc.yml, but they\u0027re only rendered via\nclient-side JavaScript. The ASF compliance scanner\n(https://whimsy.apache.org/site/) cannot execute JavaScript, so it\nreports 7 of 9 checks as failing.\n\nThis PR:\n- Adds a footer.tmpl.partial that renders the ASF links as static\n  HTML in the page footer (using the existing template variables)\n- Fixes \"Apache feather logo\" → \"Apache logo\" in trademark text\n  (ASF rebranded in September 2025)\n- Updates license link to canonical https://www.apache.org/licenses/\n\nSee: https://www.apache.org/foundation/marks/pmcs\nChecker: https://whimsy.apache.org/site/"
    },
    {
      "commit": "1c95ddc0bf0c58ff7ce8b1c8bb21e94a166d9ee0",
      "tree": "67c2cd218c9c2c4c7af3c3254d5a7fcb93b60625",
      "parents": [
        "5976abd955fef2dcab855f7632782680b2c69b55"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Mon May 18 07:00:23 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 18 07:00:23 2026 -0600"
      },
      "message": "Add Infra-recommended branch protection rules (#1299)\n\n* Add Infra-recommended branch protection rules\n\n* Add docs/* branch to includes in .asf.yaml"
    },
    {
      "commit": "5976abd955fef2dcab855f7632782680b2c69b55",
      "tree": "af2fc0f67fbf683adc8ecfd26b60e7b13be06420",
      "parents": [
        "5381fdbfc7aa2be8620fa9cae295bb950acd9880"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Tue May 05 08:26:36 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 05 08:26:36 2026 -0600"
      },
      "message": "Cancellation support for LimitedConcurrencyLevelTaskScheduler, #1253 (#1275)\n\n* Cancellation support for LimitedConcurrencyLevelTaskScheduler, #1253\n\n* Remove CancelAsync that is not available on .NET Framework\n\n* Throw on QueueTask after shutdown in LimitedConcurrencyLevelTaskScheduler, #1253\n\nMatch Java\u0027s ExecutorService.shutdown() RejectedExecutionException semantics\ninstead of silently dropping post-shutdown submissions, which would leave\nawaiters hanging on a Task that never completes.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* Optimize cleanup of cancellation token source\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "5381fdbfc7aa2be8620fa9cae295bb950acd9880",
      "tree": "4dca2029c8dd36a1ae800c8f8daafc90021df0e3",
      "parents": [
        "d4e2707c9f4c38e713c8ac595ecebf9c4a95e405"
      ],
      "author": {
        "name": "Victor Wilson",
        "email": "victor.wilson@gmail.com",
        "time": "Sun May 03 21:03:53 2026 -0500"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun May 03 20:03:53 2026 -0600"
      },
      "message": "SWEEP: Replace BCL Dictionary\u003cTKey,TValue\u003e with JCG.Dictionary\u003cTKey,TValue\u003e (#1273) (#1287)\n\n* SWEEP: Replace BCL Dictionary\u003cTKey,TValue\u003e with JCG.Dictionary\u003cTKey,TValue\u003e (#1273)\n\nReplaces System.Collections.Generic.Dictionary\u003cTKey, TValue\u003e with\nJ2N.Collections.Generic.Dictionary\u003cTKey, TValue\u003e across all Java-derived\nsources, using the alias JCG.Dictionary\u003cTKey, TValue\u003e.\n\nJ2N\u0027s Dictionary supports JDK HashMap semantics (null keys, removal during\nenumeration, ReadOnlySpan\u003cchar\u003e alternate lookup, structural equality and\nformatting), which the BCL type lacks. Using BCL Dictionary in Java-derived\ncode was potentially masking bugs in extensions with low test coverage.\n\nExclusions per the issue:\n- Lucene.Net.CodeAnalysis.* projects\n- Lucene.Net.Replicator.AspNetCore\n- lucene-cli + Lucene.Net.Tests.Cli\n- Lucene.Net.Tests.TestFramework.{DependencyInjection,NUnitExtensions}\n- Support folders and Lucene.Net.Support namespace\n  (except TagSoup and Sax under Lucene.Net.Benchmark/Support, which\n  are explicitly in scope per the issue)\n\nPublic API surface continues to expose IDictionary\u003cTKey, TValue\u003e; this is\nnot a binary-breaking change.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* Commenting out using statements that were added to cover code that is currently commented out\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "d4e2707c9f4c38e713c8ac595ecebf9c4a95e405",
      "tree": "6912dca3d222869e317451c3aedc2d14e49ff682",
      "parents": [
        "fa6b6cfe92fa5be74cf7cc8f17ba225cbadb06c3"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Sun May 03 05:44:10 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat May 02 13:44:10 2026 -0600"
      },
      "message": "Clean up and order `.rat-excludes` (#1291)"
    },
    {
      "commit": "fa6b6cfe92fa5be74cf7cc8f17ba225cbadb06c3",
      "tree": "7a302debc289812c0b9900847d19ff9366c6d860",
      "parents": [
        "be94cfd68e1f43bf2475a896ec7ed80bdf7e7b53"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Sat May 02 22:24:49 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat May 02 06:24:49 2026 -0600"
      },
      "message": "[CI] Add ASF Allow list workflow (#1289)"
    },
    {
      "commit": "be94cfd68e1f43bf2475a896ec7ed80bdf7e7b53",
      "tree": "01ffcc6714c7761473ec9fc607af154e0a30d5a4",
      "parents": [
        "b905052c6f5a1b319ba71a63206438cc57841e9f"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Fri May 01 14:40:29 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri May 01 14:40:29 2026 -0600"
      },
      "message": "Fix ArgumentOutOfRangeException in IrishLowerCaseFilter span slicing, #1150 (#1286)\n\n* Fix ArgumentOutOfRangeException in IrishLowerCaseFilter span slicing (#1150)\n\nIrishLowerCaseFilter was incorrectly calculating the span length for\nthe lowercase operation. When the n-/t-prothesis path runs (inserting\na hyphen after \u0027n\u0027 or \u0027t\u0027), idx becomes 2 and the span length should\nbe (chLen - idx), not chLen. This caused out-of-bounds span creation.\n\nThe fix calculates spanLen \u003d chLen - idx and uses this corrected\nlength for both the source and destination spans, as well as the spare\nbuffer allocation.\n\nAdded a regression test using a custom TightBufferTokenStream that\nwrites directly into CharTermAttribute.termBuffer to bypass the\nOversize over-allocation all public tokenizer paths use, producing a\nbuffer sized to exactly the post-prothesis term length. This reliably\ntriggers the ArgumentOutOfRangeException on the buggy code.\n\nFixes #1150\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* Add prothesis correctness tests for IrishLowerCaseFilter (#1150)\n\nTests all n-/t- prothesis combinations across plain and accented (fada)\nupper vowels to guard against regressions in output correctness.\n\nCo-Authored-By: Claude Sonnet 4.6 \u003cnoreply@anthropic.com\u003e\n\n* Address Copilot feedback\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "b905052c6f5a1b319ba71a63206438cc57841e9f",
      "tree": "7fed7f9fca5801c374ebc6bab67d385d343ae867",
      "parents": [
        "237aa846d50c2ce5ad27f075bfe272163f07ea25"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Thu Apr 30 15:59:23 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 30 15:59:23 2026 -0600"
      },
      "message": "Disable MyGet preview feeds (#1285)"
    },
    {
      "commit": "237aa846d50c2ce5ad27f075bfe272163f07ea25",
      "tree": "6a745a5db8105c6380c73ac5d88680523bccc9c5",
      "parents": [
        "9a1bf2e04a21b48fcad633b1f0c9318c0a6a8d4c"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Wed Apr 29 22:05:27 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Apr 29 06:05:27 2026 -0600"
      },
      "message": "misc: fix typos (#1281)"
    },
    {
      "commit": "9a1bf2e04a21b48fcad633b1f0c9318c0a6a8d4c",
      "tree": "b76e6fbcb41923270a1c9a6f19e0c50e9506d7a3",
      "parents": [
        "29ddb24335618ce0cd6b67151d41de390cf8142e"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Thu Apr 23 08:04:29 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 23 08:04:29 2026 -0600"
      },
      "message": "Fix vulnerable System.Security.Cryptography.Xml via updating Microsoft.Extensions to 10.0.7 (#1260)\n\n* Fix vulnerable version of System.Security.Cryptography.Xml\n\n* Upgrade Microsoft.Extensions libraries to 10.0.7"
    },
    {
      "commit": "29ddb24335618ce0cd6b67151d41de390cf8142e",
      "tree": "1df4f62f6c2633c76e944a0f3d320026dc53a94e",
      "parents": [
        "dff28e78a6e0aa28209d593c76c8c54ede4ae0e1"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Thu Apr 23 18:30:33 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 23 18:30:33 2026 +0700"
      },
      "message": "SWEEP: Upgraded to the navigable APIs on `SortedSet\u003cT\u003e` and `SortedDictionary\u003cTKey, TValue\u003e` (#1268)\n\n* Lucene.Net.Codecs.SimpleText.SimpleTextTermVectorsReader.SimpleTVTermsEnum: Use GetViewAfter() to match the upstream code.\n\n* Lucene.Net.Codecs.Compressing.CompressingTermVectorsWriter: Use SortedSet\u003cT\u003e.TryGetLast() rather than Max, since the latter is obsolete. Fixed implementation to throw InvalidOperationException in the same case that Java would throw a NoSuchElementException (when the collection is empty).\n\n* Lucene.Net.Grouping.AbstractFirstPassGroupingCollector: Removed LINQ calls and replaced them with navigable collection APIs, which will reduce allocations.\n\n* Lucene.Net.Grouping.AbstractGrouFacetCollector: Converted calls to the obsolete SortedSet\u003cT\u003e.Max property to calls to RemoveLast() and TryGetLast().\n\n* Lucene.Net.Grouping.SearchGroup.GroupMerger\u003cT\u003e: Replaced calls to the obsolete SortedSet\u003cT\u003e properties Min and Max with RemoveFirst() and RemoveLast()\n\n* Lucene.Net.Search.Suggest.Analyzing.BlendedInfixSuggester: Replaced call to obsolete SortedSet\u003cT\u003e.Min property with TryGetFirst().\n\n* Lucene.Net.Util.Fst.Util: Replaced calls to obsolete SortedSet\u003cT\u003e properties Min and Max with RemoveFirst(), RemoveLast() and TryGetLast()\n\n* Lucene.Net.Analysis.MockCharFilter: Replaced call to obsolete SortedSet\u003cT\u003e.TryGetPredecessor() overload with the new overload.\n\n* Lucene.Net.Search.PostingsHighlight.PostingsHighlighter: Replaced call to obsolete SortedSet\u003cT\u003e.GetViewBetween() method and replaced with GetView().\n\n* Lucene.Net.Codecs.RAMOnly.RamOnlyPostingsFormat.RAMTermsEnum: Changed implementation to use GetViewAfter() and TryGetLast() of SortedDictionary\u003cTKey, TValue\u003e rather than resorting to LINQ calls.\n\n* Lucene.Net.Codecs.Lucene40.Lucene40DocValuesWriter: Added comment defending the use of LINQ for this specific case rather than using GetViewBefore().\n\n* Update src/Lucene.Net.Grouping/AbstractFirstPassGroupingCollector.cs\r\n\r\nAdded discard as per PR feedback\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e\n\n* Update src/Lucene.Net.Grouping/AbstractGroupFacetCollector.cs\r\n\r\nAdded discard as per PR feedback\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e\n\n---------\n\nCo-authored-by: Paul Irwin \u003cpaulirwin@gmail.com\u003e"
    },
    {
      "commit": "dff28e78a6e0aa28209d593c76c8c54ede4ae0e1",
      "tree": "3a6cddff1a428d8abce0f179b29a300f28337860",
      "parents": [
        "679dfacdea746c455c442ff213491d1ebc2bf3e7"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Apr 21 07:58:26 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 20 15:58:26 2026 -0600"
      },
      "message": "misc: fix typos (#1270)\n\nGeneral spelling clean up"
    },
    {
      "commit": "679dfacdea746c455c442ff213491d1ebc2bf3e7",
      "tree": "7ca9a22f713048c644aba28a9d524cbe697cb678",
      "parents": [
        "fa77f63f9dfd21ab8885678410acdcbb79f5d614"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Tue Apr 21 06:27:28 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 21 03:27:28 2026 +0700"
      },
      "message": "misc: fix spelling and clean up (#1269)\n\nGeneral spelling fixes and some minor editor whitespace auto clean up"
    },
    {
      "commit": "fa77f63f9dfd21ab8885678410acdcbb79f5d614",
      "tree": "aba8c3c04c2a68cc8059672ac27b836e2821ffdc",
      "parents": [
        "1a1103d78eb76bd437ca146ebf7f8d192506b53a"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sun Apr 19 14:30:23 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 19 14:30:23 2026 -0600"
      },
      "message": "More BytesRef/UnicodeUtil UTF-8-to-string fixes, #1024 (#1171)\n\n* UnicodeUtil: Change UTF8toUTF16 to throw DecoderFallbackException, #1024\n\nChanged UTF8toUTF16 method to throw DecoderFallbackException instead of FormatException\nwhen invalid UTF-8 is encountered. This aligns with .NET conventions where\nDecoderFallbackException is the appropriate exception type for character decoding\nissues (equivalent to Java\u0027s CharacterCodingException).\n\n🤖 Generated with [Claude Code](https://claude.ai/code)\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n\n* BytesRef: Use Utf8ToStringWithFallback in DebuggerDisplay, #1024\n\nChanged DebuggerDisplay attribute to use Utf8ToStringWithFallback() instead of\nUtf8ToString() to prevent exceptions when debugging BytesRef instances that\ncontain invalid UTF-8 sequences.\n\n🤖 Generated with [Claude Code](https://claude.ai/code)\n\nCo-Authored-By: Claude \u003cnoreply@anthropic.com\u003e\n\n* BytesRef: Show \"Invalid UTF-8\" label and string-before-bytes in DebuggerDisplay, #1024\n\nAddress NightOwl888\u0027s review on #1171. The prior DebuggerDisplay used\nUtf8ToStringWithFallback, which silently substitutes U+FFFD for malformed\ninput — indistinguishable from a real U+FFFD in the data. Switch to a\nprivate DebuggerDisplay property that uses TryUtf8ToString, shows the\nliteral \"Invalid UTF-8\" on decode failure, and puts the decoded string\nbefore the raw bytes.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n* UnicodeUtil: Fix UTF8toUTF16WithFallback byte[] overload to use fallback path, #1024\n\nThe byte[]/offset/length overload was delegating to the throwing\nUTF8toUTF16 variant, so callers like BytesRef.Utf8ToStringWithFallback()\nwould throw DecoderFallbackException on invalid UTF-8 instead of\nsubstituting U+FFFD as the method name and docs promise. Delegate to\nthe ReadOnlySpan\u003cbyte\u003e fallback overload and add a regression test\ncovering the 4-arg signature with a non-zero offset.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n---------\n\nCo-authored-by: Claude \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "1a1103d78eb76bd437ca146ebf7f8d192506b53a",
      "tree": "54cb87ac804afa3db68ee51b2b40b4bc1c49bc67",
      "parents": [
        "36b57d57bea0fecc464ddd85e9953ed7851b1681"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sun Apr 19 13:56:08 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 19 13:56:08 2026 -0600"
      },
      "message": "Fix concurrent-extension race in MMapDirectory.Map, #1090 (#1263)\n\n* Fix concurrent-extension race in MMapDirectory.Map, #1090\n\nWhen a file is being appended to concurrently (e.g. by an IndexWriter\nthat still holds a write handle), MemoryMappedFile.CreateFromFile can\nthrow ArgumentOutOfRangeException(\"capacity\") because its internal stat\nobserves a file size greater than the capacity we computed from\nfc.Length moments earlier. Take the max of the caller-supplied length\nand a fresh fc.Length read as the capacity, and retry with an updated\nlength on that specific failure. Adds test-only counters and a\nstress-based regression test in TestMultiMMap.\n\n* Address Copilot review on #1090 MMapDirectory.Map fix\n\nNarrow the ArgumentOutOfRangeException retry filter to\nParamName \u003d\u003d \"capacity\" so unrelated argument errors aren\u0027t masked,\nand mark the regression test NonParallelizable since it relies on\nstatic counters on MMapDirectory.\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n\n---------\n\nCo-authored-by: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e"
    },
    {
      "commit": "36b57d57bea0fecc464ddd85e9953ed7851b1681",
      "tree": "4a963fbdc55f37ea92ed0120662964efe393ed65",
      "parents": [
        "84cc755070b3bb9456234c35753f55f5ef3bffa1"
      ],
      "author": {
        "name": "John Bampton",
        "email": "jbampton@users.noreply.github.com",
        "time": "Sun Apr 19 23:56:51 2026 +1000"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 19 07:56:51 2026 -0600"
      },
      "message": "misc: fix typos (#1266)"
    },
    {
      "commit": "84cc755070b3bb9456234c35753f55f5ef3bffa1",
      "tree": "64c690426742cc41d7921742694b42fc63b53a44",
      "parents": [
        "b05b87931bf95389a82fce385cb8418aa40b95ec"
      ],
      "author": {
        "name": "Paul Irwin",
        "email": "paulirwin@gmail.com",
        "time": "Sat Apr 18 14:14:42 2026 -0600"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Apr 18 14:14:42 2026 -0600"
      },
      "message": "Remove lib folder; add Apache RAT script (#1256) (#1258)\n\n* Remove lib folder; add Apache RAT script\n\n* Add note about PowerShell being required to make a release"
    },
    {
      "commit": "b05b87931bf95389a82fce385cb8418aa40b95ec",
      "tree": "95a3b8bd88b5d91ec3f4c5eef880294cd22e9153",
      "parents": [
        "04779e226bf47f220e4f78cbd916c8449442a75c"
      ],
      "author": {
        "name": "Shad Storhaug",
        "email": "shad@shadstorhaug.com",
        "time": "Sun Apr 19 00:29:54 2026 +0700"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 19 00:29:54 2026 +0700"
      },
      "message": "dependencies.props: Bumped J2N to 2.2.0-alpha-0042 (#1265)"
    }
  ],
  "next": "04779e226bf47f220e4f78cbd916c8449442a75c"
}
