You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2014/08/27 12:15:42 UTC

svn commit: r1620852 [1/3] - in /lucene/dev/branches/lucene5904: ./ dev-tools/ dev-tools/maven/solr/ lucene/ lucene/analysis/ lucene/analysis/common/ lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/ lucene/analysis/common/src/test/org/...

Author: mikemccand
Date: Wed Aug 27 10:15:38 2014
New Revision: 1620852

URL: http://svn.apache.org/r1620852
Log:
LUCENE-5904: merge trunk

Removed:
    lucene/dev/branches/lucene5904/lucene/demo/src/java/org/apache/lucene/demo/facet/FacetExamples.java
Modified:
    lucene/dev/branches/lucene5904/   (props changed)
    lucene/dev/branches/lucene5904/dev-tools/   (props changed)
    lucene/dev/branches/lucene5904/dev-tools/maven/solr/pom.xml.template
    lucene/dev/branches/lucene5904/lucene/   (props changed)
    lucene/dev/branches/lucene5904/lucene/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/lucene5904/lucene/analysis/   (props changed)
    lucene/dev/branches/lucene5904/lucene/analysis/common/   (props changed)
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43EdgeNGramTokenizer.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43NGramTokenizer.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestKeywordAnalyzer.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestRandomChains.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestKeywordMarkerFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestStemmerOverrideFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilterTest.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/NGramTokenizerTest.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowballPorterFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestMultiWordSynonyms.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/BaseTokenStreamFactoryTestCase.java
    lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/TestAnalysisSPILoader.java
    lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/org/apache/lucene/collation/ICUCollationKeyAnalyzer.java
    lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/overview.html
    lucene/dev/branches/lucene5904/lucene/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyAnalyzer.java
    lucene/dev/branches/lucene5904/lucene/analysis/kuromoji/src/test/org/apache/lucene/analysis/ja/TestJapanesePartOfSpeechStopFilterFactory.java
    lucene/dev/branches/lucene5904/lucene/benchmark/   (props changed)
    lucene/dev/branches/lucene5904/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/AnalyzerFactoryTask.java
    lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/AddIndexesTaskTest.java
    lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CommitIndexTaskTest.java
    lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CreateIndexTaskTest.java
    lucene/dev/branches/lucene5904/lucene/classification/   (props changed)
    lucene/dev/branches/lucene5904/lucene/classification/src/java/org/apache/lucene/classification/utils/DatasetSplitter.java
    lucene/dev/branches/lucene5904/lucene/core/   (props changed)
    lucene/dev/branches/lucene5904/lucene/core/src/java/org/apache/lucene/store/NRTCachingDirectory.java
    lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41PostingsFormat.java
    lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
    lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java
    lucene/dev/branches/lucene5904/lucene/demo/   (props changed)
    lucene/dev/branches/lucene5904/lucene/demo/src/java/org/apache/lucene/demo/IndexFiles.java
    lucene/dev/branches/lucene5904/lucene/facet/   (props changed)
    lucene/dev/branches/lucene5904/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyWriter.java
    lucene/dev/branches/lucene5904/lucene/misc/   (props changed)
    lucene/dev/branches/lucene5904/lucene/misc/src/test/org/apache/lucene/index/TestMultiPassIndexSplitter.java
    lucene/dev/branches/lucene5904/lucene/queryparser/   (props changed)
    lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java
    lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/util/QueryParserTestBase.java
    lucene/dev/branches/lucene5904/lucene/suggest/   (props changed)
    lucene/dev/branches/lucene5904/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java
    lucene/dev/branches/lucene5904/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/BlendedInfixSuggester.java
    lucene/dev/branches/lucene5904/lucene/suggest/src/test/org/apache/lucene/search/suggest/LookupBenchmarkTest.java
    lucene/dev/branches/lucene5904/lucene/suggest/src/test/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggesterTest.java
    lucene/dev/branches/lucene5904/lucene/suggest/src/test/org/apache/lucene/search/suggest/analyzing/BlendedInfixSuggesterTest.java
    lucene/dev/branches/lucene5904/lucene/test-framework/   (props changed)
    lucene/dev/branches/lucene5904/lucene/test-framework/src/java/org/apache/lucene/util/LuceneTestCase.java
    lucene/dev/branches/lucene5904/solr/   (props changed)
    lucene/dev/branches/lucene5904/solr/CHANGES.txt   (contents, props changed)
    lucene/dev/branches/lucene5904/solr/contrib/   (props changed)
    lucene/dev/branches/lucene5904/solr/contrib/analysis-extras/src/test-files/analysis-extras/solr/collection1/conf/solrconfig-icucollate.xml
    lucene/dev/branches/lucene5904/solr/contrib/clustering/src/test-files/clustering/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/dataimporthandler-extras/src/test-files/dihextras/solr/collection1/conf/dataimport-solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/dataimporthandler/src/test-files/dih/solr/collection1/conf/contentstream-solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/dataimporthandler/src/test-files/dih/solr/collection1/conf/dataimport-nodatasource-solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/dataimporthandler/src/test-files/dih/solr/collection1/conf/dataimport-solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/extraction/src/test-files/extraction/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/langid/src/test-files/langid/solr/collection1/conf/solrconfig-languageidentifier.xml
    lucene/dev/branches/lucene5904/solr/contrib/map-reduce/src/test/org/apache/solr/hadoop/MapReduceIndexerToolArgumentParserTest.java
    lucene/dev/branches/lucene5904/solr/contrib/morphlines-core/src/test-files/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/morphlines-core/src/test-files/solr/minimr/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/morphlines-core/src/test-files/solr/mrunit/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/morphlines-core/src/test-files/solr/solrcelltest/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/morphlines-core/src/test-files/solr/solrcloud/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/uima/src/test-files/uima/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/uima/src/test-files/uima/uima-tokenizers-solrconfig.xml
    lucene/dev/branches/lucene5904/solr/contrib/velocity/src/test-files/velocity/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/core/   (props changed)
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-mp-solrconfig.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-bogus-scriptengine-name.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-invalid-scriptfile.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-managed-schema-named-schema.xml.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-missing-scriptfile.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-multiple-cfs.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-multiple-dirfactory.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-multiple-indexconfigs.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-schema-mutable-but-not-managed.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-unexpected-schema-attribute.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad-solrconfig-warmer-no-reopen.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/bad_solrconfig.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-SOLR-749.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-add-schema-fields-update-processor-chains.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-altdirectory.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-analytics-query.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-basic.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-caching.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-collapseqparser.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-components-name.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-deeppaging.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-defaults.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-delpolicy1.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-delpolicy2.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-doc-expire-update-processor.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-elevate.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-externalversionconstraint.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-functionquery.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-headers.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-highlight.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-indexconfig.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-infostream-logging.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-lazywriter.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-logmergepolicy.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-managed-schema.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-master.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-master1-keepOneBackup.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-master1.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-master2.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-master3.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-mergepolicy-defaults.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-mergepolicy-legacy.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-minimal.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-nocache.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-noopregen.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-parsing-update-processor-chains.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-phrasesuggest.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-plugcollector.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-postingshighlight.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-query-parser-init.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-querysender-noquery.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-querysender.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-repeater.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-response-log-component.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-schemaless.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-script-updateprocessor.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-slave.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-slave1.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-solcoreproperties.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-sortingresponse.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-spellcheckcomponent.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-spellchecker.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-suggestercomponent.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-test-misc.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-tieredmergepolicy.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-tlog.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-tolerant-search.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-transformers.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-update-processor-chains.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-warmer.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-withgethandler.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig-xinclude.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig_codec.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/collection1/conf/solrconfig_perf.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/configsets/configset-1/conf/solrconfig-minimal.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/configsets/configset-2/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/configsets/minimal/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/crazy-path-to-config.xml
    lucene/dev/branches/lucene5904/solr/core/src/test-files/solr/solr-50-all.xml
    lucene/dev/branches/lucene5904/solr/core/src/test/org/apache/solr/analysis/TestWordDelimiterFilterFactory.java
    lucene/dev/branches/lucene5904/solr/core/src/test/org/apache/solr/core/TestSolrIndexConfig.java
    lucene/dev/branches/lucene5904/solr/core/src/test/org/apache/solr/search/TestStressLucene.java
    lucene/dev/branches/lucene5904/solr/example/   (props changed)
    lucene/dev/branches/lucene5904/solr/example/example-schemaless/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/solrj/   (props changed)
    lucene/dev/branches/lucene5904/solr/solrj/src/test-files/solrj/solr/collection1/conf/solrconfig-slave1.xml
    lucene/dev/branches/lucene5904/solr/solrj/src/test-files/solrj/solr/collection1/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/solrj/src/test-files/solrj/solr/configsets/configset-1/conf/solrconfig-minimal.xml
    lucene/dev/branches/lucene5904/solr/solrj/src/test-files/solrj/solr/configsets/configset-2/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/solrj/src/test-files/solrj/solr/shared/conf/solrconfig.xml
    lucene/dev/branches/lucene5904/solr/solrj/src/test/org/apache/solr/client/solrj/SolrSchemalessExampleTests.java
    lucene/dev/branches/lucene5904/solr/webapp/   (props changed)
    lucene/dev/branches/lucene5904/solr/webapp/web/css/styles/common.css
    lucene/dev/branches/lucene5904/solr/webapp/web/css/styles/menu.css
    lucene/dev/branches/lucene5904/solr/webapp/web/js/scripts/app.js

