You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by sa...@apache.org on 2016/06/21 12:13:53 UTC

svn commit: r14072 [3/19] - in /dev/lucene/lucene-solr-5.5.2-RC1-revcfb792be2c783fc0dfee97a779281e0ef0148006: ./ lucene/ lucene/changes/ lucene/maven/ lucene/maven/org/ lucene/maven/org/apache/ lucene/maven/org/apache/lucene/ lucene/maven/org/apache/lu...

Added: dev/lucene/lucene-solr-5.5.2-RC1-revcfb792be2c783fc0dfee97a779281e0ef0148006/lucene/changes/Changes.html
==============================================================================
--- dev/lucene/lucene-solr-5.5.2-RC1-revcfb792be2c783fc0dfee97a779281e0ef0148006/lucene/changes/Changes.html (added)
+++ dev/lucene/lucene-solr-5.5.2-RC1-revcfb792be2c783fc0dfee97a779281e0ef0148006/lucene/changes/Changes.html Tue Jun 21 12:13:46 2016
@@ -0,0 +1,13522 @@
+<!--
+**********************************************************
+** 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.
+****************************************************************************
+-->
+<html>
+<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 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 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("^(?:v5\\\\.5\\\\.2|v5\\\\.5\\\\.1)");
+    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 != 'v5.5.2.list' 
+            && list.id != 'v5.5.1.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";
+        }
+      }
+      /* 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 == 'v5.5.2' || anchor.id == 'v5.5.1') {
+            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="v5.5.2" href="javascript:toggleList('v5.5.2')">Release 5.5.2 </a></h2>
+<ul id="v5.5.2.list">
+  <li><a id="v5.5.2.bug_fixes" href="javascript:toggleList('v5.5.2.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(11)
+    <ol id="v5.5.2.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7065">LUCENE-7065</a>: Fix the explain for the global ordinals join query. Before the
+explain would also indicate that non matching documents would match.
+On top of that with score mode average, the explain would fail with a NPE.
+<br /><span class="attrib">(Martijn van Groningen)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7111">LUCENE-7111</a>: DocValuesRangeQuery.newLongRange behaves incorrectly for
+Long.MAX_VALUE and Long.MIN_VALUE
+<br /><span class="attrib">(Ishan Chattopadhyaya via Steve Rowe)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7139">LUCENE-7139</a>: Fix bugs in geo3d's Vincenty surface distance
+implementation
+<br /><span class="attrib">(Karl Wright via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7187">LUCENE-7187</a>: Block join queries' Weight#extractTerms(...) implementations
+should delegate to the wrapped weight.
+<br /><span class="attrib">(Martijn van Groningen)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7279">LUCENE-7279</a>: JapaneseTokenizer throws ArrayIndexOutOfBoundsException
+on some valid inputs
+<br /><span class="attrib">(Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7219">LUCENE-7219</a>: Make queryparser/xml (Point|LegacyNumeric)RangeQuery builders
+match the underlying queries' (lower|upper)Term optionality logic.
+<br /><span class="attrib">(Kaneshanathan Srivisagan, Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7284">LUCENE-7284</a>: GapSpans needs to implement positionsCost().
+<br /><span class="attrib">(Daniel Bigham, Alan
+Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7231">LUCENE-7231</a>: WeightedSpanTermExtractor didn't deal correctly with single-term
+phrase queries.
+<br /><span class="attrib">(Eva Popenda, Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7301">LUCENE-7301</a>: Multiple doc values updates to the same document within
+one update batch could be applied in the wrong order resulting in
+the wrong updated value
+<br /><span class="attrib">(Ishan Chattopadhyaya, hossman, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7132">LUCENE-7132</a>: BooleanQuery sometimes assigned too-low scores in cases
+where ranges of documents had only a single clause matching while
+other ranges had more than one clause matching
+<br /><span class="attrib">(Ahmet Arslan,
+hossman, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7291">LUCENE-7291</a>: Spatial heatmap faceting could mis-count when the heatmap crosses the
+dateline and indexed non-point shapes are much bigger than the heatmap region.
+<br /><span class="attrib">(David Smiley)</span></li>
+    </ol>
+  </li>
+</ul>
+<h2><a id="v5.5.1" href="javascript:toggleList('v5.5.1')">Release 5.5.1  [2016-05-05]</a></h2>
+<ul id="v5.5.1.list">
+  <li><a id="v5.5.1.bug_fixes" href="javascript:toggleList('v5.5.1.bug_fixes')">Bug fixes</a>&nbsp;&nbsp;&nbsp;(3)
+    <ol id="v5.5.1.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7112">LUCENE-7112</a>: WeightedSpanTermExtractor.extractUnknownQuery is only called
+on queries that could not be extracted.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7188">LUCENE-7188</a>: remove incorrect sanity check in NRTCachingDirectory.listAll()
+that led to IllegalStateException being thrown when nothing was wrong.
+<br /><span class="attrib">(David Smiley, yonik)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7209">LUCENE-7209</a>: Fixed explanations of FunctionScoreQuery.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+    </ol>
+  </li>
+</ul>
+<h2><a id="older" href="javascript:toggleList('older')">Older Releases</a></h2>
+<ul id="older.list">
+<h3><a id="v5.5.0" href="javascript:toggleList('v5.5.0')">Release 5.5.0  [2016-02-23]</a></h3>
+<ul id="v5.5.0.list">
+  <li><a id="v5.5.0.new_features" href="javascript:toggleList('v5.5.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(6)
+    <ol id="v5.5.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-5868">LUCENE-5868</a>: JoinUtil.createJoinQuery(..,NumericType,..) query-time join
+for LONG and INT fields with NUMERIC and SORTED_NUMERIC doc values.
+<br /><span class="attrib">(Alexey Zelin via Mikhail Khludnev)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6939">LUCENE-6939</a>: Add exponential reciprocal scoring to
+BlendedInfixSuggester, to even more strongly favor suggestions that
+match closer to the beginning
+<br /><span class="attrib">(Arcadius Ahouansou via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6958">LUCENE-6958</a>: Improved CustomAnalyzer to take class references to factories
+as alternative to their SPI name. This enables compile-time safety when
+defining analyzer's components.
+<br /><span class="attrib">(Uwe Schindler, Shai Erera)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6818">LUCENE-6818</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-6986">LUCENE-6986</a>: Add DFISimilarity implementing the divergence
+from independence model.
+<br /><span class="attrib">(Ahmet Arslan via Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/SOLR-4619">SOLR-4619</a>: Added removeAllAttributes() to AttributeSource, which removes
+all previously added attributes.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7010">LUCENE-7010</a>: Added MergePolicyWrapper to allow easy wrapping of other policies.
+<br /><span class="attrib">(Shai Erera)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.5.0.api_changes" href="javascript:toggleList('v5.5.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(10)
+    <ol id="v5.5.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6997">LUCENE-6997</a>: refactor sandboxed GeoPointField and query classes to lucene-spatial
+module under new lucene.spatial.geopoint package
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6908">LUCENE-6908</a>: GeoUtils static relational methods have been refactored to new
+GeoRelationUtils and now correctly handle large irregular rectangles, and
+pole crossing distance queries.
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6900">LUCENE-6900</a>: Grouping sortWithinGroup variables used to allow null to mean
+Sort.RELEVANCE.  Null is no longer permitted.
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6919">LUCENE-6919</a>: The Scorer class has been refactored to expose an iterator
+instead of extending DocIdSetIterator. asTwoPhaseIterator() has been renamed
+to twoPhaseIterator() for consistency.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6973">LUCENE-6973</a>: TeeSinkTokenFilter no longer accepts a SinkFilter (the latter
+has been removed). If you wish to filter the sinks, you can wrap them with
+any other TokenFilter (e.g. a FilteringTokenFilter). Also, you can no longer
+add a SinkTokenStream to an existing TeeSinkTokenFilter. If you need to
+share multiple streams with a single sink, chain them with multiple
+TeeSinkTokenFilters.
+DateRecognizerSinkFilter was renamed to DateRecognizerFilter and moved under
+analysis/common. TokenTypeSinkFilter was removed (use TypeTokenFilter instead).
+TokenRangeSinkFilter was removed.
+<br /><span class="attrib">(Shai Erera, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6980">LUCENE-6980</a>: Default applyAllDeletes to true when opening
+near-real-time readers
+<br /><span class="attrib">(Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6981">LUCENE-6981</a>: SpanQuery.getTermContexts() helper methods are now public, and
+SpanScorer has a public getSpans() method.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6932">LUCENE-6932</a>: IndexInput.seek implementations now throw EOFException
+if you seek beyond the end of the file
+<br /><span class="attrib">(Adrien Grand, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6988">LUCENE-6988</a>: IndexableField.tokenStream() no longer throws IOException
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7028">LUCENE-7028</a>: Deprecate a duplicate method in NumericUtils.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.5.0.optimizations" href="javascript:toggleList('v5.5.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(9)
+    <ol id="v5.5.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6930">LUCENE-6930</a>: Decouple GeoPointField from NumericType by using a custom
+and efficient GeoPointTokenStream and TermEnum designed for GeoPoint prefix
+terms.
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6951">LUCENE-6951</a>: Improve GeoPointInPolygonQuery using point orientation based
+line crossing algorithm, and adding result for multi-value docs when least
+1 point satisfies polygon criteria.
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6889">LUCENE-6889</a>: BooleanQuery.rewrite now performs some query optimization, in
+particular to rewrite queries that look like: "+*:* #filter" to a
+"ConstantScore(filter)".
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6912">LUCENE-6912</a>: Grouping's Collectors now calculate a response to needsScores()
+instead of always 'true'.
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6815">LUCENE-6815</a>: DisjunctionScorer now advances two-phased iterators lazily,
+stopping to evaluate them as soon as a single one matches. The other iterators
+will be confirmed lazily when computing score() or freq().
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6926">LUCENE-6926</a>: MUST_NOT clauses now use the match cost API to run the slow bits
+last whenever possible.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6944">LUCENE-6944</a>: BooleanWeight no longer creates sub-scorers if BS1 is not
+applicable.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6940">LUCENE-6940</a>: MUST_NOT clauses execute faster, especially when they are sparse.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6470">LUCENE-6470</a>: Improve efficiency of TermsQuery constructors.
+<br /><span class="attrib">(Robert Muir)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.5.0.bug_fixes" href="javascript:toggleList('v5.5.0.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(10)
+    <ol id="v5.5.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6976">LUCENE-6976</a>: BytesRefTermAttributeImpl.copyTo NPE'ed if BytesRef was null.
+Added equals &amp; hashCode, and a new test for these things.
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6932">LUCENE-6932</a>: RAMDirectory's IndexInput was failing to throw
+EOFException in some cases
+<br /><span class="attrib">(Stéphane Campinas, Adrien Grand via Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6896">LUCENE-6896</a>: Don't treat the smallest possible norm value as an infinitely
+long document in SimilarityBase or BM25Similarity. Add more warnings to sims
+that will not work well with extreme tf values.
+<br /><span class="attrib">(Ahmet Arslan, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6984">LUCENE-6984</a>: SpanMultiTermQueryWrapper no longer modifies its wrapped query.
+<br /><span class="attrib">(Alan Woodward, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6998">LUCENE-6998</a>: Fix a couple places to better detect truncated index files
+as corruption.
+<br /><span class="attrib">(Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7002">LUCENE-7002</a>: Fixed MultiCollector to not throw a NPE if setScorer is called
+after one of the sub collectors is done collecting.
+<br /><span class="attrib">(John Wang, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7027">LUCENE-7027</a>: Fixed NumericTermAttribute to not throw IllegalArgumentException
+after NumericTokenStream was exhausted.
+<br /><span class="attrib">(Uwe Schindler, Lee Hinman,
+Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7018">LUCENE-7018</a>: Fix GeoPointTermQueryConstantScoreWrapper to add document on
+first GeoPointField match.
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7019">LUCENE-7019</a>: Add two-phase iteration to GeoPointTermQueryConstantScoreWrapper.
+<br /><span class="attrib">(Robert Muir via Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6989">LUCENE-6989</a>: Improve MMapDirectory's unmapping checks to catch more non-working
+cases. The unmap-hack does not yet work with recent Java 9. Official support
+will come with Lucene 6.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.5.0.other" href="javascript:toggleList('v5.5.0.other')">Other</a>&nbsp;&nbsp;&nbsp;(15)
+    <ol id="v5.5.0.other.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6924">LUCENE-6924</a>: Upgrade randomizedtesting to 2.3.2.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6920">LUCENE-6920</a>: Improve custom function checks in expressions module
+to use MethodHandles and work without extra security privileges.
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6921">LUCENE-6921</a>: Fix SPIClassIterator#isParentClassLoader to don't
+require extra permissions.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6923">LUCENE-6923</a>: Fix RamUsageEstimator to access private fields inside
+AccessController block for computing size.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6907">LUCENE-6907</a>: make TestParser extendable, rename test/.../xml/
+NumericRangeQueryQuery.xml to NumericRangeQuery.xml
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6925">LUCENE-6925</a>: add ForceMergePolicy class in test-framework
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6945">LUCENE-6945</a>: factor out TestCorePlus(Queries|Extensions)Parser from
+TestParser, rename TestParser to TestCoreParser
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6949">LUCENE-6949</a>: fix (potential) resource leak in SynonymFilterFactory
+(<a href="https://scan.coverity.com/projects/5620">https://scan.coverity.com/projects/5620</a> CID 120656)
+(Christine Poerschke, Coverity Scan (via Rishabh Patel))
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6961">LUCENE-6961</a>: Improve Exception handling in AnalysisFactories /
+AnalysisSPILoader: Don't wrap exceptions occuring in factory's
+ctor inside InvocationTargetException.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6965">LUCENE-6965</a>: Expression's JavascriptCompiler now throw ParseException
+with bad function names or bad arity instead of IllegalArgumentException.
+<br /><span class="attrib">(Tomás Fernández Löbbe, Uwe Schindler, Ryan Ernst)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6964">LUCENE-6964</a>: String-based signatures in JavascriptCompiler replaced
+with better compile-time-checked MethodType; generated class files
+are no longer marked as synthetic.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6978">LUCENE-6978</a>: Refactor several code places that lookup locales
+by string name to use BCP47 locale tag instead. LuceneTestCase
+now also prints locales on failing tests this way.
+Locale#forLanguageTag() and Locale#toString() were placed on list
+of forbidden signatures.
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6988">LUCENE-6988</a>: You can now add IndexableFields directly to a MemoryIndex,
+and create a MemoryIndex from a lucene Document.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7005">LUCENE-7005</a>: TieredMergePolicy tweaks (&gt;= vs. &gt;, @see get vs. set)
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-7006">LUCENE-7006</a>: increase BaseMergePolicyTestCase use (TestNoMergePolicy and
+TestSortingMergePolicy now extend it, TestUpgradeIndexMergePolicy added)
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v5.4.1" href="javascript:toggleList('v5.4.1')">Release 5.4.1  [2016-01-23]</a></h3>
+<ul id="v5.4.1.list">
+  <li><a id="v5.4.1.bug_fixes" href="javascript:toggleList('v5.4.1.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(9)
+    <ol id="v5.4.1.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6910">LUCENE-6910</a>: fix 'if ... &gt; Integer.MAX_VALUE' check in
+(Binary|Numeric)DocValuesFieldUpdates.merge
+(<a href="https://scan.coverity.com/projects/5620">https://scan.coverity.com/projects/5620</a> CID 119973 and CID 120081)
+(Christine Poerschke, Coverity Scan (via Rishabh Patel))
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6946">LUCENE-6946</a>: SortField.equals now takes the missingValue parameter into
+account.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6918">LUCENE-6918</a>: LRUQueryCache.onDocIdSetEviction is only called when at least
+one DocIdSet is being evicted.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6929">LUCENE-6929</a>: Fix SpanNotQuery rewriting to not drop the pre/post parameters.
+<br /><span class="attrib">(Tim Allison via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6950">LUCENE-6950</a>: Fix FieldInfos handling of UninvertingReader, e.g. do not
+hide the true docvalues update generation or other properties.
+<br /><span class="attrib">(Ishan Chattopadhyaya via Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6948">LUCENE-6948</a>: Fix ArrayIndexOutOfBoundsException in PagedBytes$Reader.fill
+by removing an unnecessary long-to-int cast.
+<br /><span class="attrib">(Michael Lawley via Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/SOLR-7865">SOLR-7865</a>: BlendedInfixSuggester was returning too many results
+<br /><span class="attrib">(Arcadius Ahouansou via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6970">LUCENE-6970</a>: Fixed off-by-one error in Lucene54DocValuesProducer that could
+potentially corrupt doc values.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-2229">LUCENE-2229</a>: Fix Highlighter's SimpleSpanFragmenter when multiple adjacent
+stop words following a span can unduly make the fragment way too long.
+<br /><span class="attrib">(Elmer Garduno, Lukhnos Liu via David Smiley)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v5.4.0" href="javascript:toggleList('v5.4.0')">Release 5.4.0  [2015-12-14]</a></h3>
+<ul id="v5.4.0.list">
+  <li><a id="v5.4.0.new_features" href="javascript:toggleList('v5.4.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(10)
+    <ol id="v5.4.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6747">LUCENE-6747</a>: FingerprintFilter is a TokenFilter that outputs a single
+token which is a concatenation of the sorted and de-duplicated set of
+input tokens. Useful for normalizing short text in clustering/linking
+tasks.
+<br /><span class="attrib">(Mark Harwood, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6875">LUCENE-6875</a>: New Serbian Filter.
+<br /><span class="attrib">(Nikola Smolenski via Robert Muir,
+Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6720">LUCENE-6720</a>: New FunctionRangeQuery wrapper around ValueSourceScorer
+(returned from ValueSource/FunctionValues.getRangeScorer()).
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6724">LUCENE-6724</a>: Add utility APIs to GeoHashUtils to compute neighbor
+geohash cells
+<br /><span class="attrib">(Nick Knize via Mike McCandless)</span>.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6737">LUCENE-6737</a>: Add DecimalDigitFilter which folds unicode digits to basic latin.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6699">LUCENE-6699</a>: Add integration of BKD tree and geo3d APIs to give
+fast, very accurate query to find all indexed points within an
+earth-surface shape
+<br /><span class="attrib">(Karl Wright, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6838">LUCENE-6838</a>: Added IndexSearcher#getQueryCache and #getQueryCachingPolicy.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6844">LUCENE-6844</a>: PayloadScoreQuery can include or exclude underlying span scores
+from its score calculations
+<br /><span class="attrib">(Bill Bell, Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6778">LUCENE-6778</a>: Add GeoPointDistanceRangeQuery, to search for points
+within a "ring" (beyond a minimum distance and below a maximum
+distance)
+<br /><span class="attrib">(Nick Knize via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6874">LUCENE-6874</a>: Add a new UnicodeWhitespaceTokenizer to analysis/common
+that uses Unicode character properties extracted from ICU4J to tokenize
+text on whitespace. This tokenizer will split on non-breaking
+space (NBSP), too.
+<br /><span class="attrib">(David Smiley, Uwe Schindler, Steve Rowe)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.api_changes" href="javascript:toggleList('v5.4.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(11)
+    <ol id="v5.4.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6590">LUCENE-6590</a>: Query.setBoost(), Query.getBoost() and Query.clone() are gone.
+In order to apply boosts, you now need to wrap queries in a BoostQuery.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6716">LUCENE-6716</a>: SpanPayloadCheckQuery now takes a List&lt;BytesRef&gt; rather than
+a Collection&lt;byte[]&gt;.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6489">LUCENE-6489</a>: The various span payload queries have been moved to the queries
+submodule, and PayloadSpanUtil is now in sandbox.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6650">LUCENE-6650</a>: The spatial module no longer uses Filter in any way.  All
+spatial Filters now subclass Query.  The spatial heatmap/facet API
+now accepts a Bits parameter to filter counts.
+<br /><span class="attrib">(David Smiley, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6301">LUCENE-6301</a>: org.apache.lucene.search.Filter is now deprecated. You should use
+Query objects instead of Filters, and the BooleanClause.Occur.FILTER clause in
+order to let Lucene know that a Query should be used for filtering but not
+scoring.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6939">LUCENE-6939</a>: SpanOrQuery.addClause is now deprecated, clauses should all be
+provided at construction time.
+<br /><span class="attrib">(Paul Elschot via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6855">LUCENE-6855</a>: CachingWrapperQuery is deprecated and will be removed in 6.0.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6870">LUCENE-6870</a>: DisjunctionMaxQuery#add is now deprecated, clauses should all be
+provided at construction time.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6884">LUCENE-6884</a>: Analyzer.tokenStream() and Tokenizer.setReader() are no longer
+declared as throwing IOException.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6849">LUCENE-6849</a>: Expose IndexWriter.flush() method, to move all
+in-memory segments to disk without opening a near-real-time reader
+nor calling fsync
+<br /><span class="attrib">(Robert Muir, Simon Willnauer, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6911">LUCENE-6911</a>: Add correct StandardQueryParser.getMultiFields() method,
+deprecate no-op StandardQueryParser.getMultiFields(CharSequence[]) method.
+(Christine Poerschke, Mikhail Khludnev, Coverity Scan (via Rishabh Patel))
+<p/>
+</li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.optimizations" href="javascript:toggleList('v5.4.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(18)
+    <ol id="v5.4.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6708">LUCENE-6708</a>: TopFieldCollector does not compute the score several times on the
+same document anymore.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6720">LUCENE-6720</a>: ValueSourceScorer, returned from
+FunctionValues.getRangeScorer(), now uses TwoPhaseIterator.
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6756">LUCENE-6756</a>: MatchAllDocsQuery now has a dedicated BulkScorer for better
+performance when used as a top-level query.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6746">LUCENE-6746</a>: DisjunctionMaxQuery, BoostingQuery and BoostedQuery now create
+sub weights through IndexSearcher so that they can be cached.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6754">LUCENE-6754</a>: Optimized IndexSearcher.count for the cases when it can use
+index statistics instead of collecting all matches.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6773">LUCENE-6773</a>: Nested conjunctions now iterate over documents as if clauses
+were all at the same level.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6777">LUCENE-6777</a>: Reuse BytesRef when visiting term ranges in
+GeoPointTermsEnum to reduce GC pressure
+<br /><span class="attrib">(Nick Knize via Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6779">LUCENE-6779</a>: Reduce memory allocated by CompressingStoredFieldsWriter to write
+strings larger than 64kb by an amount equal to string's utf8 size.
+<br /><span class="attrib">(Dawid Weiss, Robert Muir, shalin)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6850">LUCENE-6850</a>: Optimize BooleanScorer for sparse clauses.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6840">LUCENE-6840</a>: Ordinal indexes for SORTED_SET/SORTED_NUMERIC fields and
+addresses for BINARY fields are now stored on disk instead of in memory.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6878">LUCENE-6878</a>: Speed up TopDocs.merge.
+<br /><span class="attrib">(Daniel Jelinski via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6885">LUCENE-6885</a>: StandardDirectoryReader (initialCapacity) tweaks
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6863">LUCENE-6863</a>: Optimized storage requirements of doc values fields when less
+than 1% of documents have a value.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6892">LUCENE-6892</a>: various lucene.index initialCapacity tweaks
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6276">LUCENE-6276</a>: Added TwoPhaseIterator.matchCost() which allows to confirm the
+least costly TwoPhaseIterators first.
+<br /><span class="attrib">(Paul Elschot via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6898">LUCENE-6898</a>: In the default codec, the last stored field value will not
+be fully read from disk if the supplied StoredFieldVisitor doesn't want it.
+So put your largest text field value last to benefit.
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6909">LUCENE-6909</a>: Remove unnecessary synchronized from
+FacetsConfig.getDimConfig for better concurrency
+<br /><span class="attrib">(Sanne Grinovero
+via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/SOLR-7730">SOLR-7730</a>: Speed up SlowCompositeReaderWrapper.getSortedSetDocValues() by
+avoiding merging FieldInfos just to check doc value type.
+<br /><span class="attrib">(Paul Vasilyev, Yuriy Pakhomov, Mikhail Khludnev, yonik)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.bug_fixes" href="javascript:toggleList('v5.4.0.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(19)
+    <ol id="v5.4.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6905">LUCENE-6905</a>: Unwrap center longitude for dateline crossing
+GeoPointDistanceQuery.
+<br /><span class="attrib">(Nick Knize)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6817">LUCENE-6817</a>: ComplexPhraseQueryParser.ComplexPhraseQuery does not display
+slop in toString().
+<br /><span class="attrib">(Ahmet Arslan via Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6730">LUCENE-6730</a>: Hyper-parameter c is ignored in term frequency NormalizationH1.
+<br /><span class="attrib">(Ahmet Arslan via Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6742">LUCENE-6742</a>: Lovins &amp; Finnish implementation of SnowballFilter was
+fixed to behave exactly as specified. A bug in the snowball compiler
+caused differences in output of the filter in comparison to the original
+test data.  In addition, the performance of those filters was improved
+significantly.
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6783">LUCENE-6783</a>: Removed side effects from FuzzyLikeThisQuery.rewrite.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6776">LUCENE-6776</a>: Fix geo3d math to handle randomly squashed planet
+models
+<br /><span class="attrib">(Karl Wright via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6792">LUCENE-6792</a>: Fix TermsQuery.toString() to work with binary terms.
+<br /><span class="attrib">(Ruslan Muzhikov, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-5503">LUCENE-5503</a>: When Highlighter's WeightedSpanTermExtractor converts a
+PhraseQuery to an equivalent SpanQuery, it would sometimes use a slop that is
+too low (no highlight) or determine inOrder wrong.
+<br /><span class="attrib">(Tim Allison via David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6790">LUCENE-6790</a>: Fix IndexWriter thread safety when one thread is
+handling a tragic exception but another is still committing
+<br /><span class="attrib">(Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6810">LUCENE-6810</a>: Upgrade to Spatial4j 0.5 -- fixes some edge-case bugs in the
+spatial module. See <a href="https://github.com/locationtech/spatial4j/blob/master/CHANGES.md">https://github.com/locationtech/spatial4j/blob/master/CHANGES.md</a>
+<br /><span class="attrib">(David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6813">LUCENE-6813</a>: OfflineSorter no longer removes its output Path up
+front, and instead opens it for write with the
+StandardCopyOption.REPLACE_EXISTING to overwrite any prior file, so
+that callers can safely use Files.createTempFile for the output.
+This change also fixes OfflineSorter's default temp directory when
+running tests to use mock filesystems so e.g. we detect file handle
+leaks
+<br /><span class="attrib">(Dawid Weiss, Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6813">LUCENE-6813</a>: RangeTreeWriter was failing to close all file handles
+it opened, leading to intermittent failures on Windows
+<br /><span class="attrib">(Dawid Weiss,
+Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6826">LUCENE-6826</a>: Fix ClassCastException when merging a field that has no
+terms because they were filtered out by e.g. a FilterCodecReader
+<br /><span class="attrib">(Trejkaz via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6823">LUCENE-6823</a>: LocalReplicator should use System.nanoTime as its clock
+source for checking for expiration
+<br /><span class="attrib">(Ishan Chattopadhyaya via Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6856">LUCENE-6856</a>: The Weight wrapper used by LRUQueryCache now delegates to the
+original Weight's BulkScorer when applicable.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6858">LUCENE-6858</a>: Fix ContextSuggestField to correctly wrap token stream
+when using CompletionAnalyzer.
+<br /><span class="attrib">(Areek Zillur)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6872">LUCENE-6872</a>: IndexWriter handles any VirtualMachineError, not just OOM,
+as tragic.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6814">LUCENE-6814</a>: PatternTokenizer no longer hangs onto heap sized to the
+maximum input string it's ever seen, which can be a large memory
+"leak" if you tokenize large strings with many threads across many
+indices
+<br /><span class="attrib">(Alex Chow via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6888">LUCENE-6888</a>: Explain output of map() function now also prints default value
+<br /><span class="attrib">(janhoy)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.other" href="javascript:toggleList('v5.4.0.other')">Other</a>&nbsp;&nbsp;&nbsp;(26)
+    <ol id="v5.4.0.other.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6899">LUCENE-6899</a>: Upgrade randomizedtesting to 2.3.1.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6478">LUCENE-6478</a>: Test execution can hang with java.security.debug.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6862">LUCENE-6862</a>: Upgrade of RandomizedRunner to version 2.2.0.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6857">LUCENE-6857</a>: Validate StandardQueryParser with NOT operator
+with-in parantheses.
+<br /><span class="attrib">(Jigar Shah via Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6827">LUCENE-6827</a>: Use explicit capacity ArrayList instead of a LinkedList
+in MultiFieldQueryNodeProcessor.
+<br /><span class="attrib">(Dawid Weiss)</span>.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6812">LUCENE-6812</a>: Upgrade RandomizedTesting to 2.1.17.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6174">LUCENE-6174</a>: Improve "ant eclipse" to select right JRE for building.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6417">LUCENE-6417</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-6830">LUCENE-6830</a>: Upgrade ANTLR used in expressions module
+to version 4.5.1-1.
+<br /><span class="attrib">(Jack Conradson, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6729">LUCENE-6729</a>: Upgrade ASM used in expressions module to version 5.0.4.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6738">LUCENE-6738</a>: remove IndexWriterConfig.[gs]etIndexingChain
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6755">LUCENE-6755</a>: more tests of ToChildBlockJoinScorer.advance
+<br /><span class="attrib">(hossman)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6571">LUCENE-6571</a>: fix some private access level javadoc errors and warnings
+<br /><span class="attrib">(Cao Manh Dat, Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6768">LUCENE-6768</a>: AbstractFirstPassGroupingCollector.groupSort private member
+is not needed.
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6761">LUCENE-6761</a>: MatchAllDocsQuery's Scorers do not expose approximations
+anymore.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6775">LUCENE-6775</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-6833">LUCENE-6833</a>: Improved MorfologikFilterFactory to allow
+loading of custom dictionaries from ResourceLoader. Upgraded
+Morfologik to version 2.0.1. The 'dictionary' attribute has been
+reverted back and now points at the dictionary resource to be
+loaded instead of the default Polish dictionary.
+<br /><span class="attrib">(Uwe Schindler, Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6797">LUCENE-6797</a>: Make GeoCircle an interface and use a factory to create
+it, to eventually handle degenerate cases
+<br /><span class="attrib">(Karl Wright via Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6800">LUCENE-6800</a>: Use XYZSolidFactory to create XYZSolids
+<br /><span class="attrib">(Karl Wright
+via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6798">LUCENE-6798</a>: Geo3d now models degenerate (too tiny) circles as a
+single point
+<br /><span class="attrib">(Karl Wright via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6770">LUCENE-6770</a>: Add javadocs that FSDirectory canonicalizes the path.
+<br /><span class="attrib">(Uwe Schindler, Vladimir Kuzmin)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6795">LUCENE-6795</a>: Fix various places where code used
+AccessibleObject#setAccessible() without a privileged block. Code
+without a hard requirement to do reflection were rewritten. This
+makes Lucene and Solr ready for Java 9 Jigsaw's module system, where
+reflection on Java's runtime classes is very restricted.
+<br /><span class="attrib">(Robert Muir, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6467">LUCENE-6467</a>: Simplify Query.equals.
+<br /><span class="attrib">(Paul Elschot via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6845">LUCENE-6845</a>: SpanScorer is now merged into Spans
+<br /><span class="attrib">(Alan Woodward, David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6887">LUCENE-6887</a>: DefaultSimilarity is deprecated, use ClassicSimilarity for equivilent behavior,
+or consider switching to BM25Similarity which will become the new default in Lucene 6.0
+<br /><span class="attrib">(hossman)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6893">LUCENE-6893</a>: factor out CorePlusQueriesParser from CorePlusExtensionsParser
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6902">LUCENE-6902</a>: Don't retry to fsync files / directories; fail
+immediately.
+<br /><span class="attrib">(Daniel Mitterdorfer, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6801">LUCENE-6801</a>: Clarify JavaDocs of PhraseQuery that it in fact supports terms
+at the same position (as does MultiPhraseQuery), treated like a conjunction.
+Added test.
+<br /><span class="attrib">(David Smiley, Adrien Grand)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.build" href="javascript:toggleList('v5.4.0.build')">Build</a>&nbsp;&nbsp;&nbsp;(2)
+    <ol id="v5.4.0.build.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6732">LUCENE-6732</a>: Improve checker for invalid source patterns to also
+detect javadoc-style license headers. Use Groovy to implement the
+checks instead of plain Ant.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6594">LUCENE-6594</a>: Update forbiddenapis to 2.0.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.tests" href="javascript:toggleList('v5.4.0.tests')">Tests</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v5.4.0.tests.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6752">LUCENE-6752</a>: Add Math#random() to forbiddenapis.
+<br /><span class="attrib">(Uwe Schindler,
+Mikhail Khludnev, Andrei Beliakov)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.changes_in_backwards_compatibility_policy" href="javascript:toggleList('v5.4.0.changes_in_backwards_compatibility_policy')">Changes in Backwards Compatibility Policy</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v5.4.0.changes_in_backwards_compatibility_policy.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6742">LUCENE-6742</a>: The Lovins &amp; Finnish implementation of SnowballFilter
+were fixed to now behave exactly like the original Snowball stemmer.
+If you have indexed text using those stemmers you may need to reindex.
+<br /><span class="attrib">(Uwe Schindler, Robert Muir)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.4.0.changes_in_runtime_behavior" href="javascript:toggleList('v5.4.0.changes_in_runtime_behavior')">Changes in Runtime Behavior</a>&nbsp;&nbsp;&nbsp;(3)
+    <ol id="v5.4.0.changes_in_runtime_behavior.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6772">LUCENE-6772</a>: MultiCollector now catches CollectionTerminatedException and
+removes the collector that threw this exception from the list of sub
+collectors to collect.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6784">LUCENE-6784</a>: IndexSearcher's query caching is enabled by default. Run
+indexSearcher.setQueryCache(null) to disable.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6305">LUCENE-6305</a>: BooleanQuery.equals and hashcode do not depend on the order of
+clauses anymore.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v5.3.2" href="javascript:toggleList('v5.3.2')">Release 5.3.2  [2016-01-22]</a></h3>
+<ul id="v5.3.2.list">
+  <li><a id="v5.3.2.bug_fixes" href="javascript:toggleList('v5.3.2.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v5.3.2.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/SOLR-7865">SOLR-7865</a>: BlendedInfixSuggester was returning too many results
+<br /><span class="attrib">(Arcadius Ahouansou via Mike McCandless)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v5.3.1" href="javascript:toggleList('v5.3.1')">Release 5.3.1  [2015-09-24]</a></h3>
+<ul id="v5.3.1.list">
+  <li><a id="v5.3.1.bug_fixes" href="javascript:toggleList('v5.3.1.bug_fixes')">Bug Fixes</a>&nbsp;&nbsp;&nbsp;(3)
+    <ol id="v5.3.1.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6774">LUCENE-6774</a>: Remove classloader hack in MorfologikFilter.
+<br /><span class="attrib">(Robert Muir,
+Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6748">LUCENE-6748</a>: UsageTrackingQueryCachingPolicy no longer caches trivial queries
+like MatchAllDocsQuery.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6781">LUCENE-6781</a>: Fixed BoostingQuery to rewrite wrapped queries.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.1.tests" href="javascript:toggleList('v5.3.1.tests')">Tests</a>&nbsp;&nbsp;&nbsp;(1)
+    <ol id="v5.3.1.tests.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6760">LUCENE-6760</a>, <a href="http://issues.apache.org/jira/browse/SOLR-7958">SOLR-7958</a>: Move TestUtil#randomWhitespace to the only
+Solr test that is using it. The method is not useful for Lucene tests
+(and easily breaks, e.g., in Java 9 caused by Unicode version updates).
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+</ul>
+<h3><a id="v5.3.0" href="javascript:toggleList('v5.3.0')">Release 5.3.0  [2015-08-25]</a></h3>
+<ul id="v5.3.0.list">
+  <li><a id="v5.3.0.new_features" href="javascript:toggleList('v5.3.0.new_features')">New Features</a>&nbsp;&nbsp;&nbsp;(31)
+    <ol id="v5.3.0.new_features.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6485">LUCENE-6485</a>: Add CustomSeparatorBreakIterator to postings
+highlighter which splits on any character. For example, it
+can be used with getMultiValueSeparator render whole field
+values.
+<br /><span class="attrib">(Luca Cavanna via Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6459">LUCENE-6459</a>: Add common suggest API that mirrors Lucene's
+Query/IndexSearcher APIs for Document based suggester.
+Adds PrefixCompletionQuery, RegexCompletionQuery,
+FuzzyCompletionQuery and ContextQuery.
+<br /><span class="attrib">(Areek Zillur via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6487">LUCENE-6487</a>: Spatial Geo3D API now has a WGS84 ellipsoid world model option.
+<br /><span class="attrib">(Karl Wright via David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6477">LUCENE-6477</a>: Add experimental BKD geospatial tree doc values format
+and queries, for fast "bbox/polygon contains lat/lon points"
+<br /><span class="attrib">(Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6526">LUCENE-6526</a>: Asserting(Query|Weight|Scorer) now ensure scores are not computed
+if they are not needed.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6481">LUCENE-6481</a>: Add GeoPointField, GeoPointInBBoxQuery,
+GeoPointInPolygonQuery for simple "indexed lat/lon point in
+bbox/shape" searching.
+<br /><span class="attrib">(Nick Knize via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-5954">LUCENE-5954</a>: The segments_N commit point now stores the Lucene
+version that wrote the commit as well as the lucene version that
+wrote the oldest segment in the index, for faster checking of "too
+old" indices
+<br /><span class="attrib">(Ryan Ernst, Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6519">LUCENE-6519</a>: BKDPointInPolygonQuery is much faster by avoiding
+the per-hit polygon check when a leaf cell is fully contained by the
+polygon.
+<br /><span class="attrib">(Nick Knize, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6549">LUCENE-6549</a>: Add preload option to MMapDirectory.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6504">LUCENE-6504</a>: Add Lucene53Codec, with norms implemented directly
+via the Directory's RandomAccessInput api.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6539">LUCENE-6539</a>: Add new DocValuesNumbersQuery, to match any document
+containing one of the specified long values.  This change also
+moves the existing DocValuesTermsQuery and DocValuesRangeQuery
+to Lucene's sandbox module, since in general these queries are
+quite slow and are only fast in specific cases.
+<br /><span class="attrib">(Adrien Grand,
+Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6577">LUCENE-6577</a>: Give earlier and better error message for invalid CRC.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6544">LUCENE-6544</a>: Geo3D: (1) Regularize path &amp; polygon construction, (2) add
+PlanetModel.surfaceDistance() (ellipsoidal calculation), (3) cache lat &amp; lon
+in GeoPoint, (4) add thread-safety where missing -- Geo3dShape.
+<br /><span class="attrib">(Karl Wright,
+David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6606">LUCENE-6606</a>: SegmentInfo.toString now confesses how the documents
+were sorted, when SortingMergePolicy was used
+<br /><span class="attrib">(Christine Poerschke
+via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6524">LUCENE-6524</a>: IndexWriter can now be initialized from an already open
+near-real-time or non-NRT reader.
+<br /><span class="attrib">(Boaz Leskes, Robert Muir, Mike
+McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6578">LUCENE-6578</a>: Geo3D can now compute the distance from a point to a shape, both
+inner distance and to an outside edge. Multiple distance algorithms are
+available.
+<br /><span class="attrib">(Karl Wright, David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6632">LUCENE-6632</a>: Geo3D: Compute circle planes more accurately.
+<br /><span class="attrib">(Karl Wright via David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6653">LUCENE-6653</a>: Added general purpose BytesTermAttribute to basic token
+attributes package that can be used for TokenStreams that solely produce
+binary terms.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6365">LUCENE-6365</a>: Add Operations.topoSort, to run topological sort of the
+states in an Automaton
+<br /><span class="attrib">(Markus Heiden via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6365">LUCENE-6365</a>: Replace Operations.getFiniteStrings with a
+more scalable iterator API (FiniteStringsIterator)
+<br /><span class="attrib">(Markus Heiden
+via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6589">LUCENE-6589</a>: Add a new org.apache.lucene.search.join.CheckJoinIndex class
+that can be used to validate that an index has an appropriate structure to
+run join queries.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6659">LUCENE-6659</a>: Remove IndexWriter's unnecessary hard limit on max concurrency
+<br /><span class="attrib">(Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6547">LUCENE-6547</a>: Add GeoPointDistanceQuery, matching all points within
+the specified distance from the center point.  Fix
+GeoPointInBBoxQuery to handle dateline crossing.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6694">LUCENE-6694</a>: Add LithuanianAnalyzer and LithuanianStemmer.
+<br /><span class="attrib">(Dainius Jocas via Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6695">LUCENE-6695</a>: Added a new BlendedTermQuery to blend statistics across several
+terms.
+<br /><span class="attrib">(Simon Willnauer, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6706">LUCENE-6706</a>: Added a new PayloadScoreQuery that generalises the behaviour of
+PayloadTermQuery and PayloadNearQuery to all Span queries.
+<br /><span class="attrib">(Alan Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6697">LUCENE-6697</a>: Add experimental range tree doc values format and
+queries, based on a 1D version of the spatial BKD tree, for a faster
+and smaller alternative to postings-based numeric and binary term
+filtering.  Range trees can also handle values larger than 64 bits.
+<br /><span class="attrib">(Adrien Grand, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6647">LUCENE-6647</a>: Add GeoHash string utility APIs
+<br /><span class="attrib">(Nick Knize via Mike
+McCandless)</span>.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6710">LUCENE-6710</a>: GeoPointField now uses full 64 bits (up from 62) to encode
+lat/lon
+<br /><span class="attrib">(Nick Knize via Mike McCandless)</span>.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6580">LUCENE-6580</a>: SpanNearQuery now allows defined-width gaps in its subqueries
+<br /><span class="attrib">(Alan Woodward, Adrien Grand)</span>.
+<p/>
+</li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6712">LUCENE-6712</a>: Use doc values to post-filter GeoPointField hits that
+fall in boundary cells, resulting in smaller index, faster searches
+and less heap used for each query
+<br /><span class="attrib">(Nick Knize via Mike McCandless)</span>.
+<p/>
+</li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.api_changes" href="javascript:toggleList('v5.3.0.api_changes')">API Changes</a>&nbsp;&nbsp;&nbsp;(21)
+    <ol id="v5.3.0.api_changes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6508">LUCENE-6508</a>: Simplify Lock api, there is now just
+Directory.obtainLock() which returns a Lock that can be
+released (or fails with exception). Add lock verification
+to IndexWriter. Improve exception messages when locking fails.
+<br /><span class="attrib">(Uwe Schindler, Mike McCandless, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6529">LUCENE-6529</a>: Removed an optimization in UninvertingReader that was causing
+incorrect results for Numeric fields using precisionStep
+<br /><span class="attrib">(hossman, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6551">LUCENE-6551</a>: Add missing ConcurrentMergeScheduler.getAutoIOThrottle
+getter
+<br /><span class="attrib">(Simon Willnauer, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6552">LUCENE-6552</a>: Add MergePolicy.OneMerge.getMergeInfo and rename
+setInfo to setMergeInfo
+<br /><span class="attrib">(Simon Willnauer, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6525">LUCENE-6525</a>: Deprecate IndexWriterConfig's writeLockTimeout.
+<br /><span class="attrib">(Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6466">LUCENE-6466</a>: Moved SpanQuery.getSpans() and .extractTerms() to SpanWeight
+<br /><span class="attrib">(Alan Woodward, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6371">LUCENE-6371</a>, <a href="http://issues.apache.org/jira/browse/LUCENE-6490">LUCENE-6490</a>: Payload collection from Spans is moved to a more generic
+SpanCollector framework.  Spans no longer implements .hasPayload() and
+.getPayload() methods, and instead exposes a collect() method that allows
+the collection of arbitrary postings information. SpanPayloadCheckQuery and
+SpanPayloadNearCheckQuery have moved from the .spans package to the .payloads
+package.
+<br /><span class="attrib">(Alan Woodward, David Smiley, Paul Elschot, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6583">LUCENE-6583</a>: FilteredQuery is deprecated and will be removed in 6.0. It should
+be replaced with a BooleanQuery which handle the query as a MUST clause and
+the filter as a FILTER clause.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6553">LUCENE-6553</a>: The postings, spans and scorer APIs no longer take an acceptDocs
+parameter. Live docs are now always checked on top of these APIs.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6634">LUCENE-6634</a>: PKIndexSplitter now takes a Query instead of a Filter to decide
+how to split an index.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6643">LUCENE-6643</a>: GroupingSearch from lucene/grouping was changed to take a Query
+object to define groups instead of a Filter.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6554">LUCENE-6554</a>: ToParentBlockJoinFieldComparator was removed because of a bug
+with missing values that could not be fixed. ToParentBlockJoinSortField now
+works with string or numeric doc values selectors. Sorting on anything else
+than a string or numeric field would require to implement a custom selector.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6648">LUCENE-6648</a>: All lucene/facet APIs now take Query objects where they used to
+take Filter objects.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6640">LUCENE-6640</a>: Suggesters now take a BitsProducer object instead of a Filter
+object to reduce the scope of doc IDs that may be returned, emphasizing the
+fact that these objects need to support random-access.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6646">LUCENE-6646</a>: Make EarlyTerminatingCollector take a Sort object directly
+instead of a SortingMergePolicy.
+<br /><span class="attrib">(Christine Poerschke via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6649">LUCENE-6649</a>: BitDocIdSetFilter and BitDocIdSetCachingWrapperFilter are now
+deprecated in favour of BitSetProducer and QueryBitSetProducer, which do not
+extend oal.search.Filter.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6607">LUCENE-6607</a>: Factor out geo3d into its own spatial3d module.
+<br /><span class="attrib">(Karl
+Wright, Nick Knize, David Smiley, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6531">LUCENE-6531</a>: PhraseQuery is now immutable and can be built using the
+PhraseQuery.Builder class.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6570">LUCENE-6570</a>: BooleanQuery is now immutable and can be built using the
+BooleanQuery.Builder class.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6702">LUCENE-6702</a>: NRTSuggester: Add a method to inject context values at index time
+in ContextSuggestField. Simplify ContextQuery logic for extracting contexts and
+add dedicated method to consider all context values at query time.
+<br /><span class="attrib">(Areek Zillur, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6719">LUCENE-6719</a>: NumericUtils getMinInt, getMaxInt, getMinLong, getMaxLong now
+return null if there are no terms for the specified field, previously these
+methods returned primitive values and raised an undocumented NullPointerException
+if there were no terms for the field.
+<br /><span class="attrib">(hossman, Timothy Potter)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.bug_fixes" href="javascript:toggleList('v5.3.0.bug_fixes')">Bug fixes</a>&nbsp;&nbsp;&nbsp;(27)
+    <ol id="v5.3.0.bug_fixes.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6500">LUCENE-6500</a>: ParallelCompositeReader did not always call
+closed listeners. This was fixed by <a href="http://issues.apache.org/jira/browse/LUCENE-6501">LUCENE-6501</a>.
+<br /><span class="attrib">(Adrien Grand, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6520">LUCENE-6520</a>: Geo3D GeoPath.done() would throw an NPE if adjacent path
+segments were co-linear.
+<br /><span class="attrib">(Karl Wright via David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-5805">LUCENE-5805</a>: QueryNodeImpl.removeFromParent was doing nothing in a
+costly manner
+<br /><span class="attrib">(Christoph Kaser, Cao Manh Dat via Mike McCAndless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6533">LUCENE-6533</a>: SlowCompositeReaderWrapper no longer caches its live docs
+instance since this can prevent future improvements like a
+disk-backed live docs
+<br /><span class="attrib">(Adrien Grand, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6558">LUCENE-6558</a>: Highlighters now work with CustomScoreQuery
+<br /><span class="attrib">(Cao Manh
+Dat via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6560">LUCENE-6560</a>: BKDPointInBBoxQuery now handles "dateline crossing"
+correctly
+<br /><span class="attrib">(Nick Knize, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6564">LUCENE-6564</a>: Change PrintStreamInfoStream to use thread safe Java 8
+ISO-8601 date formatting (in Lucene 5.x use Java 7 FileTime#toString
+as workaround); fix output of tests to use same format.
+<br /><span class="attrib">(Uwe Schindler,
+Ramkumar Aiyengar)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6593">LUCENE-6593</a>: Fixed ToChildBlockJoinQuery's scorer to not refuse to advance
+to a document that belongs to the parent space.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6591">LUCENE-6591</a>: Never write a negative vLong
+<br /><span class="attrib">(Robert Muir, Ryan Ernst,
+Adrien Grand, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6588">LUCENE-6588</a>: Fix how ToChildBlockJoinQuery deals with acceptDocs.
+<br /><span class="attrib">(Christoph Kaser via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6597">LUCENE-6597</a>: Geo3D's GeoCircle now supports a world-globe diameter.
+<br /><span class="attrib">(Karl Wright via David Smiley)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6608">LUCENE-6608</a>: Fix potential resource leak in BigramDictionary.
+<br /><span class="attrib">(Rishabh Patel via Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6614">LUCENE-6614</a>: Improve partition detection in IOUtils#spins() so it
+works with NVMe drives.
+<br /><span class="attrib">(Uwe Schindler, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6586">LUCENE-6586</a>: Fix typo in GermanStemmer, causing possible wrong value
+for substCount.
+<br /><span class="attrib">(Christoph Kaser via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6658">LUCENE-6658</a>: Fix IndexUpgrader to also upgrade indexes without any
+segments.
+<br /><span class="attrib">(Trejkaz, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6677">LUCENE-6677</a>: QueryParserBase fails to enforce maxDeterminizedStates when
+creating a WildcardQuery
+<br /><span class="attrib">(David Causse via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6680">LUCENE-6680</a>: Preserve two suggestions that have same key and weight but
+different payloads
+<br /><span class="attrib">(Arcadius Ahouansou via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6681">LUCENE-6681</a>: SortingMergePolicy must override MergePolicy.size(...).
+<br /><span class="attrib">(Christine Poerschke via Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6682">LUCENE-6682</a>: StandardTokenizer performance bug: scanner buffer is
+unnecessarily copied when maxTokenLength doesn't change.  Also stop silently
+maxing out buffer size (and effectively also max token length) at 1M chars,
+but instead throw an exception from setMaxTokenLength() when the given
+length is greater than 1M chars.
+<br /><span class="attrib">(Piotr Idzikowski, Steve Rowe)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6696">LUCENE-6696</a>: Fix FilterDirectoryReader.close() to never close the
+underlying reader several times.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6334">LUCENE-6334</a>: FastVectorHighlighter failed to highlight phrases across
+more than one value in a multi-valued field.
+<br /><span class="attrib">(Chris Earle, Nik Everett
+via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6704">LUCENE-6704</a>: GeoPointDistanceQuery was visiting too many term ranges,
+consuming too much heap for a large radius
+<br /><span class="attrib">(Nick Knize via Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/SOLR-5882">SOLR-5882</a>: fix ScoreMode.Min at ToParentBlockJoinQuery
+<br /><span class="attrib">(Mikhail Khludnev)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6718">LUCENE-6718</a>: JoinUtil.createJoinQuery failed to rewrite queries before
+creating a Weight.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6713">LUCENE-6713</a>: TooComplexToDeterminizeException claims to be serializable
+but wasn't
+<br /><span class="attrib">(Simon Willnauer, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6723">LUCENE-6723</a>: Fix date parsing problems in Java 9 with date formats using
+English weekday/month names.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6618">LUCENE-6618</a>: Properly set MMapDirectory.UNMAP_SUPPORTED when it is now allowed
+by security policy.
+<br /><span class="attrib">(Robert Muir)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.changes_in_runtime_behavior" href="javascript:toggleList('v5.3.0.changes_in_runtime_behavior')">Changes in Runtime Behavior</a>&nbsp;&nbsp;&nbsp;(12)
+    <ol id="v5.3.0.changes_in_runtime_behavior.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6501">LUCENE-6501</a>: The subreader structure in ParallelCompositeReader
+was flattened, because the current implementation had too many
+hidden bugs regarding refounting and close listeners.
+If you create a new ParallelCompositeReader, it will just take
+all leaves of the passed readers and form a flat structure of
+ParallelLeafReaders instead of trying to assemble the original
+structure of composite and leaf readers.
+<br /><span class="attrib">(Adrien Grand,
+Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6538">LUCENE-6538</a>: Also include java.vm.version and java.runtime.version
+in per-segment diagnostics
+<br /><span class="attrib">(Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6537">LUCENE-6537</a>: NearSpansOrdered no longer tries to minimize its
+Span matches.  This means that the matching algorithm is entirely
+lazy.  All spans returned by the previous implementation are still
+reported, but matching documents may now also return additional
+spans that were previously discarded in preference to shorter
+overlapping ones.
+<br /><span class="attrib">(Alan Woodward, Adrien Grand, Paul Elschot)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6569">LUCENE-6569</a>: Optimize MultiFunction.anyExists and allExists to eliminate
+excessive array creation in common 2 argument usage
+<br /><span class="attrib">(Jacob Graves, hossman)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-2880">LUCENE-2880</a>: Span queries now score more consistently with regular queries.
+<br /><span class="attrib">(Robert Muir, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6601">LUCENE-6601</a>: FilteredQuery now always rewrites to a BooleanQuery which handles
+the query as a MUST clause and the filter as a FILTER clause.
+LEAP_FROG_QUERY_FIRST_STRATEGY and LEAP_FROG_FILTER_FIRST_STRATEGY do not
+guarantee anymore which iterator will be advanced first, it will depend on the
+respective costs of the iterators. QUERY_FIRST_FILTER_STRATEGY and
+RANDOM_ACCESS_FILTER_STRATEGY still consume the filter using its random-access
+API, however the returned bits may be called on different documents compared
+to before.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6542">LUCENE-6542</a>: FSDirectory's ctor now works with security policies or file systems
+that restrict write access.
+<br /><span class="attrib">(Trejkaz, hossman, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6651">LUCENE-6651</a>: The default implementation of AttributeImpl#reflectWith(AttributeReflector)
+now uses AccessControler#doPrivileged() to do the reflection. Please consider
+implementing this method in all your custom attributes, because the method will be
+made abstract in Lucene 6.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6639">LUCENE-6639</a>: LRUQueryCache and CachingWrapperQuery now consider a query as
+"used" when the first Scorer is pulled instead of when a Scorer is pulled on
+the first segment on an index.
+<br /><span class="attrib">(Terry Smith, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6579">LUCENE-6579</a>: IndexWriter now sacrifices (closes) itself to protect the index
+when an unexpected, tragic exception strikes while merging.
+<br /><span class="attrib">(Robert
+Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6691">LUCENE-6691</a>: SortingMergePolicy.isSorted now considers FilterLeafReader instances.
+EarlyTerminatingSortingCollector.terminatedEarly accessor added.
+TestEarlyTerminatingSortingCollector.testTerminatedEarly test added.
+<br /><span class="attrib">(Christine Poerschke)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6609">LUCENE-6609</a>: Add getSortField impls to many subclasses of FieldCacheSource which return
+the most direct SortField implementation.  In many trivial sort by ValueSource usages, this
+will result in less RAM, and more precise sorting of extreme values due to no longer
+converting to double.
+<br /><span class="attrib">(hossman)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.optimizations" href="javascript:toggleList('v5.3.0.optimizations')">Optimizations</a>&nbsp;&nbsp;&nbsp;(9)
+    <ol id="v5.3.0.optimizations.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6548">LUCENE-6548</a>: Some optimizations for BlockTree's intersect with very
+finite automata
+<br /><span class="attrib">(Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6585">LUCENE-6585</a>: Flatten conjunctions and conjunction approximations into
+parent conjunctions. For example a sloppy phrase query of "foo bar"~5
+with a filter of "baz" will internally leapfrog foo,bar,baz as one
+conjunction.
+<br /><span class="attrib">(Ryan Ernst, Robert Muir, Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6325">LUCENE-6325</a>: Reduce RAM usage of FieldInfos, and speed up lookup by
+number, by using an array instead of TreeMap except in very sparse
+cases
+<br /><span class="attrib">(Robert Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6617">LUCENE-6617</a>: Reduce heap usage for small FSTs
+<br /><span class="attrib">(Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6616">LUCENE-6616</a>: IndexWriter now lists the files in the index directory
+only once on init, and IndexFileDeleter no longer suppresses
+FileNotFoundException and NoSuchFileException.  This also improves
+IndexFileDeleter to delete segments_N files last, so that in the
+presence of a virus checker, the index is never left in a state
+where an expired segments_N references non-existing files
+<br /><span class="attrib">(Robert
+Muir, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6645">LUCENE-6645</a>: Optimized the way we merge postings lists in multi-term queries
+and TermsQuery. This should especially help when there are lots of small
+postings lists.
+<br /><span class="attrib">(Adrien Grand, Mike McCandless)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6668">LUCENE-6668</a>: Optimized storage for sorted set and sorted numeric doc values
+in the case that there are few unique sets of values.
+<br /><span class="attrib">(Adrien Grand, Robert Muir)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6690">LUCENE-6690</a>: Sped up MultiTermsEnum.next() on high-cardinality fields.
+<br /><span class="attrib">(Adrien Grand)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6621">LUCENE-6621</a>: Removed two unused variables in analysis/stempel/src/java/org/
+egothor/stemmer/Compile.java
+<br /><span class="attrib">(Rishabh Patel via Christine Poerschke)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.build" href="javascript:toggleList('v5.3.0.build')">Build</a>&nbsp;&nbsp;&nbsp;(6)
+    <ol id="v5.3.0.build.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6518">LUCENE-6518</a>: Don't report false thread leaks from IBM J9
+ClassCache Reaper in test framework.
+<br /><span class="attrib">(Dawid Weiss)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6567">LUCENE-6567</a>: Simplify payload checking in SpanPayloadCheckQuery
+<br /><span class="attrib">(Alan
+Woodward)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6568">LUCENE-6568</a>: Make rat invocation depend on ivy configuration being set up
+<br /><span class="attrib">(Ramkumar Aiyengar)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6683">LUCENE-6683</a>: ivy-fail goal directs people to non-existent page
+<br /><span class="attrib">(Mike Drob via Steve Rowe)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6693">LUCENE-6693</a>: Updated Groovy to 2.4.4, Pegdown to 1.5, Svnkit to 1.8.10.
+Also fixed some PermGen errors while running full build caused by
+these updates: Tasks are now installed from root's build.xml.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6741">LUCENE-6741</a>: Fix jflex files to regenerate the java files correctly.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.test_framework" href="javascript:toggleList('v5.3.0.test_framework')">Test Framework</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v5.3.0.test_framework.list">
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6637">LUCENE-6637</a>: Fix FSTTester to not violate file permissions
+on -Dtests.verbose=true.
+<br /><span class="attrib">(Mesbah M. Alam, Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6542">LUCENE-6542</a>: LuceneTestCase now has runWithRestrictedPermissions() to run
+an action with reduced permissions. This can be used to simulate special
+environments (e.g., read-only dirs). If tests are running without a security
+manager, an assume cancels test execution automatically.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6652">LUCENE-6652</a>: Removed lots of useless Byte(s)TermAttributes all over test
+infrastructure.
+<br /><span class="attrib">(Uwe Schindler)</span></li>
+      <li><a href="http://issues.apache.org/jira/browse/LUCENE-6563">LUCENE-6563</a>: Improve MockFileSystemTestCase.testURI to check if a path
+can be encoded according to local filesystem requirements. Otherwise
+stop test execution.
+<br /><span class="attrib">(Christine Poerschke via Uwe Schindler)</span></li>
+    </ol>
+  </li>
+  <li><a id="v5.3.0.changes_in_backwards_compatibility_policy" href="javascript:toggleList('v5.3.0.changes_in_backwards_compatibility_policy')">Changes in Backwards Compatibility Policy</a>&nbsp;&nbsp;&nbsp;(4)
+    <ol id="v5.3.0.changes_in_backwards_compatibility_policy.list">

[... 12263 lines stripped ...]