You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by so...@apache.org on 2022/09/27 13:02:59 UTC

svn commit: r57028 [2/16] - in /dev/lucene/lucene-9.4.0-RC3-rev-d2e22e18c6c92b6a6ba0bbc26d78b5e82832f956: ./ lucene/ lucene/changes/ lucene/maven/ lucene/maven/org/ lucene/maven/org/apache/ lucene/maven/org/apache/lucene/ lucene/maven/org/apache/lucene...

Added: dev/lucene/lucene-9.4.0-RC3-rev-d2e22e18c6c92b6a6ba0bbc26d78b5e82832f956/lucene/changes/Changes.html
==============================================================================
--- dev/lucene/lucene-9.4.0-RC3-rev-d2e22e18c6c92b6a6ba0bbc26d78b5e82832f956/lucene/changes/Changes.html (added)
+++ dev/lucene/lucene-9.4.0-RC3-rev-d2e22e18c6c92b6a6ba0bbc26d78b5e82832f956/lucene/changes/Changes.html Tue Sep 27 13:02:57 2022
@@ -0,0 +1,19323 @@
+<!--
+**********************************************************
+** WARNING: This file is generated from CHANGES.txt by the 
+**          Perl script 'changes2html.pl'.
+**          Do *not* edit this file!
+**********************************************************
+          
+****************************************************************************
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+****************************************************************************
+-->
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <title>Lucene Change Log</title>
+  <link rel="stylesheet" href="ChangesFancyStyle.css" title="Fancy">
+  <link rel="alternate stylesheet" href="ChangesSimpleStyle.css" title="Simple">
+  <link rel="alternate stylesheet" href="ChangesFixedWidthStyle.css" title="Fixed Width">
+  <META http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+  <SCRIPT>
+    function toggleList(id) {
+      listStyle = document.getElementById(id + '.list').style;
+      anchor = document.getElementById(id);
+      if (listStyle.display == 'none') {
+        listStyle.display = 'block';
+        anchor.title = 'Click to collapse';
+        location.href = '#' + id;
+      } else {
+        listStyle.display = 'none';
+        anchor.title = 'Click to expand';
+      }
+      var expandButton = document.getElementById('expand.button');
+      expandButton.disabled = false;
+      var collapseButton = document.getElementById('collapse.button');
+      collapseButton.disabled = false;
+    }
+
+    function collapseAll() {
+      var unorderedLists = document.getElementsByTagName("ul");
+      for (var i = 0; i < unorderedLists.length; i++) {
+        if (unorderedLists[i].className != 'bulleted-list')
+          unorderedLists[i].style.display = "none";
+        else
+          unorderedLists[i].style.display = "block";
+      }
+      var orderedLists = document.getElementsByTagName("ol");
+      for (var i = 0; i < orderedLists.length; i++)
+        orderedLists[i].style.display = "none";
+      var olderList = document.getElementById("older.list");
+      olderList.style.display = "none";
+      var anchors = document.getElementsByTagName("a");
+      for (var i = 0 ; i < anchors.length; i++) {
+        if (anchors[i].id != '')
+          anchors[i].title = 'Click to expand';
+      }
+      var collapseButton = document.getElementById('collapse.button');
+      collapseButton.disabled = true;
+      var expandButton = document.getElementById('expand.button');
+      expandButton.disabled = false;
+    }
+
+    function expandAll() {
+      var unorderedLists = document.getElementsByTagName("ul");
+      for (var i = 0; i < unorderedLists.length; i++)
+        unorderedLists[i].style.display = "block";
+      var orderedLists = document.getElementsByTagName("ol");
+      for (var i = 0; i < orderedLists.length; i++)
+        orderedLists[i].style.display = "block"; 
+      var olderList = document.getElementById("older.list");
+      olderList.style.display = "block";
+      var anchors = document.getElementsByTagName("a");
+      for (var i = 0 ; i < anchors.length; i++) {
+        if (anchors[i].id != '')
+          anchors[i].title = 'Click to collapse';
+      }
+      var expandButton = document.getElementById('expand.button');
+      expandButton.disabled = true;
+      var collapseButton = document.getElementById('collapse.button');
+      collapseButton.disabled = false;
+
+    }
+
+    var newerRegex = new RegExp("^(?:v9\\\\.4\\\\.0|v9\\\\.3\\\\.0)");
+    function isOlder(listId) {
+      return ! newerRegex.test(listId);
+    }
+
+    function escapeMeta(s) {
+      return s.replace(/(?=[.*+?^${}()|[\]\/\\])/g, '\\');
+    }
+
+    function shouldExpand(currentList, currentAnchor, listId) {
+      var listName = listId.substring(0, listId.length - 5);
+      var parentRegex = new RegExp("^" + escapeMeta(listName) + "\\.");
+      return currentList == listId
+             || (isOlder(currentAnchor) && listId == 'older.list')
+             || parentRegex.test(currentAnchor);
+    }
+
+    function collapse() {
+      /* Collapse all but the first and second releases. */
+      var unorderedLists = document.getElementsByTagName("ul");
+      var currentAnchor = location.hash.substring(1);
+      var currentList = currentAnchor + ".list";
+
+      for (var i = 0; i < unorderedLists.length; i++) {
+        var list = unorderedLists[i];
+        /* Collapse the current item, unless either the current item is one of
+         * the first two releases, or the current URL has a fragment and the
+         * fragment refers to the current item or one of its ancestors.
+         */
+        if (list.id != 'v9.4.0.list' 
+            && list.id != 'v9.3.0.list'
+            && list.className != 'bulleted-list'
+            && (currentAnchor == ''
+                || ! shouldExpand(currentList, currentAnchor, list.id))) {
+          list.style.display = "none";
+        }
+      }
+      var orderedLists = document.getElementsByTagName("ol");
+      for (var i = 0; i < orderedLists.length; i++) {
+        var list = orderedLists[i];
+        /* Collapse the current item, unless the current URL has a fragment
+         * and the fragment refers to the current item or one of its ancestors.
+         */
+        if (currentAnchor == ''
+            || ! shouldExpand(currentList, currentAnchor, list.id)) {
+          list.style.display = "none";
+        }
+      }
+      var olderList = document.getElementById("older.list");
+      olderList.style.display = "none";
+      /* Add "Click to collapse/expand" tooltips to the release/section headings */
+      var anchors = document.getElementsByTagName("a");
+      for (var i = 0 ; i < anchors.length; i++) {
+        var anchor = anchors[i];
+        if (anchor.id != '') {
+          if (anchor.id == 'v9.4.0' || anchor.id == 'v9.3.0') {
+            anchor.title = 'Click to collapse';
+          } else {
+            anchor.title = 'Click to expand';
+          }
+        }
+      }
+
+      /* Insert "Expand All" and "Collapse All" buttons */
+      var buttonsParent = document.getElementById('buttons.parent');
+      var expandButton = document.createElement('button');
+      expandButton.appendChild(document.createTextNode('Expand All'));
+      expandButton.onclick = function() { expandAll(); }
+      expandButton.id = 'expand.button';
+      buttonsParent.appendChild(expandButton);
+      var collapseButton = document.createElement('button');
+      collapseButton.appendChild(document.createTextNode('Collapse All'));
+      collapseButton.onclick = function() { collapseAll(); }
+      collapseButton.id = 'collapse.button';
+      buttonsParent.appendChild(collapseButton);
+    }
+
+    window.onload = collapse;
+  </SCRIPT>
+</head>
+<body>
+
+<h1>Lucene Change Log</h1>
+
+<div id="buttons.parent"></div>
+
+      <p>For more information on past and future Lucene versions, please see:
+<a href="http://s.apache.org/luceneversions">http://s.apache.org/luceneversions</a>
+</p>
+<h2><a id="v9.4.0" href="javascript:toggleList('v9.4.0')">Release 9.4.0 </a></h2>
+<ul id="v9.4.0.list">
+  <li><a id="v9.4.0.api_changes" href="javascript:toggleList('v9.4.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v9.4.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10577">LUCENE-10577</a>: Add VectorEncoding to enable byte-encoded HNSW vectors
+<br /><span class="attrib">(Michael Sokolov, Julie Tibshirani)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.4.0.new_features" href="javascript:toggleList('v9.4.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v9.4.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10654">LUCENE-10654</a>: Add new ShapeDocValuesField for LatLonShape and XYShape.
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10629">LUCENE-10629</a>: Support match set filtering with a query in MatchingFacetSetCounts.
+<br /><span class="attrib">(Stefan Vodita, Shai Erera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10633">LUCENE-10633</a>: SortField#setOptimizeSortWithIndexedData and
+SortField#getOptimizeSortWithIndexedData were introduced to provide
+an option to disable sort optimization for various sort fields.
+<br /><span class="attrib">(Mayya Sharipova)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/912">GITHUB#912</a>: Support for Java 19 foreign memory support was added. Applications started
+with command line parameter "java --enable-preview" will automatically use the new
+foreign memory API of Java 19 to access indexes on disk with MMapDirectory. This is
+an opt-in feature and requires explicit Java command line flag! When enabled, Lucene logs
+a notice using java.util.logging. Please test thoroughly and report bugs/slowness to Lucene's
+mailing list. When the new API is used, MMapDirectory will mmap Lucene indexes in chunks of
+16 GiB (instead of 1 GiB) and indexes closed while queries are running can no longer crash
+the JVM.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.4.0.improvements" href="javascript:toggleList('v9.4.0.improvements')">Improvements</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v9.4.0.improvements.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10592">LUCENE-10592</a>: Build HNSW Graph on indexing.
+<br /><span class="attrib">(Mayya Sharipova, Adrien Grand, Julie Tibshirani)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10207">LUCENE-10207</a>: TermInSetQuery can now provide a ScoreSupplier with cost estimation, making it
+usable in IndexOrDocValuesQuery.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10216">LUCENE-10216</a>: Use MergePolicy to define and MergeScheduler to trigger the reader merges
+required by addIndexes(CodecReader[]) API.
+<br /><span class="attrib">(Vigya Sharma, Michael McCandless)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/11715">GITHUB#11715</a>: Add Integer awareness to RamUsageEstimator.sizeOf
+<br /><span class="attrib">(Mike Drob)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.4.0.optimizations" href="javascript:toggleList('v9.4.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(5)
+    <ol id="v9.4.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10661">LUCENE-10661</a>: Reduce memory copy in BytesStore.
+<br /><span class="attrib">(luyuncheng)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/1020">GITHUB#1020</a>: Support #scoreSupplier and small optimizations to DocValuesRewriteMethod.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10633">LUCENE-10633</a>: Added support for dynamic pruning to queries sorted by a string
+field that is indexed with terms and SORTED or SORTED_SET doc values.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10627">LUCENE-10627</a>: Using ByteBuffersDataInput reduce memory copy on compressing data.
+<br /><span class="attrib">(luyuncheng)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/1062">GITHUB#1062</a>: Optimize TermInSetQuery when a term is present that matches all docs in a segment.
+<br /><span class="attrib">(Greg Miller)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.4.0.bug_fixes" href="javascript:toggleList('v9.4.0.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(7)
+    <ol id="v9.4.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10663">LUCENE-10663</a>: Fix KnnVectorQuery explain with multiple segments.
+<br /><span class="attrib">(Shiming Li)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10673">LUCENE-10673</a>: Improve check of equality for latitudes for spatial3d GeoBoundingBox
+<br /><span class="attrib">(ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10678">LUCENE-10678</a>: Fix potential overflow when building a BKD tree with more than 4 billion points. The overflow
+occurs when computing the partition point.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10644">LUCENE-10644</a>: Facets#getAllChildren testing should ignore child order.
+<br /><span class="attrib">(Yuting Gan)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10665">LUCENE-10665</a>, <a href="https://github.com/apache/lucene/pull/11701">GITHUB#11701</a>: Fix classloading deadlock in analysis factories / AnalysisSPILoader
+initialization.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10674">LUCENE-10674</a>: Ensure BitSetConjDISI returns NO_MORE_DOCS when sub-iterator exhausts.
+<br /><span class="attrib">(Jack Mazanec)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/11794">GITHUB#11794</a>: Guard FieldExistsQuery against null pointers
+<br /><span class="attrib">(Luca Cavanna)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.4.0.build" href="javascript:toggleList('v9.4.0.build')">Build</a>&nbsp;&nbsp;&nbsp;(2)
+    <ol id="v9.4.0.build.list">
+      <li><a href="https://github.com/apache/lucene/pull/11720">GITHUB#11720</a>: Upgrade randomizedtesting to 2.8.1 (potential fix for odd wall clock - related
+timeout failures).
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10669">LUCENE-10669</a>: The build should be more helpful when generated resources are touched
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.4.0.other" href="javascript:toggleList('v9.4.0.other')">Other</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v9.4.0.other.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10559">LUCENE-10559</a>: Add Prefilter Option to KnnGraphTester
+<br /><span class="attrib">(Kaival Parikh)</span></li>
+    </ol>
+  </li>
+</ul>
+<h2><a id="v9.3.0" href="javascript:toggleList('v9.3.0')">Release 9.3.0  [2022-07-29]</a></h2>
+<ul id="v9.3.0.list">
+  <li><a id="v9.3.0.api_changes" href="javascript:toggleList('v9.3.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(2)
+    <ol id="v9.3.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10603">LUCENE-10603</a>: SortedSetDocValues#NO_MORE_ORDS marked @deprecated in favor of iterating with
+SortedSetDocValues#docValueCount().
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/978">GITHUB#978</a>: Deprecate (remove in Lucene 10) obsolete constants in oal.util.Constants; remove
+code which is no longer executed after Java 9.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.new_features" href="javascript:toggleList('v9.3.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v9.3.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10550">LUCENE-10550</a>: Add getAllChildren functionality to facets
+<br /><span class="attrib">(Yuting Gan)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10274">LUCENE-10274</a>: Added facetsets module for high dimensional (hyper-rectangle) faceting
+</li>
+      <li>(Shai Erera, Marc D'Mello, Greg Miller)
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10151">LUCENE-10151</a> Enable timeout support in IndexSearcher.
+<br /><span class="attrib">(Deepika Sharma)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.improvements" href="javascript:toggleList('v9.3.0.improvements')">Improvements</a>&nbsp;&nbsp;&nbsp;(5)
+    <ol id="v9.3.0.improvements.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10078">LUCENE-10078</a>: Merge on full flush is now enabled by default with a timeout of
+500ms.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10585">LUCENE-10585</a>: Facet module code cleanup (copy/paste scrubbing, simplification and some very minor
+optimization tweaks).
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10603">LUCENE-10603</a>: Update SortedSetDocValues iteration to use SortedSetDocValues#docValueCount().
+<br /><span class="attrib">(Greg Miller, Stefan Vodita)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10619">LUCENE-10619</a>: Optimize the writeBytes in TermsHashPerField.
+<br /><span class="attrib">(Tang Donghai)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/983">GITHUB#983</a>: AbstractSortedSetDocValueFacetCounts internal code cleanup/refactoring.
+<br /><span class="attrib">(Greg Miller)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.optimizations" href="javascript:toggleList('v9.3.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(11)
+    <ol id="v9.3.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8519">LUCENE-8519</a>: MultiDocValues.getNormValues should not call getMergedFieldInfos
+<br /><span class="attrib">(Rushabh Shah)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/961">GITHUB#961</a>: BooleanQuery can return quick counts for simple boolean queries.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10618">LUCENE-10618</a>: Implement BooleanQuery rewrite rules based for minimumShouldMatch.
+<br /><span class="attrib">(Fang Hou)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10480">LUCENE-10480</a>: Implement Block-Max-Maxscore scorer for 2 clauses disjunction.
+<br /><span class="attrib">(Zach Chen, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10606">LUCENE-10606</a>: For KnnVectorQuery, optimize case where filter is backed by BitSetIterator
+<br /><span class="attrib">(Kaival Parikh)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10593">LUCENE-10593</a>: Vector similarity function and NeighborQueue reverse removal.
+<br /><span class="attrib">(Alessandro Benedetti)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/984">GITHUB#984</a>: Use primitive type data structures in FloatTaxonomyFacets and IntTaxonomyFacets
+#getAllChildren() internal implementation to avoid some garbage creation.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/1010">GITHUB#1010</a>: Specialize ordinal encoding for common case in SortedSetDocValues.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10657">LUCENE-10657</a>: CopyBytes now saves one memory copy on ByteBuffersDataOutput.
+<br /><span class="attrib">(luyuncheng)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/1007">GITHUB#1007</a>: Optimize IntersectVisitor#visit implementations for certain bulk-add cases.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10653">LUCENE-10653</a>: BlockMaxMaxscoreScorer uses heapify instead of individual adds.
+<br /><span class="attrib">(Greg Miller)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.changes_in_runtime_behavior" href="javascript:toggleList('v9.3.0.changes_in_runtime_behavior')">Changes in runtime behavior</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v9.3.0.changes_in_runtime_behavior.list">
+      <li><a href="https://github.com/apache/lucene/pull/978">GITHUB#978</a>: IndexWriter diagnostics written to index only contain java's runtime version
+and vendor.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.bug_fixes" href="javascript:toggleList('v9.3.0.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(13)
+    <ol id="v9.3.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10574">LUCENE-10574</a>: Prevent pathological O(N^2) merging.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10584">LUCENE-10584</a>: Properly support #getSpecificValue for hierarchical dims in SSDV faceting.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10582">LUCENE-10582</a>: Fix merging of overridden CollectionStatistics in CombinedFieldQuery
+<br /><span class="attrib">(Yannick Welsch)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10563">LUCENE-10563</a>: Fix failure to tessellate complex polygon
+<br /><span class="attrib">(Craig Taverner)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10605">LUCENE-10605</a>: Fix error in 32bit jvm object alignment gap calculation
+<br /><span class="attrib">(Sun Wuqiang)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/956">GITHUB#956</a>: Make sure KnnVectorQuery applies search boost.
+<br /><span class="attrib">(Julie Tibshirani)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10598">LUCENE-10598</a>: SortedSetDocValues#docValueCount() should be always greater than zero.
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10600">LUCENE-10600</a>: SortedSetDocValues#docValueCount should be an int, not long
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10611">LUCENE-10611</a>: Fix failure when KnnVectorQuery has very selective filter
+<br /><span class="attrib">(Kaival Parikh)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10607">LUCENE-10607</a>: Fix potential integer overflow in maxArcs computions
+<br /><span class="attrib">(Tang Donghai)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/986">GITHUB#986</a>: Fix FieldExistsQuery rewrite when all docs have vectors.
+<br /><span class="attrib">(Julie Tibshirani)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10623">LUCENE-10623</a>: Error implementation of docValueCount for SortingSortedSetDocValues
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/1028">GITHUB#1028</a>: Fix error in TieredMergePolicy
+<br /><span class="attrib">(Lin Jian)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.other" href="javascript:toggleList('v9.3.0.other')">Other</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v9.3.0.other.list">
+      <li><a href="https://github.com/apache/lucene/pull/991">GITHUB#991</a>: Update randomizedtesting to 2.8.0, hppc to 0.9.1, morfologik to 2.1.9.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10370">LUCENE-10370</a>: pass proper classpath/module arguments for forking jvms from within tests.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10604">LUCENE-10604</a>: Improve ability to test and debug triangulation algorithm in Tessellator.
+<br /><span class="attrib">(Craig Taverner)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/922">GITHUB#922</a>: Remove unused and confusing FacetField indexing options
+<br /><span class="attrib">(Gautam Worah)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.3.0.build" href="javascript:toggleList('v9.3.0.build')">Build</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v9.3.0.build.list">
+      <li><a href="https://github.com/apache/lucene/pull/976">GITHUB#976</a>: Exclude Lucene's own JAR files from classpath entries in Eclipse config.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+</ul>
+<h2><a id="older" href="javascript:toggleList('older')">Older Releases</a></h2>
+<div id="older.list">
+<h3><a id="v9.2.0" href="javascript:toggleList('v9.2.0')">Release 9.2.0  [2022-05-23]</a></h3>
+<ul id="v9.2.0.list">
+  <li><a id="v9.2.0.api_changes" href="javascript:toggleList('v9.2.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(3)
+    <ol id="v9.2.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10325">LUCENE-10325</a>: Facets API extended to support getTopFacets.
+<br /><span class="attrib">(Yuting Gan)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10482">LUCENE-10482</a>: Allow users to create their own DirectoryTaxonomyReaders with empty taxoArrays instead of letting the
+taxoEpoch decide. Add a test case that demonstrates the inconsistencies caused when you reuse taxoArrays on older
+checkpoints.
+<br /><span class="attrib">(Gautam Worah)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10558">LUCENE-10558</a>: Add new constructors to Kuromoji and Nori dictionary classes to support classpath /
+module system usage. It is now possible to use JDK's Class/ClassLoader/Module#getResource(...) apis
+and pass their returned URL to dictionary constructors to load resources from Classpath or Module
+resources.
+<br /><span class="attrib">(Uwe Schindler, Tomoko Uchida, Mike Sokolov)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.2.0.new_features" href="javascript:toggleList('v9.2.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(6)
+    <ol id="v9.2.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10312">LUCENE-10312</a>: Add PersianStemmer based on the Arabic stemmer.
+<br /><span class="attrib">(Ramin Alirezaee)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10539">LUCENE-10539</a>: Return a stream of completions from FSTCompletion.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10385">LUCENE-10385</a>: Implement Weight#count on IndexSortSortedNumericDocValuesRangeQuery
+to speed up computing the number of hits when possible.
+<br /><span class="attrib">(Lu Xugang, Luca Cavanna, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10422">LUCENE-10422</a>: Monitor Improvements: `Monitor` can use a custom `Directory`
+implementation. `Monitor` can be created with a readonly `QueryIndex` in order to
+have readonly `Monitor` instances.
+<br /><span class="attrib">(Niko Usai)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10456">LUCENE-10456</a>: Implement rewrite and Weight#count for MultiRangeQuery
+by merging overlapping ranges .
+<br /><span class="attrib">(Jianping Weng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10444">LUCENE-10444</a>: Support alternate aggregation functions in association facets.
+<br /><span class="attrib">(Greg Miller)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.2.0.improvements" href="javascript:toggleList('v9.2.0.improvements')">Improvements</a>&nbsp;&nbsp;&nbsp;(6)
+    <ol id="v9.2.0.improvements.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10229">LUCENE-10229</a>: return -1 for unknown offsets in ExtendedIntervalsSource. Modify highlighting to
+work properly with or without offsets.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10494">LUCENE-10494</a>: Implement method to bulk add all collection elements to a PriorityQueue.
+<br /><span class="attrib">(Bauyrzhan Sakhariyev)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10484">LUCENE-10484</a>: Add support for concurrent random sampling by calling
+RandomSamplingFacetsCollector#createManager.
+<br /><span class="attrib">(Luca Cavanna)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10467">LUCENE-10467</a>: Throws IllegalArgumentException for Facets#getAllDims and Facets#getTopChildren
+if topN &lt;= 0.
+<br /><span class="attrib">(Yuting Gan)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9848">LUCENE-9848</a>: Correctly sort HNSW graph neighbors when applying diversity criterion
+<br /><span class="attrib">(Mayya
+Sharipova, Michael Sokolov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10527">LUCENE-10527</a>: Use 2*maxConn for the last layer in HNSW
+<br /><span class="attrib">(Mayya Sharipova)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.2.0.optimizations" href="javascript:toggleList('v9.2.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(16)
+    <ol id="v9.2.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10555">LUCENE-10555</a>: avoid NumericLeafComparator#iteratorCost repeated initialization
+when NumericLeafComparator#setScorer is called.
+<br /><span class="attrib">(Jianping Weng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10452">LUCENE-10452</a>: Hunspell: call checkCanceled less frequently to reduce the overhead
+<br /><span class="attrib">(Peter Gromov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10451">LUCENE-10451</a>: Hunspell: don't perform potentially expensive spellchecking after timeout
+<br /><span class="attrib">(Peter Gromov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10418">LUCENE-10418</a>: More `Query#rewrite` optimizations for the non-scoring case.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10436">LUCENE-10436</a>: Deprecate DocValuesFieldExistsQuery, NormsFieldExistsQuery and KnnVectorFieldExistsQuery
+with FieldExistsQuery.
+<br /><span class="attrib">(Zach Chen, Michael McCandless, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10481">LUCENE-10481</a>: FacetsCollector will not request scores if it does not use them.
+<br /><span class="attrib">(Mike Drob)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10503">LUCENE-10503</a>: Potential speedup for pure disjunctions whose clauses produce
+scores that are very close to each other.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10315">LUCENE-10315</a>: Use SIMD instructions to decode BKD doc IDs.
+<br /><span class="attrib">(Guo Feng, Adrien Grand, Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8836">LUCENE-8836</a>: Speed up calls to TermsEnum#lookupOrd on doc values terms enums
+and sequences of increasing ords.
+<br /><span class="attrib">(Bruno Roustant, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10536">LUCENE-10536</a>: Doc values terms dictionaries now use the first (uncompressed)
+term of each block as a dictionary when compressing suffixes of the other 63
+terms of the block.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10411">LUCENE-10411</a>: Add nearest neighbors vectors support to ExitableDirectoryReader.
+<br /><span class="attrib">(Zach Chen, Adrien Grand, Julie Tibshirani, Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10542">LUCENE-10542</a>: FieldSource exists implementations can avoid value retrieval
+<br /><span class="attrib">(Kevin Risden)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10534">LUCENE-10534</a>: MinFloatFunction / MaxFloatFunction exists check can be slow
+<br /><span class="attrib">(Kevin Risden)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10496">LUCENE-10496</a>: Queries sorted by field now better handle the degenerate case
+when the search order and the index order are in opposite directions.
+<br /><span class="attrib">(Jianping Weng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10502">LUCENE-10502</a>: Use IndexedDISI to store docIds and DirectMonotonicWriter/Reader to handle
+ordToDoc in HNSW vectors
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10488">LUCENE-10488</a>: Facets#getTopDims optimized for taxonomy faceting and
+ConcurrentSortedSetDocValuesFacetCounts.
+<br /><span class="attrib">(Yuting Gan)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.2.0.bug_fixes" href="javascript:toggleList('v9.2.0.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(13)
+    <ol id="v9.2.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10477">LUCENE-10477</a>: Highlighter: WeightedSpanTermExtractor.extractWeightedSpanTerms to Query#rewrite
+multiple times if necessary.
+<br /><span class="attrib">(Christine Poerschke, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10491">LUCENE-10491</a>: A correctness bug in the way scores are provided within TaxonomyFacetSumValueSource
+was fixed.
+<br /><span class="attrib">(Michael McCandless, Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10466">LUCENE-10466</a>: Ensure IndexSortSortedNumericDocValuesRangeQuery handles sort field
+types besides LONG
+<br /><span class="attrib">(Andriy Redko)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10292">LUCENE-10292</a>: Suggest: Fix AnalyzingInfixSuggester / BlendedInfixSuggester to correctly return
+existing lookup() results during concurrent build().  Fix other FST based suggesters so that
+getCount() returned results consistent with lookup() during concurrent build().
+<br /><span class="attrib">(hossman)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10508">LUCENE-10508</a>: Fixes some edge cases where GeoArea were built in a way that vertical planes
+could not evaluate their sign, either because the planes where the same or the center between those
+planes was lying in one of the planes.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10495">LUCENE-10495</a>: Fix return statement of siblingsLoaded() in TaxonomyFacets.
+<br /><span class="attrib">(Yuting Gan)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10533">LUCENE-10533</a>: SpellChecker.formGrams is missing bounds check
+<br /><span class="attrib">(Kevin Risden)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10529">LUCENE-10529</a>: Properly handle when TestTaxonomyFacetAssociations test case randomly indexes
+no documents instead of throwing an NPE.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10470">LUCENE-10470</a>: Check if polygon has been successfully tessellated before we fail (we are failing some valid
+tessellations) and allow filtering edges that fold on top of the previous one.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10530">LUCENE-10530</a>: Avoid floating point precision test case bug in TestTaxonomyFacetAssociations.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10552">LUCENE-10552</a>: KnnVectorQuery has incorrect equals/ hashCode.
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10558">LUCENE-10558</a>: Restore behaviour of deprecated Kuromoji and Nori dictionary constructors for
+custom dictionary support. Please also use new URL-based constructors for classpath/module
+system ressources.
+<br /><span class="attrib">(Uwe Schindler, Tomoko Uchida, Mike Sokolov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10564">LUCENE-10564</a>: Make sure SparseFixedBitSet#or updates ramBytesUsed.
+<br /><span class="attrib">(Julie Tibshirani)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.2.0.build" href="javascript:toggleList('v9.2.0.build')">Build</a>&nbsp;&nbsp;&nbsp;(3)
+    <ol id="v9.2.0.build.list">
+      <li><a href="https://github.com/apache/lucene/pull/768">GITHUB#768</a>: Upgrade forbiddenapis to version 3.3.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/890">GITHUB#890</a>: Detect CI builds on Github or Jenkins and enable errorprone.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10532">LUCENE-10532</a>: Remove LuceneTestCase.Slow annotation. All tests can be fast.
+<br /><span class="attrib">(Robert Muir)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.2.0.other" href="javascript:toggleList('v9.2.0.other')">Other</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v9.2.0.other.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10526">LUCENE-10526</a>: Test-framework: Add FilterFileSystemProvider.wrapPath(Path) method for mock filesystems
+to override if they need to extend the Path implementation.
+<br /><span class="attrib">(Gautam Worah, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10525">LUCENE-10525</a>: Test-framework: Add detection of illegal windows filenames to WindowsFS.
+<br /><span class="attrib">(Gautam Worah)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10541">LUCENE-10541</a>: Test-framework: limit the default length of MockTokenizer tokens to 255.
+<br /><span class="attrib">(Robert Muir, Uwe Schindler, Tomoko Uchida, Dawid Weiss)</span></li>
+      <li><a href="https://github.com/apache/lucene/pull/854">GITHUB#854</a>: Allow to link to GitHub pull request from CHANGES.
+<br /><span class="attrib">(Tomoko Uchida, Jan Høydahl)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v9.1.0" href="javascript:toggleList('v9.1.0')">Release 9.1.0  [2022-03-22]</a></h3>
+<ul id="v9.1.0.list">
+  <li><a id="v9.1.0.api_changes" href="javascript:toggleList('v9.1.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(16)
+    <ol id="v9.1.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10244">LUCENE-10244</a>: MultiCollector::getCollectors is now public, allowing users to access the wrapped
+collectors.
+<br /><span class="attrib">(Andriy Redko)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10197">LUCENE-10197</a>: UnifiedHighlighter now has a Builder to construct it.  The UH's setters are now
+deprecated.
+<br /><span class="attrib">(Animesh Pandey, David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10301">LUCENE-10301</a>: the test framework is now a module. All the classes have been moved from
+org.apache.lucene.* to org.apache.lucene.tests.* to avoid package name conflicts with the
+core module.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10183">LUCENE-10183</a>: KnnVectorsWriter#writeField to take KnnVectorsReader instead of VectorValues.
+<br /><span class="attrib">(Zach Chen, Michael Sokolov, Julie Tibshirani, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10335">LUCENE-10335</a>: Deprecate helper methods for resource loading in IOUtils and StopwordAnalyzerBase
+that are not compatible with module system (Class#getResourceAsStream() and Class#getResource()
+are caller sensitive in Java 11). Instead add utility method IOUtils#requireResourceNonNull(T)
+to test existence of resource based on null return value.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10349">LUCENE-10349</a>: WordListLoader methods now return unmodifiable CharArraySets.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10377">LUCENE-10377</a>: SortField.getComparator() has changed signature. The second parameter is now
+a boolean indicating whether or not skipping should be enabled on the comparator.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10381">LUCENE-10381</a>: Require users to provide FacetsConfig for SSDV faceting.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10368">LUCENE-10368</a>: IntTaxonomyFacets has been deprecated and is no longer a supported extension point
+for user-created faceting implementations.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10400">LUCENE-10400</a>: Add constructors that take external resource Paths to dictionary classes in Kuromoji and Nori:
+ConnectionCosts, TokenInfoDictionary, and UnknownDictionary. Old constructors that take resource scheme and
+resource path in those classes are deprecated; These are replaced with the new constructors and planned to be
+removed in a future release.
+<br /><span class="attrib">(Tomoko Uchida, Uwe Schindler, Mike Sokolov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10050">LUCENE-10050</a>: Deprecate DrillSideways#search(Query, Collector) in favor of
+DrillSideways#search(Query, CollectorManager). This reflects the change (<a href="http://issues.apache.org/jira/browse/LUCENE-10002">LUCENE-10002</a>) being made in
+IndexSearcher#search that trends towards using CollectorManagers over Collectors.
+<br /><span class="attrib">(Gautam Worah)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10420">LUCENE-10420</a>: Move functional interfaces in IOUtils to top-level interfaces.
+<br /><span class="attrib">(David Smiley, Uwe Schindler, Dawid Weiss, Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10398">LUCENE-10398</a>: Add static method for getting Terms from LeafReader.
+<br /><span class="attrib">(Spike Liu)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10440">LUCENE-10440</a>: TaxonomyFacets and FloatTaxonomyFacets have been deprecated and are no longer
+supported extension points for user-created faceting implementations.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10431">LUCENE-10431</a>: MultiTermQuery.setRewriteMethod() has been deprecated, and constructor
+parameters for the various implementations added.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10171">LUCENE-10171</a>: OpenNLPOpsFactory.getLemmatizerDictionary(String, ResourceLoader) now returns a
+DictionaryLemmatizer object instead of a raw String serialization of the dictionary.
+<br /><span class="attrib">(Spyros Kapnissis via Michael Gibney, Alessandro Benedetti)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.1.0.new_features" href="javascript:toggleList('v9.1.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(19)
+    <ol id="v9.1.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10255">LUCENE-10255</a>: Lucene JARs are now proper modules, with module descriptors and dependency information.
+<br /><span class="attrib">(Chris Hegarty, Uwe Schindler, Tomoko Uchida, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10342">LUCENE-10342</a>: Lucene Core now depends on java.logging (JUL) module and reports
+if MMapDirectory cannot unmap mapped ByteBuffers or RamUsageEstimator's object size
+calculations may be off. This was added especially for users running Lucene with the
+Java Module System where some optional features are not available by default or supported.
+For all apps using Lucene it is strongly recommended, to explicitely require non-standard
+JDK modules: jdk.unsupported (unmapping) and jdk.management (OOP size for RAM usage calculatons).
+It is also recommended to install JUL logging adapters to feed the log events into your app's
+logging system.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss, Tomoko Uchida, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10330">LUCENE-10330</a>: Make MMapDirectory tests fail by default, if unmapping does not work.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10223">LUCENE-10223</a>: Add interval function support to StandardQueryParser. Add min-should-match operator
+support to StandardQueryParser. Update and clean up package documentation in flexible query parser
+module.
+<br /><span class="attrib">(Dawid Weiss, Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10220">LUCENE-10220</a>: Add an utility method to get IntervalSource from analyzed text (or token stream).
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss, Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10085">LUCENE-10085</a>: Added Weight#count on DocValuesFieldExistsQuery to speed up the query if terms or
+points are indexed.
+<br /><span class="attrib">(Quentin Pradet, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10263">LUCENE-10263</a>: Added Weight#count to NormsFieldExistsQuery to speed up the query if all
+documents have the field..
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10248">LUCENE-10248</a>: Add SpanishPluralStemFilter, for precise stemming of Spanish plurals.
+For more information, see <a href="https://s.apache.org/spanishplural">https://s.apache.org/spanishplural</a>
+<br /><span class="attrib">(Xavier Sanchez Loro)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10243">LUCENE-10243</a>: StandardTokenizer, UAX29URLEmailTokenizer, and HTMLStripCharFilter have
+been upgraded to Unicode 12.1
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10335">LUCENE-10335</a>: Add ModuleResourceLoader as complement to ClasspathResourceLoader.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10245">LUCENE-10245</a>: MultiDoubleValues(Source) and MultiLongValues(Source) were added as multi-valued
+versions of DoubleValues(Source) and LongValues(Source) to the facets module. LongValueFacetCounts,
+LongRangeFacetCounts and DoubleRangeFacetCounts were augmented to support these new multi-valued
+abstractions. DoubleRange and LongRange also support creating queries from these multi-valued
+sources.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10250">LUCENE-10250</a>: Add support for arbitrary length hierarchical SSDV facets.
+<br /><span class="attrib">(Marc D'mello)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10395">LUCENE-10395</a>: Add support for TotalHitCountCollectorManager, a collector manager
+based on TotalHitCountCollector that allows users to parallelize counting the
+number of hits.
+<br /><span class="attrib">(Luca Cavanna, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10403">LUCENE-10403</a>: Add ArrayUtil#grow(T[]).
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10414">LUCENE-10414</a>: Add fn:fuzzyTerm interval function to flexible query parser
+<br /><span class="attrib">(Dawid Weiss,
+Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10378">LUCENE-10378</a>: Implement Weight#count for PointRangeQuery to provide a faster way to calculate
+the number of matching range docs when each doc has at-most one point and the points are 1-dimensional.
+<br /><span class="attrib">(Gautam Worah, Ignacio Vera, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10415">LUCENE-10415</a>: FunctionScoreQuery and IndexOrDocValuesQuery delegate Weight#count.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10382">LUCENE-10382</a>: Add support for filtering in KnnVectorQuery. This allows for finding the
+nearest k documents that also match a query.
+<br /><span class="attrib">(Julie Tibshirani, Joel Bernstein)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10237">LUCENE-10237</a>: Add MergeOnFlushMergePolicy to sandbox.
+<br /><span class="attrib">(Michael Froh, Anand Kotriwal)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.1.0.improvements" href="javascript:toggleList('v9.1.0.improvements')">Improvements</a>&nbsp;&nbsp;&nbsp;(9)
+    <ol id="v9.1.0.improvements.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10313">LUCENE-10313</a>: use java util logging in Luke. Add dynamic log filtering. Drop
+the persistent log previously written to ~/.luke.d/luke.log. Configure Java's default
+logging handlers to persist Luke logs according to your needs.
+<br /><span class="attrib">(Tomoko Uchida, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10238">LUCENE-10238</a>: Upgrade icu4j dependency to 70.1.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9820">LUCENE-9820</a>: Extract BKD tree interface and move intersecting logic to the
+PointValues abstract class.
+<br /><span class="attrib">(Ignacio Vera, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10262">LUCENE-10262</a>: Lift up restrictions for navigating PointValues#PointTree
+added in <a href="http://issues.apache.org/jira/browse/LUCENE-9820">LUCENE-9820</a>
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9538">LUCENE-9538</a>: Detect polygon self-intersections in the Tessellator.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10275">LUCENE-10275</a>: Speed up MultiRangeQuery by using an interval tree.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10229">LUCENE-10229</a>: Unify behaviour of match offsets for interval queries on fields
+with or without offsets enabled.
+<br /><span class="attrib">(Patrick Zhai)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10054">LUCENE-10054</a> Make HnswGraph hierarchical
+<br /><span class="attrib">(Mayya Sharipova, Julie Tibshirani, Mike Sokolov,
+Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10371">LUCENE-10371</a>: Make IndexRearranger able to arrange segment in a determined order.
+<br /><span class="attrib">(Patrick Zhai)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.1.0.optimizations" href="javascript:toggleList('v9.1.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(20)
+    <ol id="v9.1.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10329">LUCENE-10329</a>: Use computed block mask for DirectMonotonicReader#get.
+<br /><span class="attrib">(Guo Feng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10280">LUCENE-10280</a>: Optimize BKD leaves' doc IDs codec when they are continuous.
+<br /><span class="attrib">(Guo Feng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10233">LUCENE-10233</a>: Store BKD leaves' doc IDs as bitset in some cases (typically for low cardinality fields
+ or sorted indices) to speed up addAll.
+<br /><span class="attrib">(Guo Feng, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10225">LUCENE-10225</a>: Improve IntroSelector with 3-ways partitioning.
+<br /><span class="attrib">(Bruno Roustant, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10321">LUCENE-10321</a>: Tweak MultiRangeQuery interval tree creation to skip "pulling up" mins.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10252">LUCENE-10252</a>: ValueSource.asDoubleValues and asLongValues should not compute the score unless
+asked to -- typically never.  This fixes a performance regression since 7.3 <a href="http://issues.apache.org/jira/browse/LUCENE-8099">LUCENE-8099</a> when some
+older boosting queries were replaced with this.
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10346">LUCENE-10346</a>: Optimize facet counting for single-valued TaxonomyFacetCounts.
+<br /><span class="attrib">(Guo Feng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10356">LUCENE-10356</a>: Further optimize facet counting for single-valued TaxonomyFacetCounts.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10379">LUCENE-10379</a>: Count directly into the dense values array in FastTaxonomyFacetCounts#countAll.
+<br /><span class="attrib">(Guo Feng, Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10375">LUCENE-10375</a>: Speed up HNSW vectors merge by first writing combined vector
+data to a file.
+<br /><span class="attrib">(Julie Tibshirani, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10388">LUCENE-10388</a>: Remove MultiLevelSkipListReader#SkipBuffer to make JVM less confused.
+<br /><span class="attrib">(Guo Feng)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10367">LUCENE-10367</a>: Optimize CoveringQuery for the case when the minimum number of
+matching clauses is a constant.
+<br /><span class="attrib">(LuYunCheng via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10412">LUCENE-10412</a>: More `Query#rewrite` optimizations for MatchNoDocsQuery.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10408">LUCENE-10408</a> Better encoding of doc Ids in vectors.
+<br /><span class="attrib">(Mayya Sharipova, Julie Tibshirani, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10424">LUCENE-10424</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-10439">LUCENE-10439</a>: Optimize the "everything matches" case for count query in PointRangeQuery.
+<br /><span class="attrib">(Ignacio Vera, Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10084">LUCENE-10084</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-10435">LUCENE-10435</a>: Rewrite DocValuesFieldExistsQuery to MatchAllDocsQuery whenever
+terms or points have a docCount that is equal to maxDoc.
+<br /><span class="attrib">(Vigya Sharma, Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10442">LUCENE-10442</a>: When indexQuery or/and dvQuery be a MatchAllDocsQuery
+then IndexOrDocValuesQuery should be rewrite to MatchAllDocsQuery.
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10450">LUCENE-10450</a>: IndexSortSortedNumericDocValuesRangeQuery could be rewrite to MatchAllDocsQuery.
+<br /><span class="attrib">(Lu Xugang)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10453">LUCENE-10453</a>: Indexing and search speedup with KNN vectors when using
+euclidean distance.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10455">LUCENE-10455</a>: IndexSortSortedNumericDocValuesRangeQuery now implements the scorerSupplier API.
+<br /><span class="attrib">(Lu Xugang)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.1.0.changes_in_runtime_behavior" href="javascript:toggleList('v9.1.0.changes_in_runtime_behavior')">Changes in runtime behavior</a>&nbsp;&nbsp;&nbsp;(2)
+    <ol id="v9.1.0.changes_in_runtime_behavior.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10291">LUCENE-10291</a>: Lucene now only writes files for terms and postings if at least
+one field is indexed with postings.
+<br /><span class="attrib">(Yannick Welsch)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10311">LUCENE-10311</a>: FixedBitSet#approximateCardinality now trades accuracy for
+speed instead of delegating to FixedBitSet#cardinality.
+<br /><span class="attrib">(Robert Muir, Adrien Grand)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.1.0.bug_fixes" href="javascript:toggleList('v9.1.0.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(16)
+    <ol id="v9.1.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10316">LUCENE-10316</a>: fix TestLRUQueryCache.testCachingAccountableQuery failure.
+<br /><span class="attrib">(Patrick Zhai)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10279">LUCENE-10279</a>: Fix equals in MultiRangeQuery.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10349">LUCENE-10349</a>: Fix all analyzers to behave according to their documentation:
+getDefaultStopSet() methods now return unmodifiable CharArraySets.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10352">LUCENE-10352</a>: Add missing service provider entries: KoreanNumberFilterFactory,
+DaitchMokotoffSoundexFilterFactory
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10352">LUCENE-10352</a>: Fixed ctor argument checks: JapaneseKatakanaStemFilter,
+DoubleMetaphoneFilter
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10236">LUCENE-10236</a>: Stop duplicating norms when scoring in CombinedFieldQuery.
+<br /><span class="attrib">(Zach Chen, Jim Ferenczi, Julie Tibshirani)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10353">LUCENE-10353</a>: Add random null injection to TestRandomChains.
+<br /><span class="attrib">(Robert Muir,
+Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10377">LUCENE-10377</a>: CheckIndex could incorrectly throw an error when checking index sorts
+defined on older indexes.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9952">LUCENE-9952</a>: Address inaccurate dim counts for SSDV faceting in cases where a dim is configured
+as multi-valued.
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10401">LUCENE-10401</a>: Fix lookups on empty doc-value terms dictionaries to no longer
+throw an ArrayIndexOutOfBoundsException.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10402">LUCENE-10402</a>: Prefix intervals should declare their automaton as binary, otherwise prefixes
+containing multibyte characters will not correctly match.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10407">LUCENE-10407</a>: Containing intervals could sometimes yield incorrect matches when wrapped
+in a disjunction.
+<br /><span class="attrib">(Alan Woodward, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10405">LUCENE-10405</a>: When using the MemoryIndex, binary and Sorted doc values are stored
+ as BytesRef instead of BytesRefHash so they don't have a limit on size.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10428">LUCENE-10428</a>: Queries with a misbehaving score function may no longer cause
+infinite loops in their parent BooleanQuery.
+<br /><span class="attrib">(Ankit Jain, Daniel Doubrovkine, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10431">LUCENE-10431</a>: MultiTermQuery no longer includes its rewrite method in its hashcode
+calculation, as this could cause problems with wrapper queries like BooleanQuery which
+expect their child queries hashcodes to be stable.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10469">LUCENE-10469</a>: Fix ScoreMode propagation by ConstantScoreQuery.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.1.0.other" href="javascript:toggleList('v9.1.0.other')">Other</a>&nbsp;&nbsp;&nbsp;(7)
+    <ol id="v9.1.0.other.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10273">LUCENE-10273</a>: Deprecate SpanishMinimalStemFilter in favor of SpanishPluralStemFilter.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10284">LUCENE-10284</a>: Upgrade morfologik-stemming to 2.1.8.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10310">LUCENE-10310</a>: TestXYDocValuesQueries#doRandomDistanceTest does not produce random circles with radius
+with '0' value any longer.
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10352">LUCENE-10352</a>: Removed duplicate instances of StringMockResourceLoader and migrated class to
+test-framework.
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10352">LUCENE-10352</a>: Convert TestAllAnalyzersHaveFactories and TestRandomChains to a global integration test
+and discover classes to check from module system. The test now checks all analyzer modules,
+so it may discover new bugs outside of analysis:common module.
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10413">LUCENE-10413</a>: Make Ukrainian default stop words list available as a public getter.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10437">LUCENE-10437</a>: Polygon tessellator throws a more informative error message when the provided polygon
+does not contain enough no-collinear points.
+<br /><span class="attrib">(Ignacio Vera)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v9.0.0" href="javascript:toggleList('v9.0.0')">Release 9.0.0  [2021-12-07]</a></h3>
+<ul id="v9.0.0.list">
+  <li><a id="v9.0.0.new_features" href="javascript:toggleList('v9.0.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(8)
+    <ol id="v9.0.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9322">LUCENE-9322</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-9855">LUCENE-9855</a>: Vector-valued fields, Lucene90 Codec
+<br /><span class="attrib">(Mike Sokolov, Julie Tibshirani, Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9004">LUCENE-9004</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-10040">LUCENE-10040</a>: Approximate nearest vector search via NSW graphs
+<br /><span class="attrib">(Mike Sokolov, Tomoko Uchida et al.)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9659">LUCENE-9659</a>: SpanPayloadCheckQuery now supports inequalities.
+<br /><span class="attrib">(Kevin Watters, Gus Heck)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9589">LUCENE-9589</a>: Swedish Minimal Stemmer
+<br /><span class="attrib">(janhoy)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9313">LUCENE-9313</a>: Add SerbianAnalyzer based on the snowball stemmer.
+<br /><span class="attrib">(Dragan Ivanovic)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10095">LUCENE-10095</a>: Add NepaliAnalyzer based on the snowball stemmer.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10096">LUCENE-10096</a>: Add TamilAnalyzer based on the snowball stemmer.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10102">LUCENE-10102</a>: Add JapaneseCompletionFilter for Input Method-aware auto-completion
+<br /><span class="attrib">(Tomoko Uchida, Robert Muir, Jun Ohtani)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.0.0.system_requirements" href="javascript:toggleList('v9.0.0.system_requirements')">System Requirements</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v9.0.0.system_requirements.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8738">LUCENE-8738</a>: Move to Java 11 as minimum Java version.
+<br /><span class="attrib">(Adrien Grand, Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.0.0.api_changes" href="javascript:toggleList('v9.0.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(44)
+    <ol id="v9.0.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8638">LUCENE-8638</a>: Remove many deprecated methods and classes including FST.lookupByOutput(),
+LegacyBM25Similarity and Jaspell suggester.
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8982">LUCENE-8982</a>: Separate out native code to another module to allow cpp
+build with gradle. This also changes the name of the native "posix-support"
+library to LuceneNativeIO.
+<br /><span class="attrib">(Zachary Chen, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9562">LUCENE-9562</a>: All binary analysis packages (and corresponding
+Maven artifacts) with names containing '-analyzers-' have been renamed
+to '-analysis-'.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8474">LUCENE-8474</a>: RAMDirectory and associated deprecated classes have been
+removed.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-3041">LUCENE-3041</a>: The deprecated Weight#extractTerms() method has been
+removed
+<br /><span class="attrib">(Alan Woodward, Simon Willnauer, David Smiley, Luca Cavanna)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8805">LUCENE-8805</a>: StoredFieldVisitor#stringField now takes a String rather than a
+byte[] that stores the UTF-8 bytes of the stored string.
+<br /><span class="attrib">(Namgyu Kim via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8811">LUCENE-8811</a>: BooleanQuery#setMaxClauseCount() and #getMaxClauseCount() have
+moved to IndexSearcher. The checks are now implemented using a QueryVisitor
+and apply to all queries, rather than only booleans.
+<br /><span class="attrib">(Atri Sharma, Adrien
+Grand, Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8909">LUCENE-8909</a>: The deprecated IndexWriter#getFieldNames() method has been removed.
+<br /><span class="attrib">(Adrien Grand, Munendra S N)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8948">LUCENE-8948</a>: Change "name" argument in ICU factories to "form". Here, "form" is
+named after "Unicode Normalization Form".
+<br /><span class="attrib">(Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8933">LUCENE-8933</a>: Validate JapaneseTokenizer user dictionary entry.
+<br /><span class="attrib">(Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8905">LUCENE-8905</a>: Better defence against malformed arguments in TopDocsCollector
+<br /><span class="attrib">(Atri Sharma)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9089">LUCENE-9089</a>: FST Builder renamed FSTCompiler with fluent-style Builder.
+<br /><span class="attrib">(Bruno Roustant)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9212">LUCENE-9212</a>: Deprecated Intervals.multiterm() methods that take a bare Automaton
+have been removed
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9264">LUCENE-9264</a>: SimpleFSDirectory has been removed in favor of NIOFSDirectory.
+<br /><span class="attrib">(Yannick Welsch)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9281">LUCENE-9281</a>: Use java.util.ServiceLoader to load codec components and analysis
+factories to be compatible with Java Module System. This allows to load factories
+without META-INF/service from a Java module exposing the factory in the module
+descriptor. This breaks backwards compatibility as custom analysis factories
+must now also implement the default constructor (see MIGRATE.md).
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9307">LUCENE-9307</a>: BufferedIndexInput#setBufferSize has been removed.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9340">LUCENE-9340</a>: SimpleBindings#add(SortField) has been removed.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9462">LUCENE-9462</a>: Fields without positions should still return MatchIterator.
+<br /><span class="attrib">(Alan Woodward, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9516">LUCENE-9516</a>: Removed the ability to replace the IndexingChain / DocConsumer
+in Lucenes IndexWriter. The interface is not sufficient to efficiently
+replace the functionality with reasonable efforts.
+<br /><span class="attrib">(Simon Willnauer)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9317">LUCENE-9317</a> <a href="http://issues.apache.org/jira/browse/LUCENE-9318">LUCENE-9318</a> <a href="http://issues.apache.org/jira/browse/LUCENE-9319">LUCENE-9319</a> <a href="http://issues.apache.org/jira/browse/LUCENE-9558">LUCENE-9558</a> <a href="http://issues.apache.org/jira/browse/LUCENE-9600">LUCENE-9600</a> : Clean up package name conflicts
+between modules. See MIGRATE.md for details.
+<br /><span class="attrib">(David Ryan, Tomoko Uchida, Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9646">LUCENE-9646</a>: Set BM25Similarity discountOverlaps via the constructor
+<br /><span class="attrib">(Patrick Marty via Bruno Roustant)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9480">LUCENE-9480</a>: Make DataInput's skipBytes(long) abstract as the implementation was not performant.
+IndexInput's api is unaffected: skipBytes() is implemented via seek().
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9796">LUCENE-9796</a>: SortedDocValues no longer extends BinaryDocValues, as binaryValue() was not performant.
+See MIGRATE.md for details.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9853">LUCENE-9853</a>: JapaneseAnalyzer should use CJKWidthCharFilter for full-width and half-width character normalization.
+<br /><span class="attrib">(Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9387">LUCENE-9387</a>: Removed CodecReader#ramBytesUsed.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9334">LUCENE-9334</a>: Require consistency between data-structures on a per-field basis.
+A field across all documents within an index must be indexed with the same index
+options and data-structures. As a consequence of this, doc values updates are
+only applicable for fields that are indexed with doc values only.
+<br /><span class="attrib">(Mayya Sharipova,
+Adrien Grand, Simon Willnauer)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9047">LUCENE-9047</a>: Directory API is now little endian.
+<br /><span class="attrib">(Ignacio Vera, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9948">LUCENE-9948</a>: No longer require the user to specify whether-or-not a field is multi-valued in
+LongValueFacetCounts (detect automatically based on what is indexed).
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9843">LUCENE-9843</a>: Remove compression option on default codec's docvalues.
+<br /><span class="attrib">(Jack Conradson)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9204">LUCENE-9204</a>: SpanQuery and its subclasses have been moved from core/ into the
+queries/ module.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9454">LUCENE-9454</a>: Analyzer no longer has a mutable version field.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9956">LUCENE-9956</a>: Expose the getBaseQuery, getDrillDownQueries APIs from DrillDownQuery
+<br /><span class="attrib">(Gautam Worah)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8143">LUCENE-8143</a>: SpanBoostQuery has been removed.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9998">LUCENE-9998</a>: Remove unused parameter fis in StoredFieldsWriter.finish() and TermVectorsWriter.finish(),
+including those subclasses.
+<br /><span class="attrib">(kkewwei)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7020">LUCENE-7020</a>: TieredMergePolicy#setMaxMergeAtOnceExplicit has been removed.
+TieredMergePolicy no longer sets a limit on the maximum number of segments
+that can be merged at once via a forced merge.
+<br /><span class="attrib">(Adrien Grand, Shawn Heisey)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10027">LUCENE-10027</a>: Directory reader open API from indexCommit and leafSorter has been modified
+to add an extra parameter - minSupportedMajorVersion.
+<br /><span class="attrib">(Mayya Sharipova)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9620">LUCENE-9620</a>: Added a (sometimes) faster implementation for IndexSearcher#count that relies on the new Weight#count API.
+The Weight#count API represents a cleaner way for Query classes to optimize their counting method.
+<br /><span class="attrib">(Gautam Worah, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10089">LUCENE-10089</a>: Add a method to SortField that allows to enable or disable numeric sort
+optimization to use the points index to skip over non-competitive documents,
+which is enabled by default from 9.0
+<br /><span class="attrib">(Mayya Sharipova, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10115">LUCENE-10115</a>: Add an extension point, BaseQueryParser#getFuzzyDistance, to allow custom
+query parsers to determine the similarity distance for fuzzy queries.
+<br /><span class="attrib">(Chris Hegarty)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10132">LUCENE-10132</a>: Support addition of diagnostics by custom merge policies
+<br /><span class="attrib">(Chris Hegarty)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9325">LUCENE-9325</a>: Sort is now final, and the `setSort()` method has been removed
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9431">LUCENE-9431</a>: The UnifiedHighlighter's WEIGHT_MATCHES flag is now set by default, provided its
+requirements are met.  It can be disabled via over-riding getFlags
+<br /><span class="attrib">(Animesh Pandey, David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10158">LUCENE-10158</a>: Add a new interface Unwrappable to the utils package to allow code to
+unwrap wrappers/delegators that are added by Lucene's testing framework. This will allow
+testing new MMapDirectory implementation based on JDK Project Panama.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10260">LUCENE-10260</a>: LucenePackage class has been removed. The implementation string can be
+retrieved from Version.getPackageImplementationVersion().
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+    </ol>
+  </li>
+  <li><a id="v9.0.0.improvements" href="javascript:toggleList('v9.0.0.improvements')">Improvements</a>&nbsp;&nbsp;&nbsp;(48)
+    <ol id="v9.0.0.improvements.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10234">LUCENE-10234</a>: Added Automatic-Module-Name to all JARs. This is the first step to enable full Java
+module system (JMS) support in later Lucene versions. At the moment, the automatic names should
+not be considered stable.
+<br /><span class="attrib">(Dawid Weiss, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10182">LUCENE-10182</a>: TestRamUsageEstimator used RamUsageTester.sizeOf throughout, making some of the
+tests trivial. Now, it compares results from RamUsageEstimator with those from RamUsageTester.
+To prevent this error in the future, RamUsageTester.sizeOf was renamed to ramUsed.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss, Stefan Vodita)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10129">LUCENE-10129</a>: RamUsageEstimator overloads the shallowSizeOf method for primitive arrays
+to avoid falling back on shallowSizeOf(Object), which could lead to performance traps.
+<br /><span class="attrib">(Robert Muir, Uwe Schindler, Stefan Vodita)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10139">LUCENE-10139</a>: ExternalRefSorter returns a covariant with a subtype of BytesRefIterator
+that is Closeable.
+<br /><span class="attrib">(Dawid Weiss)</span>.
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-10135">LUCENE-10135</a>: Correct passage selector behavior for long matching snippets
+<br /><span class="attrib">(Dawid Weiss)</span>.
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9960">LUCENE-9960</a>: Avoid unnecessary top element replacement for equal elements in PriorityQueue.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9633">LUCENE-9633</a>: Improve match highlighter behavior for degenerate intervals (on non-existing positions).
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9618">LUCENE-9618</a>: Do not call IntervalIterator.nextInterval after NO_MORE_DOCS is returned.
+<br /><span class="attrib">(Patrick Zhai)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9576">LUCENE-9576</a>: Improve ConcurrentMergeScheduler settings by default, assuming modern I/O.
+Previously Lucene was too conservative, jumping through hoops to detect if disks were SSD-backed.
+In many common modern cases (VMs, RAID arrays, containers, encrypted mounts, non-Linux OS),
+the pessimistic heuristics were wrong, resulting in slower indexing performance. Heuristics were
+also complex and would trigger JDK issues even on unrelated mount points. Merge scheduler defaults
+are now modernized and the heuristics removed. Users with spinning disks that want to maximize I/O
+performance should tweak ConcurrentMergeScheduler.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9463">LUCENE-9463</a>: Query match region retrieval component, passage scoring and formatting
+for building custom highlighters.
+<br /><span class="attrib">(Alan Woodward, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9370">LUCENE-9370</a>: RegExp query is no longer lenient about inappropriate backslashes and
+follows the Java Pattern policy for rejecting illegal syntax.
+<br /><span class="attrib">(Mark Harwood)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9336">LUCENE-9336</a>: RegExp query now supports \w \W \d \D \s \S expressions.
+This is a break with previous behaviour where these were (mis)interpreted
+as literally the characters w W d etc.
+<br /><span class="attrib">(Mark Harwood)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8757">LUCENE-8757</a>: When provided with an ExecutorService to run queries across
+multiple threads, IndexSearcher now groups small segments together, up to
+250k docs per slice.
+<br /><span class="attrib">(Atri Sharma via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8857">LUCENE-8857</a>: Introduce Custom Tiebreakers in TopDocs.merge for tie breaking on
+docs on equal scores. Also, remove the ability of TopDocs.merge to set shard
+indices
+<br /><span class="attrib">(Atri Sharma, Adrien Grand, Simon Willnauer)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8958">LUCENE-8958</a>: Shared count early termination for relevance sorted indices
+<br /><span class="attrib">(Atri Sharma)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8937">LUCENE-8937</a>: Avoid aggressive stemming on numbers in the FrenchMinimalStemmer.
+<br /><span class="attrib">(Adrien Gallou via Tomoko Uchida)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8596">LUCENE-8596</a>: Kuromoji user dictionary now accepts entries containing hash mark (#) that were
+previously treated as beginning a line-ending comment
+<br /><span class="attrib">(Satoshi Kato and Masaru Hasegawa via
+Michael Sokolov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9109">LUCENE-9109</a>: Use StackWalker to implement TestSecurityManager's detection
+of JVM exit
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9110">LUCENE-9110</a>: Refactor stack analysis in tests to use generalized LuceneTestCase
+methods that use StackWalker
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9206">LUCENE-9206</a>: IndexMergeTool gets additional options to control the merging.
+This tool no longer forceMerge(1)s to a single segment by default. If you
+rely upon this behavior, pass -max-segments 1 instead.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9220">LUCENE-9220</a>: Upgrade snowball to 2.0. New snowball stemmers: Hindi, Indonesian,
+Nepali, Serbian, and Tamil. New stoplist: Indonesian. Adds gradle 'snowball'
+task to regenerate and ease future upgrades.
+<br /><span class="attrib">(Robert Muir, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9354">LUCENE-9354</a>: Improvements to snowball french stopwords list, so that it is less
+aggressive.
+<br /><span class="attrib">(Philippe Ouellet)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9114">LUCENE-9114</a>: Improve ValueSourceScorer's Default Cost Implementation
+<br /><span class="attrib">(Atri Sharma, David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9074">LUCENE-9074</a>: Introduce Slice Executor For Dynamic Runtime Execution Of Slices
+<br /><span class="attrib">(Atri Sharma)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9280">LUCENE-9280</a>: Add an ability for field comparators to skip non-competitive documents.
+Creating a TopFieldCollector with totalHitsThreshold less than Integer.MAX_VALUE
+instructs Lucene to skip non-competitive documents whenever possible. For numeric
+sort fields the skipping functionality works when the same field is indexed both
+with doc values and points. In this case, there is an assumption that the same data is
+stored in these points and doc values
+<br /><span class="attrib">(Mayya Sharipova, Jim Ferenczi, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9449">LUCENE-9449</a>: Enhance DocComparator to provide an iterator over competitive
+documents when searching with "after". This iterator can quickly position
+on the desired "after" document skipping all documents and segments before
+"after". Also redesign numeric comparators to provide skipping functionality
+by default.
+<br /><span class="attrib">(Mayya Sharipova, Jim Ferenczi)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9527">LUCENE-9527</a>: Upgrade javacc to 7.0.4, regenerate query parsers.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9531">LUCENE-9531</a>: Consolidated CharStream and FastCharStream classes: these have been moved
+from each query parser package to org.apache.lucene.queryparser.charstream
+<br /><span class="attrib">(Dawid Weiss)</span>.
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9450">LUCENE-9450</a>: Use BinaryDocValues for the taxonomy index instead of StoredFields.
+Add backwards compatibility tests for the taxonomy index.
+<br /><span class="attrib">(Gautam Worah, Michael McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9605">LUCENE-9605</a>: Update snowball to d8cf01ddf37a, adds Yiddish stemmer.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-8982">LUCENE-8982</a>: Make NativeUnixDirectory pure java with FileChannel direct IO flag,
+and rename to DirectIODirectory (Zach Chen, Uwe Schindler, Mike McCandless, Dawid Weiss).
+<p>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9674">LUCENE-9674</a>: Implement faster advance on VectorValues using binary search.
+<br /><span class="attrib">(Anand Kotriwal, Mike Sokolov)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9794">LUCENE-9794</a>: Speed up implementations of DataInput.skipBytes().
+<br /><span class="attrib">(Greg Miller)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9898">LUCENE-9898</a>: Removes no longer used scorePayload method from BM25Similarity
+<br /><span class="attrib">(Pieter van Boxtel)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-9850">LUCENE-9850</a>: Switch to PFOR encoding for doc IDs (instead of FOR).

[... 18190 lines stripped ...]