Modified: lucene/dev/branches/lucene5904/dev-tools/maven/solr/pom.xml.template
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/dev-tools/maven/solr/pom.xml.template?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/dev-tools/maven/solr/pom.xml.template (original)
+++ lucene/dev/branches/lucene5904/dev-tools/maven/solr/pom.xml.template Wed Aug 27 10:15:38 2014
@@ -38,7 +38,6 @@
     <module>contrib</module>
   </modules>
   <properties>
-    <tests.luceneMatchVersion>LUCENE_CURRENT</tests.luceneMatchVersion>
     <module-directory>solr</module-directory>
   </properties>
   <scm>

Modified: lucene/dev/branches/lucene5904/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/CHANGES.txt?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/CHANGES.txt (original)
+++ lucene/dev/branches/lucene5904/lucene/CHANGES.txt Wed Aug 27 10:15:38 2014
@@ -105,6 +105,12 @@ New Features
   PushPostingsWriterBase for single-pass push of docs/positions to the
   postings format.  (Mike McCandless)
 
+API Changes:
+
+* LUCENE-5900: Deprecated more constructors taking Version in *InfixSuggester and
+  ICUCollationKeyAnalyzer, and removed TEST_VERSION_CURRENT from the test framework.
+  (Ryan Ernst)
+
 Bug Fixes
 
 * LUCENE-5650: Enforce read-only access to any path outside the temporary
@@ -290,6 +296,8 @@ Bug Fixes
   buffer size was reduced, and scanner buffer growth was disabled, resulting
   in much, much faster tokenization for these text sequences.  
   (Chris Geeringh, Robert Muir, Steve Rowe)
+
+* LUCENE-5908: Fix Lucene43NGramTokenizer to be final
   
 Test Framework
 

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43EdgeNGramTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43EdgeNGramTokenizer.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43EdgeNGramTokenizer.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43EdgeNGramTokenizer.java Wed Aug 27 10:15:38 2014
@@ -17,18 +17,105 @@ package org.apache.lucene.analysis.ngram
  * limitations under the License.
  */
 
+import java.io.IOException;
+
+import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
+import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
+import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
+import org.apache.lucene.util.ArrayUtil;
 import org.apache.lucene.util.AttributeFactory;
+import org.apache.lucene.util.Version;
 
 /**
- * Tokenizes the input from an edge into n-grams of given size(s), using pre-4.4 behavior.
- *
- * @deprecated Use {@link org.apache.lucene.analysis.ngram.EdgeNGramTokenizer}.
+ * Old version of {@link EdgeNGramTokenizer} which doesn't handle correctly
+ * supplementary characters.
  */
 @Deprecated
-public class Lucene43EdgeNGramTokenizer extends Lucene43NGramTokenizer {
+public final class Lucene43EdgeNGramTokenizer extends Tokenizer {
+  public static final Side DEFAULT_SIDE = Side.FRONT;
   public static final int DEFAULT_MAX_GRAM_SIZE = 1;
   public static final int DEFAULT_MIN_GRAM_SIZE = 1;
 
+  private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
+  private final OffsetAttribute offsetAtt = addAttribute(OffsetAttribute.class);
+  private final PositionIncrementAttribute posIncrAtt = addAttribute(PositionIncrementAttribute.class);
+
+  /** Specifies which side of the input the n-gram should be generated from */
+  public static enum Side {
+
+    /** Get the n-gram from the front of the input */
+    FRONT {
+      @Override
+      public String getLabel() { return "front"; }
+    },
+
+    /** Get the n-gram from the end of the input */
+    BACK  {
+      @Override
+      public String getLabel() { return "back"; }
+    };
+
+    public abstract String getLabel();
+
+    // Get the appropriate Side from a string
+    public static Side getSide(String sideName) {
+      if (FRONT.getLabel().equals(sideName)) {
+        return FRONT;
+      }
+      if (BACK.getLabel().equals(sideName)) {
+        return BACK;
+      }
+      return null;
+    }
+  }
+
+  private int minGram;
+  private int maxGram;
+  private int gramSize;
+  private Side side;
+  private boolean started;
+  private int inLen; // length of the input AFTER trim()
+  private int charsRead; // length of the input
+  private String inStr;
+
+
+  /**
+   * Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
+   *
+   * @param side the {@link Side} from which to chop off an n-gram
+   * @param minGram the smallest n-gram to generate
+   * @param maxGram the largest n-gram to generate
+   */
+  public Lucene43EdgeNGramTokenizer(Side side, int minGram, int maxGram) {
+    init(side, minGram, maxGram);
+  }
+
+  /**
+   * Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
+   *
+   * @param factory {@link org.apache.lucene.util.AttributeFactory} to use
+   * @param side the {@link Side} from which to chop off an n-gram
+   * @param minGram the smallest n-gram to generate
+   * @param maxGram the largest n-gram to generate
+   */
+  public Lucene43EdgeNGramTokenizer(AttributeFactory factory, Side side, int minGram, int maxGram) {
+    super(factory);
+    init(side, minGram, maxGram);
+  }
+
+  /**
+   * Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
+   *
+   * @param factory {@link org.apache.lucene.util.AttributeFactory} to use
+   * @param sideLabel the {@link Side} from which to chop off an n-gram
+   * @param minGram the smallest n-gram to generate
+   * @param maxGram the largest n-gram to generate
+   */
+  public Lucene43EdgeNGramTokenizer(AttributeFactory factory, String sideLabel, int minGram, int maxGram) {
+    this(factory, Side.getSide(sideLabel), minGram, maxGram);
+  }
+
   /**
    * Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
    *
@@ -36,7 +123,19 @@ public class Lucene43EdgeNGramTokenizer 
    * @param maxGram the largest n-gram to generate
    */
   public Lucene43EdgeNGramTokenizer(int minGram, int maxGram) {
-    super(minGram, maxGram);
+    this(Side.FRONT, minGram, maxGram);
+  }
+
+  /**
+   * Creates EdgeNGramTokenizer that can generate n-grams in the sizes of the given range
+   *
+   * @param sideLabel the name of the {@link Side} from which to chop off an n-gram
+   * @param minGram the smallest n-gram to generate
+   * @param maxGram the largest n-gram to generate
+   */
+  @Deprecated
+  public Lucene43EdgeNGramTokenizer(String sideLabel, int minGram, int maxGram) {
+    this(Side.getSide(sideLabel), minGram, maxGram);
   }
 
   /**
@@ -47,7 +146,110 @@ public class Lucene43EdgeNGramTokenizer 
    * @param maxGram the largest n-gram to generate
    */
   public Lucene43EdgeNGramTokenizer(AttributeFactory factory, int minGram, int maxGram) {
-    super(factory, minGram, maxGram);
+    this(factory, Side.FRONT, minGram, maxGram);
+  }
+
+  private void init(Side side, int minGram, int maxGram) {
+
+    if (side == null) {
+      throw new IllegalArgumentException("sideLabel must be either front or back");
+    }
+
+    if (minGram < 1) {
+      throw new IllegalArgumentException("minGram must be greater than zero");
+    }
+
+    if (minGram > maxGram) {
+      throw new IllegalArgumentException("minGram must not be greater than maxGram");
+    }
+
+    maxGram = Math.min(maxGram, 1024);
+
+    this.minGram = minGram;
+    this.maxGram = maxGram;
+    this.side = side;
   }
 
+  /** Returns the next token in the stream, or null at EOS. */
+  @Override
+  public boolean incrementToken() throws IOException {
+    clearAttributes();
+    // if we are just starting, read the whole input
+    if (!started) {
+      started = true;
+      gramSize = minGram;
+      final int limit = side == Side.FRONT ? maxGram : 1024;
+      char[] chars = new char[Math.min(1024, limit)];
+      charsRead = 0;
+      // TODO: refactor to a shared readFully somewhere:
+      boolean exhausted = false;
+      while (charsRead < limit) {
+        final int inc = input.read(chars, charsRead, chars.length-charsRead);
+        if (inc == -1) {
+          exhausted = true;
+          break;
+        }
+        charsRead += inc;
+        if (charsRead == chars.length && charsRead < limit) {
+          chars = ArrayUtil.grow(chars);
+        }
+      }
+
+      inStr = new String(chars, 0, charsRead);
+      inStr = inStr.trim();
+
+      if (!exhausted) {
+        // Read extra throwaway chars so that on end() we
+        // report the correct offset:
+        char[] throwaway = new char[1024];
+        while(true) {
+          final int inc = input.read(throwaway, 0, throwaway.length);
+          if (inc == -1) {
+            break;
+          }
+          charsRead += inc;
+        }
+      }
+
+      inLen = inStr.length();
+      if (inLen == 0) {
+        return false;
+      }
+      posIncrAtt.setPositionIncrement(1);
+    } else {
+      posIncrAtt.setPositionIncrement(0);
+    }
+
+    // if the remaining input is too short, we can't generate any n-grams
+    if (gramSize > inLen) {
+      return false;
+    }
+
+    // if we have hit the end of our n-gram size range, quit
+    if (gramSize > maxGram || gramSize > inLen) {
+      return false;
+    }
+
+    // grab gramSize chars from front or back
+    int start = side == Side.FRONT ? 0 : inLen - gramSize;
+    int end = start + gramSize;
+    termAtt.setEmpty().append(inStr, start, end);
+    offsetAtt.setOffset(correctOffset(start), correctOffset(end));
+    gramSize++;
+    return true;
+  }
+  
+  @Override
+  public void end() throws IOException {
+    super.end();
+    // set final offset
+    final int finalOffset = correctOffset(charsRead);
+    this.offsetAtt.setOffset(finalOffset, finalOffset);
+  }    
+
+  @Override
+  public void reset() throws IOException {
+    super.reset();
+    started = false;
+  }
 }

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43NGramTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43NGramTokenizer.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43NGramTokenizer.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/java/org/apache/lucene/analysis/ngram/Lucene43NGramTokenizer.java Wed Aug 27 10:15:38 2014
@@ -18,7 +18,7 @@ package org.apache.lucene.analysis.ngram
  */
 
 import java.io.IOException;
-import java.io.Reader;
+
 
 import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
@@ -29,7 +29,7 @@ import org.apache.lucene.util.AttributeF
  * Old broken version of {@link NGramTokenizer}.
  */
 @Deprecated
-public class Lucene43NGramTokenizer extends Tokenizer {
+public final class Lucene43NGramTokenizer extends Tokenizer {
   public static final int DEFAULT_MIN_NGRAM_SIZE = 1;
   public static final int DEFAULT_MAX_NGRAM_SIZE = 2;
 

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -25,6 +25,7 @@ import org.apache.lucene.analysis.util.B
 import org.apache.lucene.analysis.util.CharArraySet;
 import org.apache.lucene.analysis.util.ClasspathResourceLoader;
 import org.apache.lucene.analysis.util.ResourceLoader;
+import org.apache.lucene.util.Version;
 
 import java.io.StringReader;
 
@@ -38,7 +39,7 @@ public class TestCommonGramsFilterFactor
   public void testInform() throws Exception {
     ResourceLoader loader = new ClasspathResourceLoader(TestStopFilter.class);
     assertTrue("loader is null and it shouldn't be", loader != null);
-    CommonGramsFilterFactory factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", TEST_VERSION_CURRENT, loader, 
+    CommonGramsFilterFactory factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", Version.LATEST, loader,
         "words", "stop-1.txt", 
         "ignoreCase", "true");
     CharArraySet words = factory.getCommonWords();
@@ -48,7 +49,7 @@ public class TestCommonGramsFilterFactor
     assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
         .isIgnoreCase() == true);
 
-    factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", TEST_VERSION_CURRENT, loader, 
+    factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", Version.LATEST, loader,
         "words", "stop-1.txt, stop-2.txt", 
         "ignoreCase", "true");
     words = factory.getCommonWords();
@@ -58,7 +59,7 @@ public class TestCommonGramsFilterFactor
     assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
         .isIgnoreCase() == true);
 
-    factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", TEST_VERSION_CURRENT, loader, 
+    factory = (CommonGramsFilterFactory) tokenFilterFactory("CommonGrams", Version.LATEST, loader,
         "words", "stop-snowball.txt", 
         "format", "snowball", 
         "ignoreCase", "true");

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/commongrams/TestCommonGramsQueryFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -25,6 +25,7 @@ import org.apache.lucene.analysis.util.B
 import org.apache.lucene.analysis.util.CharArraySet;
 import org.apache.lucene.analysis.util.ClasspathResourceLoader;
 import org.apache.lucene.analysis.util.ResourceLoader;
+import org.apache.lucene.util.Version;
 
 import java.io.StringReader;
 
@@ -38,7 +39,7 @@ public class TestCommonGramsQueryFilterF
   public void testInform() throws Exception {
     ResourceLoader loader = new ClasspathResourceLoader(TestStopFilter.class);
     assertTrue("loader is null and it shouldn't be", loader != null);
-    CommonGramsQueryFilterFactory factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", TEST_VERSION_CURRENT, loader, 
+    CommonGramsQueryFilterFactory factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", Version.LATEST, loader,
         "words", "stop-1.txt", 
         "ignoreCase", "true");
     CharArraySet words = factory.getCommonWords();
@@ -48,7 +49,7 @@ public class TestCommonGramsQueryFilterF
     assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
         .isIgnoreCase() == true);
 
-    factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", TEST_VERSION_CURRENT, loader, 
+    factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", Version.LATEST, loader,
         "words", "stop-1.txt, stop-2.txt", 
         "ignoreCase", "true");
     words = factory.getCommonWords();
@@ -58,7 +59,7 @@ public class TestCommonGramsQueryFilterF
     assertTrue(factory.isIgnoreCase() + " does not equal: " + true, factory
         .isIgnoreCase() == true);
 
-    factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", TEST_VERSION_CURRENT, loader, 
+    factory = (CommonGramsQueryFilterFactory) tokenFilterFactory("CommonGramsQuery", Version.LATEST, loader,
         "words", "stop-snowball.txt", 
         "format", "snowball", 
         "ignoreCase", "true");

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAllAnalyzersHaveFactories.java Wed Aug 27 10:15:38 2014
@@ -54,6 +54,7 @@ import org.apache.lucene.analysis.util.S
 import org.apache.lucene.analysis.util.TokenFilterFactory;
 import org.apache.lucene.analysis.util.TokenizerFactory;
 import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.Version;
 
 /**
  * Tests that any newly added Tokenizers/TokenFilters/CharFilters have a
@@ -121,7 +122,7 @@ public class TestAllAnalyzersHaveFactori
       }
       
       Map<String,String> args = new HashMap<>();
-      args.put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+      args.put("luceneMatchVersion", Version.LATEST.toString());
       
       if (Tokenizer.class.isAssignableFrom(c)) {
         String clazzName = c.getSimpleName();

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestFactories.java Wed Aug 27 10:15:38 2014
@@ -36,6 +36,7 @@ import org.apache.lucene.analysis.util.S
 import org.apache.lucene.analysis.util.TokenFilterFactory;
 import org.apache.lucene.analysis.util.TokenizerFactory;
 import org.apache.lucene.util.AttributeFactory;
+import org.apache.lucene.util.Version;
 
 /**
  * Sanity check some things about all factories,
@@ -123,7 +124,7 @@ public class TestFactories extends BaseT
   /** tries to initialize a factory with no arguments */
   private AbstractAnalysisFactory initialize(Class<? extends AbstractAnalysisFactory> factoryClazz) throws IOException {
     Map<String,String> args = new HashMap<>();
-    args.put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+    args.put("luceneMatchVersion", Version.LATEST.toString());
     Constructor<? extends AbstractAnalysisFactory> ctor;
     try {
       ctor = factoryClazz.getConstructor(Map.class);

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestKeywordAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestKeywordAnalyzer.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestKeywordAnalyzer.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestKeywordAnalyzer.java Wed Aug 27 10:15:38 2014
@@ -74,7 +74,7 @@ public class TestKeywordAnalyzer extends
     PerFieldAnalyzerWrapper analyzer = new PerFieldAnalyzerWrapper(new SimpleAnalyzer());
     analyzer.addAnalyzer("partnum", new KeywordAnalyzer());
 
-    QueryParser queryParser = new QueryParser(TEST_VERSION_CURRENT, "description", analyzer);
+    QueryParser queryParser = new QueryParser("description", analyzer);
     Query query = queryParser.parse("partnum:Q36 AND SPACE");
 
     ScoreDoc[] hits = searcher.search(query, null, 1000).scoreDocs;

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestRandomChains.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestRandomChains.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestRandomChains.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestRandomChains.java Wed Aug 27 10:15:38 2014
@@ -352,7 +352,7 @@ public class TestRandomChains extends Ba
     put(Version.class, new ArgProducer() {
       @Override public Object create(Random random) {
         // we expect bugs in emulating old versions
-        return TEST_VERSION_CURRENT;
+        return Version.LATEST;
       }
     });
     put(AttributeFactory.class, new ArgProducer() {

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestKeywordMarkerFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestKeywordMarkerFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestKeywordMarkerFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestKeywordMarkerFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -23,6 +23,7 @@ import java.io.StringReader;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
 import org.apache.lucene.analysis.util.StringMockResourceLoader;
+import org.apache.lucene.util.Version;
 
 /**
  * Simple tests to ensure the keyword marker filter factory is working.
@@ -32,7 +33,7 @@ public class TestKeywordMarkerFilterFact
   public void testKeywords() throws Exception {
     Reader reader = new StringReader("dogs cats");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("KeywordMarker", TEST_VERSION_CURRENT,
+    stream = tokenFilterFactory("KeywordMarker", Version.LATEST,
         new StringMockResourceLoader("cats"),
         "protected", "protwords.txt").create(stream);
     stream = tokenFilterFactory("PorterStem").create(stream);
@@ -51,8 +52,7 @@ public class TestKeywordMarkerFilterFact
   public void testKeywordsMixed() throws Exception {
     Reader reader = new StringReader("dogs cats birds");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("KeywordMarker", TEST_VERSION_CURRENT,
-        new StringMockResourceLoader("cats"),
+    stream = tokenFilterFactory("KeywordMarker", Version.LATEST, new StringMockResourceLoader("cats"),
         "protected", "protwords.txt",
         "pattern", "birds|Dogs").create(stream);
     stream = tokenFilterFactory("PorterStem").create(stream);
@@ -62,8 +62,7 @@ public class TestKeywordMarkerFilterFact
   public void testKeywordsCaseInsensitive() throws Exception {
     Reader reader = new StringReader("dogs cats Cats");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("KeywordMarker", TEST_VERSION_CURRENT,
-        new StringMockResourceLoader("cats"),
+    stream = tokenFilterFactory("KeywordMarker", Version.LATEST, new StringMockResourceLoader("cats"),
         "protected", "protwords.txt",
         "ignoreCase", "true").create(stream);
     stream = tokenFilterFactory("PorterStem").create(stream);
@@ -83,7 +82,7 @@ public class TestKeywordMarkerFilterFact
   public void testKeywordsCaseInsensitiveMixed() throws Exception {
     Reader reader = new StringReader("dogs cats Cats Birds birds");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("KeywordMarker", TEST_VERSION_CURRENT,
+    stream = tokenFilterFactory("KeywordMarker", Version.LATEST,
         new StringMockResourceLoader("cats"),
         "protected", "protwords.txt",
         "pattern", "birds",

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestStemmerOverrideFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestStemmerOverrideFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestStemmerOverrideFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/TestStemmerOverrideFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -23,6 +23,7 @@ import java.io.StringReader;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
 import org.apache.lucene.analysis.util.StringMockResourceLoader;
+import org.apache.lucene.util.Version;
 
 /**
  * Simple tests to ensure the stemmer override filter factory is working.
@@ -32,7 +33,7 @@ public class TestStemmerOverrideFilterFa
     // our stemdict stems dogs to 'cat'
     Reader reader = new StringReader("testing dogs");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("StemmerOverride", TEST_VERSION_CURRENT,
+    stream = tokenFilterFactory("StemmerOverride", Version.LATEST,
         new StringMockResourceLoader("dogs\tcat"),
         "dictionary", "stemdict.txt").create(stream);
     stream = tokenFilterFactory("PorterStem").create(stream);
@@ -43,7 +44,7 @@ public class TestStemmerOverrideFilterFa
   public void testKeywordsCaseInsensitive() throws Exception {
     Reader reader = new StringReader("testing DoGs");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("StemmerOverride", TEST_VERSION_CURRENT,
+    stream = tokenFilterFactory("StemmerOverride", Version.LATEST,
         new StringMockResourceLoader("dogs\tcat"),
         "dictionary", "stemdict.txt",
         "ignoreCase", "true").create(stream);

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilterTest.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilterTest.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilterTest.java Wed Aug 27 10:15:38 2014
@@ -235,4 +235,8 @@ public class EdgeNGramTokenFilterTest ex
     assertFalse(tk.incrementToken());
   }
 
+  public void test43Tokenizer() {
+    new Lucene43EdgeNGramTokenizer(1, 1);
+  }
+
 }

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/NGramTokenizerTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/NGramTokenizerTest.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/NGramTokenizerTest.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/ngram/NGramTokenizerTest.java Wed Aug 27 10:15:38 2014
@@ -246,4 +246,9 @@ public class NGramTokenizerTest extends 
     testNGrams(minGram, maxGram, s, "abcdef");
   }
 
+  public void test43Tokenizer() {
+    // TODO: do more than instantiate (ie check the old broken behavior)
+    new Lucene43NGramTokenizer(1, 1);
+  }
+
 }

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowballPorterFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowballPorterFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowballPorterFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowballPorterFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -20,6 +20,7 @@ import org.apache.lucene.analysis.MockTo
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
 import org.apache.lucene.analysis.util.StringMockResourceLoader;
+import org.apache.lucene.util.Version;
 import org.tartarus.snowball.ext.EnglishStemmer;
 
 import java.io.Reader;
@@ -50,7 +51,7 @@ public class TestSnowballPorterFilterFac
   public void testProtected() throws Exception {
     Reader reader = new StringReader("ridding of some stemming");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("SnowballPorter", TEST_VERSION_CURRENT,
+    stream = tokenFilterFactory("SnowballPorter", Version.LATEST,
         new StringMockResourceLoader("ridding"),
         "protected", "protwords.txt",
         "language", "English").create(stream);

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestMultiWordSynonyms.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestMultiWordSynonyms.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestMultiWordSynonyms.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestMultiWordSynonyms.java Wed Aug 27 10:15:38 2014
@@ -20,6 +20,7 @@ package org.apache.lucene.analysis.synon
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
 import org.apache.lucene.analysis.util.StringMockResourceLoader;
+import org.apache.lucene.util.Version;
 
 import java.io.Reader;
 import java.io.StringReader;
@@ -32,7 +33,7 @@ public class TestMultiWordSynonyms exten
   public void testMultiWordSynonyms() throws Exception {
     Reader reader = new StringReader("a e");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("Synonym", TEST_VERSION_CURRENT,
+    stream = tokenFilterFactory("Synonym", Version.LATEST,
         new StringMockResourceLoader("a b c,d"),
         "synonyms", "synonyms.txt").create(stream);
     // This fails because ["e","e"] is the value of the token stream

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/synonym/TestSynonymFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -25,6 +25,7 @@ import org.apache.lucene.analysis.util.T
 import org.apache.lucene.analysis.util.BaseTokenStreamFactoryTestCase;
 import org.apache.lucene.analysis.util.StringMockResourceLoader;
 import org.apache.lucene.analysis.cjk.CJKAnalyzer;
+import org.apache.lucene.util.Version;
 
 public class TestSynonymFilterFactory extends BaseTokenStreamFactoryTestCase {
 
@@ -59,7 +60,7 @@ public class TestSynonymFilterFactory ex
   public void testEmptySynonyms() throws Exception {
     Reader reader = new StringReader("GB");
     TokenStream stream = whitespaceMockTokenizer(reader);
-    stream = tokenFilterFactory("Synonym", TEST_VERSION_CURRENT, 
+    stream = tokenFilterFactory("Synonym", Version.LATEST,
         new StringMockResourceLoader(""), // empty file!
         "synonyms", "synonyms.txt").create(stream);
     assertTokenStreamContents(stream, new String[] { "GB" });

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/BaseTokenStreamFactoryTestCase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/BaseTokenStreamFactoryTestCase.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/BaseTokenStreamFactoryTestCase.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/BaseTokenStreamFactoryTestCase.java Wed Aug 27 10:15:38 2014
@@ -79,7 +79,7 @@ public abstract class BaseTokenStreamFac
    * be on the test classpath.
    */
   protected TokenizerFactory tokenizerFactory(String name, String... keysAndValues) throws Exception {
-    return tokenizerFactory(name, TEST_VERSION_CURRENT, keysAndValues);
+    return tokenizerFactory(name, Version.LATEST, keysAndValues);
   }
 
   /** 
@@ -114,7 +114,7 @@ public abstract class BaseTokenStreamFac
    * be on the test classpath.
    */
   protected TokenFilterFactory tokenFilterFactory(String name, String... keysAndValues) throws Exception {
-    return tokenFilterFactory(name, TEST_VERSION_CURRENT, keysAndValues);
+    return tokenFilterFactory(name, Version.LATEST, keysAndValues);
   }
   
   /** 
@@ -131,7 +131,7 @@ public abstract class BaseTokenStreamFac
    * be on the test classpath.
    */
   protected CharFilterFactory charFilterFactory(String name, String... keysAndValues) throws Exception {
-    return charFilterFactory(name, TEST_VERSION_CURRENT, new ClasspathResourceLoader(getClass()), keysAndValues);
+    return charFilterFactory(name, Version.LATEST, new ClasspathResourceLoader(getClass()), keysAndValues);
   }
   
   /** 

Modified: lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/TestAnalysisSPILoader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/TestAnalysisSPILoader.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/TestAnalysisSPILoader.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/common/src/test/org/apache/lucene/analysis/util/TestAnalysisSPILoader.java Wed Aug 27 10:15:38 2014
@@ -25,12 +25,13 @@ import org.apache.lucene.analysis.core.L
 import org.apache.lucene.analysis.core.WhitespaceTokenizerFactory;
 import org.apache.lucene.analysis.miscellaneous.RemoveDuplicatesTokenFilterFactory;
 import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.Version;
 
 public class TestAnalysisSPILoader extends LuceneTestCase {
   
   private Map<String,String> versionArgOnly() {
     return new HashMap<String,String>() {{
-      put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+      put("luceneMatchVersion", Version.LATEST.toString());
     }};
   }
   

Modified: lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/org/apache/lucene/collation/ICUCollationKeyAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/org/apache/lucene/collation/ICUCollationKeyAnalyzer.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/org/apache/lucene/collation/ICUCollationKeyAnalyzer.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/org/apache/lucene/collation/ICUCollationKeyAnalyzer.java Wed Aug 27 10:15:38 2014
@@ -71,10 +71,17 @@ public final class ICUCollationKeyAnalyz
 
   /**
    * Create a new ICUCollationKeyAnalyzer, using the specified collator.
-   * 
-   * @param matchVersion compatibility version
+   *
    * @param collator CollationKey generator
    */
+  public ICUCollationKeyAnalyzer(Collator collator) {
+    this.factory = new ICUCollationAttributeFactory(collator);
+  }
+
+  /**
+   * @deprecated Use {@link #ICUCollationKeyAnalyzer(Collator)}
+   */
+  @Deprecated
   public ICUCollationKeyAnalyzer(Version matchVersion, Collator collator) {
     this.factory = new ICUCollationAttributeFactory(collator);
   }

Modified: lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/overview.html
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/overview.html?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/overview.html (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/icu/src/java/overview.html Wed Aug 27 10:15:38 2014
@@ -14,7 +14,6 @@
  See the License for the specific language governing permissions and
  limitations under the License.
 -->
-<!-- :Post-Release-Update-Version.LUCENE_XY: - several mentions in this file -->
 <html>
   <head>
     <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
@@ -115,9 +114,9 @@ algorithm.
 <h3>Farsi Range Queries</h3>
 <pre class="prettyprint">
   Collator collator = Collator.getInstance(new ULocale("ar"));
-  ICUCollationKeyAnalyzer analyzer = new ICUCollationKeyAnalyzer(Version.LUCENE_5_0, collator);
+  ICUCollationKeyAnalyzer analyzer = new ICUCollationKeyAnalyzer(collator);
   RAMDirectory ramDir = new RAMDirectory();
-  IndexWriter writer = new IndexWriter(ramDir, new IndexWriterConfig(Version.LUCENE_5_0, analyzer));
+  IndexWriter writer = new IndexWriter(ramDir, new IndexWriterConfig(analyzer));
   Document doc = new Document();
   doc.add(new Field("content", "\u0633\u0627\u0628", 
                     Field.Store.YES, Field.Index.ANALYZED));
@@ -125,7 +124,7 @@ algorithm.
   writer.close();
   IndexSearcher is = new IndexSearcher(ramDir, true);
 
-  QueryParser aqp = new QueryParser(Version.LUCENE_5_0, "content", analyzer);
+  QueryParser aqp = new QueryParser("content", analyzer);
   aqp.setAnalyzeRangeTerms(true);
     
   // Unicode order would include U+0633 in [ U+062F - U+0698 ], but Farsi
@@ -141,9 +140,9 @@ algorithm.
 <h3>Danish Sorting</h3>
 <pre class="prettyprint">
   Analyzer analyzer 
-    = new ICUCollationKeyAnalyzer(Version.LUCENE_5_0, Collator.getInstance(new ULocale("da", "dk")));
+    = new ICUCollationKeyAnalyzer(Collator.getInstance(new ULocale("da", "dk")));
   RAMDirectory indexStore = new RAMDirectory();
-  IndexWriter writer = new IndexWriter(indexStore, new IndexWriterConfig(Version.LUCENE_5_0, analyzer));
+  IndexWriter writer = new IndexWriter(indexStore, new IndexWriterConfig(analyzer));
   String[] tracer = new String[] { "A", "B", "C", "D", "E" };
   String[] data = new String[] { "HAT", "HUT", "H\u00C5T", "H\u00D8T", "HOT" };
   String[] sortedTracerOrder = new String[] { "A", "E", "B", "D", "C" };
@@ -169,15 +168,15 @@ algorithm.
 <pre class="prettyprint">
   Collator collator = Collator.getInstance(new ULocale("tr", "TR"));
   collator.setStrength(Collator.PRIMARY);
-  Analyzer analyzer = new ICUCollationKeyAnalyzer(Version.LUCENE_5_0, collator);
+  Analyzer analyzer = new ICUCollationKeyAnalyzer(collator);
   RAMDirectory ramDir = new RAMDirectory();
-  IndexWriter writer = new IndexWriter(ramDir, new IndexWriterConfig(Version.LUCENE_5_0, analyzer));
+  IndexWriter writer = new IndexWriter(ramDir, new IndexWriterConfig(analyzer));
   Document doc = new Document();
   doc.add(new Field("contents", "DIGY", Field.Store.NO, Field.Index.ANALYZED));
   writer.addDocument(doc);
   writer.close();
   IndexSearcher is = new IndexSearcher(ramDir, true);
-  QueryParser parser = new QueryParser(Version.LUCENE_5_0, "contents", analyzer);
+  QueryParser parser = new QueryParser("contents", analyzer);
   Query query = parser.parse("d\u0131gy");   // U+0131: dotless i
   ScoreDoc[] result = is.search(query, null, 1000).scoreDocs;
   assertEquals("The index Term should be included.", 1, result.length);

Modified: lucene/dev/branches/lucene5904/lucene/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyAnalyzer.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyAnalyzer.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/icu/src/test/org/apache/lucene/collation/TestICUCollationKeyAnalyzer.java Wed Aug 27 10:15:38 2014
@@ -29,7 +29,7 @@ import java.util.Locale;
 public class TestICUCollationKeyAnalyzer extends CollationTestBase {
 
   private Collator collator = Collator.getInstance(new Locale("fa"));
-  private Analyzer analyzer = new ICUCollationKeyAnalyzer(TEST_VERSION_CURRENT, collator);
+  private Analyzer analyzer = new ICUCollationKeyAnalyzer(collator);
 
   private BytesRef firstRangeBeginning = new BytesRef
     (collator.getCollationKey(firstRangeBeginningOriginal).toByteArray());
@@ -62,7 +62,7 @@ public class TestICUCollationKeyAnalyzer
       Locale locale = Locale.GERMAN;
       Collator collator = Collator.getInstance(locale);
       collator.setStrength(Collator.IDENTICAL);
-      assertThreadSafe(new ICUCollationKeyAnalyzer(TEST_VERSION_CURRENT, collator));
+      assertThreadSafe(new ICUCollationKeyAnalyzer(collator));
     }
   }
 }

Modified: lucene/dev/branches/lucene5904/lucene/analysis/kuromoji/src/test/org/apache/lucene/analysis/ja/TestJapanesePartOfSpeechStopFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/analysis/kuromoji/src/test/org/apache/lucene/analysis/ja/TestJapanesePartOfSpeechStopFilterFactory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/analysis/kuromoji/src/test/org/apache/lucene/analysis/ja/TestJapanesePartOfSpeechStopFilterFactory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/analysis/kuromoji/src/test/org/apache/lucene/analysis/ja/TestJapanesePartOfSpeechStopFilterFactory.java Wed Aug 27 10:15:38 2014
@@ -25,6 +25,7 @@ import java.util.Map;
 import org.apache.lucene.analysis.BaseTokenStreamTestCase;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.Tokenizer;
+import org.apache.lucene.util.Version;
 
 /**
  * Simple tests for {@link JapanesePartOfSpeechStopFilterFactory}
@@ -40,7 +41,7 @@ public class TestJapanesePartOfSpeechSto
     TokenStream ts = tokenizerFactory.create();
     ((Tokenizer)ts).setReader(new StringReader("私は制限スピードを超える。"));
     Map<String,String> args = new HashMap<>();
-    args.put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+    args.put("luceneMatchVersion", Version.LATEST.toString());
     args.put("tags", "stoptags.txt");
     JapanesePartOfSpeechStopFilterFactory factory = new JapanesePartOfSpeechStopFilterFactory(args);
     factory.inform(new StringMockResourceLoader(tags));
@@ -54,7 +55,7 @@ public class TestJapanesePartOfSpeechSto
   public void testBogusArguments() throws Exception {
     try {
       new JapanesePartOfSpeechStopFilterFactory(new HashMap<String,String>() {{
-        put("luceneMatchVersion", TEST_VERSION_CURRENT.toString());
+        put("luceneMatchVersion", Version.LATEST.toString());
         put("bogusArg", "bogusValue");
       }});
       fail();

Modified: lucene/dev/branches/lucene5904/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/AnalyzerFactoryTask.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/AnalyzerFactoryTask.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/AnalyzerFactoryTask.java (original)
+++ lucene/dev/branches/lucene5904/lucene/benchmark/src/java/org/apache/lucene/benchmark/byTask/tasks/AnalyzerFactoryTask.java Wed Aug 27 10:15:38 2014
@@ -58,7 +58,7 @@ import java.util.regex.Pattern;
  *   <li>zero or more TokenFilterFactory's</li>
  * </ol>
  *
- * Each component analysis factory map specify <tt>luceneMatchVersion</tt> (defaults to
+ * Each component analysis factory may specify <tt>luceneMatchVersion</tt> (defaults to
  * {@link Version#LATEST}) and any of the args understood by the specified
  * *Factory class, in the above-describe param format.
  * <p/>

Modified: lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/AddIndexesTaskTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/AddIndexesTaskTest.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/AddIndexesTaskTest.java (original)
+++ lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/AddIndexesTaskTest.java Wed Aug 27 10:15:38 2014
@@ -30,6 +30,7 @@ import org.apache.lucene.index.IndexWrit
 import org.apache.lucene.index.IndexWriterConfig;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.RAMDirectory;
+import org.apache.lucene.util.Version;
 import org.junit.BeforeClass;
 
 /** Tests the functionality of {@link AddIndexesTask}. */
@@ -57,7 +58,7 @@ public class AddIndexesTaskTest extends 
   
   private PerfRunData createPerfRunData() throws Exception {
     Properties props = new Properties();
-    props.setProperty("writer.version", TEST_VERSION_CURRENT.toString());
+    props.setProperty("writer.version", Version.LATEST.toString());
     props.setProperty("print.props", "false"); // don't print anything
     props.setProperty("directory", "RAMDirectory");
     props.setProperty(AddIndexesTask.ADDINDEXES_INPUT_DIR, inputDir.getAbsolutePath());

Modified: lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CommitIndexTaskTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CommitIndexTaskTest.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CommitIndexTaskTest.java (original)
+++ lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CommitIndexTaskTest.java Wed Aug 27 10:15:38 2014
@@ -23,13 +23,14 @@ import org.apache.lucene.benchmark.Bench
 import org.apache.lucene.benchmark.byTask.PerfRunData;
 import org.apache.lucene.benchmark.byTask.utils.Config;
 import org.apache.lucene.index.SegmentInfos;
+import org.apache.lucene.util.Version;
 
 /** Tests the functionality of {@link CreateIndexTask}. */
 public class CommitIndexTaskTest extends BenchmarkTestCase {
 
   private PerfRunData createPerfRunData() throws Exception {
     Properties props = new Properties();
-    props.setProperty("writer.version", TEST_VERSION_CURRENT.toString());
+    props.setProperty("writer.version", Version.LATEST.toString());
     props.setProperty("print.props", "false"); // don't print anything
     props.setProperty("directory", "RAMDirectory");
     Config config = new Config(props);

Modified: lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CreateIndexTaskTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CreateIndexTaskTest.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CreateIndexTaskTest.java (original)
+++ lucene/dev/branches/lucene5904/lucene/benchmark/src/test/org/apache/lucene/benchmark/byTask/tasks/CreateIndexTaskTest.java Wed Aug 27 10:15:38 2014
@@ -37,8 +37,7 @@ public class CreateIndexTaskTest extends
 
   private PerfRunData createPerfRunData(String infoStreamValue) throws Exception {
     Properties props = new Properties();
-    // :Post-Release-Update-Version.LUCENE_XY:
-    props.setProperty("writer.version", Version.LUCENE_5_0_0.toString());
+    props.setProperty("writer.version", Version.LATEST.toString());
     props.setProperty("print.props", "false"); // don't print anything
     props.setProperty("directory", "RAMDirectory");
     if (infoStreamValue != null) {

Modified: lucene/dev/branches/lucene5904/lucene/classification/src/java/org/apache/lucene/classification/utils/DatasetSplitter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/classification/src/java/org/apache/lucene/classification/utils/DatasetSplitter.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/classification/src/java/org/apache/lucene/classification/utils/DatasetSplitter.java (original)
+++ lucene/dev/branches/lucene5904/lucene/classification/src/java/org/apache/lucene/classification/utils/DatasetSplitter.java Wed Aug 27 10:15:38 2014
@@ -68,7 +68,6 @@ public class DatasetSplitter {
                     Analyzer analyzer, String... fieldNames) throws IOException {
 
     // create IWs for train / test / cv IDXs
-    // :Post-Release-Update-Version.LUCENE_XY:
     IndexWriter testWriter = new IndexWriter(testIndex, new IndexWriterConfig(analyzer));
     IndexWriter cvWriter = new IndexWriter(crossValidationIndex, new IndexWriterConfig(analyzer));
     IndexWriter trainingWriter = new IndexWriter(trainingIndex, new IndexWriterConfig(analyzer));

Modified: lucene/dev/branches/lucene5904/lucene/core/src/java/org/apache/lucene/store/NRTCachingDirectory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/core/src/java/org/apache/lucene/store/NRTCachingDirectory.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/core/src/java/org/apache/lucene/store/NRTCachingDirectory.java (original)
+++ lucene/dev/branches/lucene5904/lucene/core/src/java/org/apache/lucene/store/NRTCachingDirectory.java Wed Aug 27 10:15:38 2014
@@ -31,7 +31,6 @@ import org.apache.lucene.util.IOUtils;
 //   - let subclass dictate policy...?
 //   - rename to MergeCacheingDir?  NRTCachingDir
 
-// :Post-Release-Update-Version.LUCENE_X_Y: (in <pre> block in javadoc below)
 /**
  * Wraps a {@link RAMDirectory}
  * around any provided delegate directory, to
@@ -52,7 +51,7 @@ import org.apache.lucene.util.IOUtils;
  * <pre class="prettyprint">
  *   Directory fsDir = FSDirectory.open(new File("/path/to/index"));
  *   NRTCachingDirectory cachedFSDir = new NRTCachingDirectory(fsDir, 5.0, 60.0);
- *   IndexWriterConfig conf = new IndexWriterConfig(Version.LUCENE_5_0_0, analyzer);
+ *   IndexWriterConfig conf = new IndexWriterConfig(analyzer);
  *   IndexWriter writer = new IndexWriter(cachedFSDir, conf);
  * </pre>
  *

Modified: lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41PostingsFormat.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41PostingsFormat.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41PostingsFormat.java (original)
+++ lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/codecs/lucene41/TestLucene41PostingsFormat.java Wed Aug 27 10:15:38 2014
@@ -37,11 +37,6 @@ public class TestLucene41PostingsFormat 
     return TestUtil.alwaysPostingsFormat(new Lucene41PostingsFormat());
   }
 
-  @Override
-  public void testMergeStability() throws Exception {
-    assumeTrue("The MockRandom PF randomizes content on the fly, so we can't check it", false);
-  }
-
   /** Make sure the final sub-block(s) are not skipped. */
   public void testFinalBlock() throws Exception {
     Directory d = newDirectory();

Modified: lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java (original)
+++ lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java Wed Aug 27 10:15:38 2014
@@ -1127,4 +1127,38 @@ public class TestBackwardsCompatibility 
     dir.close();
   }
   
+  // LUCENE-5907
+  public void testUpgradeWithNRTReader() throws Exception {
+    for (String name : oldNames) {
+      Directory dir = newDirectory(oldIndexDirs.get(name));
+
+      IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(new MockAnalyzer(random()))
+                                           .setOpenMode(OpenMode.APPEND));
+      writer.addDocument(new Document());
+      DirectoryReader r = DirectoryReader.open(writer, true);
+      writer.commit();
+      r.close();
+      writer.forceMerge(1);
+      writer.commit();
+      writer.rollback();
+      new SegmentInfos().read(dir);
+      dir.close();
+    }
+  }
+
+  // LUCENE-5907
+  public void testUpgradeThenMultipleCommits() throws Exception {
+    for (String name : oldNames) {
+      Directory dir = newDirectory(oldIndexDirs.get(name));
+
+      IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(new MockAnalyzer(random()))
+                                           .setOpenMode(OpenMode.APPEND));
+      writer.addDocument(new Document());
+      writer.commit();
+      writer.addDocument(new Document());
+      writer.commit();
+      writer.close();
+      dir.close();
+    }
+  }
 }

Modified: lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java (original)
+++ lucene/dev/branches/lucene5904/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterOnDiskFull.java Wed Aug 27 10:15:38 2014
@@ -490,7 +490,7 @@ public class TestIndexWriterOnDiskFull e
   // LUCENE-2593
   public void testCorruptionAfterDiskFullDuringMerge() throws IOException {
     MockDirectoryWrapper dir = newMockDirectory();
-    //IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random)).setReaderPooling(true));
+    //IndexWriter w = new IndexWriter(dir, newIndexWriterConfig(new MockAnalyzer(random)).setReaderPooling(true));
     IndexWriter w = new IndexWriter(
         dir,
         newIndexWriterConfig(new MockAnalyzer(random()))

Modified: lucene/dev/branches/lucene5904/lucene/demo/src/java/org/apache/lucene/demo/IndexFiles.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/demo/src/java/org/apache/lucene/demo/IndexFiles.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/demo/src/java/org/apache/lucene/demo/IndexFiles.java (original)
+++ lucene/dev/branches/lucene5904/lucene/demo/src/java/org/apache/lucene/demo/IndexFiles.java Wed Aug 27 10:15:38 2014
@@ -30,7 +30,6 @@ import org.apache.lucene.index.IndexWrit
 import org.apache.lucene.index.Term;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
-import org.apache.lucene.util.Version;
 
 import java.io.BufferedReader;
 import java.io.File;
@@ -87,7 +86,6 @@ public class IndexFiles {
       System.out.println("Indexing to directory '" + indexPath + "'...");
 
       Directory dir = FSDirectory.open(new File(indexPath));
-      // :Post-Release-Update-Version.LUCENE_XY:
       Analyzer analyzer = new StandardAnalyzer();
       IndexWriterConfig iwc = new IndexWriterConfig(analyzer);
 

Modified: lucene/dev/branches/lucene5904/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyWriter.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyWriter.java (original)
+++ lucene/dev/branches/lucene5904/lucene/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyWriter.java Wed Aug 27 10:15:38 2014
@@ -282,7 +282,6 @@ public class DirectoryTaxonomyWriter imp
     // TODO: should we use a more optimized Codec, e.g. Pulsing (or write custom)?
     // The taxonomy has a unique structure, where each term is associated with one document
 
-    // :Post-Release-Update-Version.LUCENE_XY:
     // Make sure we use a MergePolicy which always merges adjacent segments and thus
     // keeps the doc IDs ordered as well (this is crucial for the taxonomy index).
     return new IndexWriterConfig(null).setOpenMode(openMode).setMergePolicy(

Modified: lucene/dev/branches/lucene5904/lucene/misc/src/test/org/apache/lucene/index/TestMultiPassIndexSplitter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/misc/src/test/org/apache/lucene/index/TestMultiPassIndexSplitter.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/misc/src/test/org/apache/lucene/index/TestMultiPassIndexSplitter.java (original)
+++ lucene/dev/branches/lucene5904/lucene/misc/src/test/org/apache/lucene/index/TestMultiPassIndexSplitter.java Wed Aug 27 10:15:38 2014
@@ -23,6 +23,7 @@ import org.apache.lucene.document.Field;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
+import org.apache.lucene.util.Version;
 
 public class TestMultiPassIndexSplitter extends LuceneTestCase {
   IndexReader input;
@@ -65,7 +66,7 @@ public class TestMultiPassIndexSplitter 
             newDirectory(),
             newDirectory()
     };
-    splitter.split(TEST_VERSION_CURRENT, input, dirs, false);
+    splitter.split(Version.LATEST, input, dirs, false);
     IndexReader ir;
     ir = DirectoryReader.open(dirs[0]);
     assertTrue(ir.numDocs() - NUM_DOCS / 3 <= 1); // rounding error
@@ -110,7 +111,7 @@ public class TestMultiPassIndexSplitter 
             newDirectory(),
             newDirectory()
     };
-    splitter.split(TEST_VERSION_CURRENT, input, dirs, true);
+    splitter.split(Version.LATEST, input, dirs, true);
     IndexReader ir;
     ir = DirectoryReader.open(dirs[0]);
     assertTrue(ir.numDocs() - NUM_DOCS / 3 <= 1);

Modified: lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java (original)
+++ lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java Wed Aug 27 10:15:38 2014
@@ -1048,7 +1048,7 @@ public class TestQPHelper extends Lucene
 // Todo: Convert from DateField to DateUtil
 //  public void testLocalDateFormat() throws IOException, QueryNodeException {
 //    Directory ramDir = newDirectory();
-//    IndexWriter iw = new IndexWriter(ramDir, newIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(random, MockTokenizer.WHITESPACE, false)));
+//    IndexWriter iw = new IndexWriter(ramDir, newIndexWriterConfig(new MockAnalyzer(random, MockTokenizer.WHITESPACE, false)));
 //    addDateDoc("a", 2005, 12, 2, 10, 15, 33, iw);
 //    addDateDoc("b", 2005, 12, 4, 22, 15, 00, iw);
 //    iw.close();

Modified: lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/util/QueryParserTestBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/util/QueryParserTestBase.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/util/QueryParserTestBase.java (original)
+++ lucene/dev/branches/lucene5904/lucene/queryparser/src/test/org/apache/lucene/queryparser/util/QueryParserTestBase.java Wed Aug 27 10:15:38 2014
@@ -941,7 +941,7 @@ public abstract class QueryParserTestBas
 // Todo: convert this from DateField to DateUtil
 //  public void testLocalDateFormat() throws IOException, ParseException {
 //    Directory ramDir = newDirectory();
-//    IndexWriter iw = new IndexWriter(ramDir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random, MockTokenizer.WHITESPACE, false)));
+//    IndexWriter iw = new IndexWriter(ramDir, newIndexWriterConfig(new MockAnalyzer(random, MockTokenizer.WHITESPACE, false)));
 //    addDateDoc("a", 2005, 12, 2, 10, 15, 33, iw);
 //    addDateDoc("b", 2005, 12, 4, 22, 15, 00, iw);
 //    iw.close();

Modified: lucene/dev/branches/lucene5904/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5904/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java?rev=1620852&r1=1620851&r2=1620852&view=diff
==============================================================================
--- lucene/dev/branches/lucene5904/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java (original)
+++ lucene/dev/branches/lucene5904/lucene/suggest/src/java/org/apache/lucene/search/suggest/analyzing/AnalyzingInfixSuggester.java Wed Aug 27 10:15:38 2014
@@ -146,10 +146,19 @@ public class AnalyzingInfixSuggester ext
    *  private to the infix suggester (i.e., not an external
    *  Lucene index).  Note that {@link #close}
    *  will also close the provided directory. */
+  public AnalyzingInfixSuggester(Directory dir, Analyzer analyzer) throws IOException {
+    this(dir, analyzer, analyzer, DEFAULT_MIN_PREFIX_CHARS, false);
+  }
+
+  /**
+   * @deprecated Use {@link #AnalyzingInfixSuggester(Directory, Analyzer)}
+   */
+  @Deprecated
   public AnalyzingInfixSuggester(Version matchVersion, Directory dir, Analyzer analyzer) throws IOException {
     this(matchVersion, dir, analyzer, analyzer, DEFAULT_MIN_PREFIX_CHARS, false);
   }
 
+
   /** Create a new instance, loading from a previously built
    *  AnalyzingInfixSuggester directory, if it exists.  This directory must be
    *  private to the infix suggester (i.e., not an external
@@ -165,6 +174,15 @@ public class AnalyzingInfixSuggester ext
    *  @param commitOnBuild Call commit after the index has finished building. This would persist the
    *                       suggester index to disk and future instances of this suggester can use this pre-built dictionary.
    */
+  public AnalyzingInfixSuggester(Directory dir, Analyzer indexAnalyzer, Analyzer queryAnalyzer, int minPrefixChars,
+                                 boolean commitOnBuild) throws IOException {
+     this(indexAnalyzer.getVersion(), dir, indexAnalyzer, queryAnalyzer, minPrefixChars, commitOnBuild);
+  }
+
+  /**
+   * @deprecated Use {@link #AnalyzingInfixSuggester(Directory, Analyzer, Analyzer, int, boolean)}
+   */
+  @Deprecated
   public AnalyzingInfixSuggester(Version matchVersion, Directory dir, Analyzer indexAnalyzer, Analyzer queryAnalyzer, int minPrefixChars,
                                  boolean commitOnBuild) throws IOException {