lucene-java-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From uschind...@apache.org
Subject svn commit: r884143 - in /lucene/java/branches/flex_1458_3_0_back_compat_tests: ./ contrib/ contrib/highlighter/src/test/ docs/ src/java/org/apache/lucene/analysis/ src/java/org/apache/lucene/analysis/standard/ src/java/org/apache/lucene/search/ src/ja...
Date Wed, 25 Nov 2009 15:32:04 GMT
Author: uschindler
Date: Wed Nov 25 15:32:03 2009
New Revision: 884143

URL: http://svn.apache.org/viewvc?rev=884143&view=rev
Log:
merge 3.0 final release into flex BW branch

Added:
    lucene/java/branches/flex_1458_3_0_back_compat_tests/JRE_VERSION_MIGRATION.txt
      - copied unchanged from r881473, lucene/java/branches/lucene_3_0/JRE_VERSION_MIGRATION.txt
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt
      - copied, changed from r881317, lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt
Modified:
    lucene/java/branches/flex_1458_3_0_back_compat_tests/   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/CHANGES.txt   (contents, props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/CHANGES.txt   (contents, props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/highlighter/src/test/   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.html
    lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.pdf
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/package.html
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.java
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.jflex
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java   (contents, props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/NumericRangeQuery.java
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/function/CustomScoreQuery.java
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/AttributeSource.java
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/Version.java
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFancyStyle.css
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFixedWidthStyle.css
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesSimpleStyle.css
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/changes2html.pl
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/src/documentation/content/xdocs/fileformats.xml
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/document/TestDateTools.java   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/document/TestNumberTools.java   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java   (props changed)
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java
    lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java   (contents, props changed)

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,3 +1,5 @@
 /lucene/java/branches/lucene_2_4:748824
 /lucene/java/branches/lucene_2_9:817269-818600,825998,829134,829881,831036
 /lucene/java/branches/lucene_2_9_back_compat_tests:818601-821336
+/lucene/java/branches/lucene_3_0:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/CHANGES.txt?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/CHANGES.txt (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/CHANGES.txt Wed Nov 25 15:32:03 2009
@@ -1,7 +1,7 @@
 Lucene Change Log
 $Id$
 
-======================= Trunk (not yet released) =======================
+======================= Release 3.0.0 2009-11-25 =======================
 
 Changes in backwards compatibility policy
 
@@ -37,6 +37,9 @@
   this is a change in the default from 2.9, when these methods were
   previously deprecated.  (Mike McCandless)
 
+* LUCENE-1753: Make not yet final TokenStreams final to enforce 
+  decorator pattern. (Uwe Schindler)
+
 Changes in runtime behavior
 
 * LUCENE-1677: Remove the system property to set SegmentReader class
@@ -70,34 +73,44 @@
 
 API Changes
 
-* LUCENE-1257, LUCENE-1984, LUCENE-1985, LUCENE-2057: Port to Java 1.5.
-  (Uwe Schindler, Robert Muir, Karl Wettin, Paul Elschot, Kay Kay, Shai Erera)
+* LUCENE-1257, LUCENE-1984, LUCENE-1985, LUCENE-2057, LUCENE-1833, LUCENE-2012,
+  LUCENE-1998: Port to Java 1.5:
+
+  - Add generics to public and internal APIs (see below).
+  - Replace new Integer(int), new Double(double),... by static valueOf() calls.
+  - Replace for-loops with Iterator by foreach loops.
+  - Replace StringBuffer with StringBuilder.
+  - Replace o.a.l.util.Parameter by Java 5 enums (see below).
+  - Add @Override annotations.
+  (Uwe Schindler, Robert Muir, Karl Wettin, Paul Elschot, Kay Kay, Shai Erera,
+  DM Smith)
 
 * Generify Lucene API:
-  <code>
+
   - TokenStream/AttributeSource: Now addAttribute()/getAttribute() return an
-    instance of the requested attribute interface and no cast needed anymore.
+    instance of the requested attribute interface and no cast needed anymore
+    (LUCENE-1855).
   - NumericRangeQuery, NumericRangeFilter, and FieldCacheRangeFilter
-    now have Integer, Long, Float, Double as type param.
-  - Document.getFields() returns List<Fieldable>
+    now have Integer, Long, Float, Double as type param (LUCENE-1857).
+  - Document.getFields() returns List<Fieldable>.
   - Query.extractTerms(Set<Term>)
   - CharArraySet and stop word sets in core/contrib
-  - PriorityQueue
+  - PriorityQueue (LUCENE-1935)
   - TopDocCollector
+  - DisjunctionMaxQuery (LUCENE-1984)
   - MultiTermQueryWrapperFilter
   - CloseableThreadLocal
   - MapOfSets
   - o.a.l.util.cache package
   - lot's of internal APIs of IndexWriter
- </code>
  (Uwe Schindler, Michael Busch, Kay Kay, Robert Muir, Adriano Crestani)
   
 * LUCENE-1944, LUCENE-1856, LUCENE-1957, LUCENE-1960, LUCENE-1961,
   LUCENE-1968, LUCENE-1970, LUCENE-1946, LUCENE-1971, LUCENE-1975,
   LUCENE-1972, LUCENE-1978, LUCENE-944, LUCENE-1979, LUCENE-1973, LUCENE-2011:
   Remove deprecated methods/constructors/classes:
-  <code>
-  - All String/File directory paths in IndexReader /
+
+  - Remove all String/File directory paths in IndexReader /
     IndexSearcher / IndexWriter.
   - Remove FSDirectory.getDirectory()
   - Make FSDirectory abstract.
@@ -111,26 +124,22 @@
   - Remove SpanQuery.getTerms().
   - Remove ExtendedFieldCache, custom and auto caches, SortField.AUTO.
   - Remove old-style custom sort.
-  - Remove Legacy search setting in SortField.
+  - Remove legacy search setting in SortField.
   - Remove Hits and all references from core and contrib.
   - Remove HitCollector and its TopDocs support implementations.
   - Remove term field and accessors in MultiTermQuery
     (and fix Highlighter).
-  - Remove methods in BooleanQuery.
-  - Remove methods in Similarity.
+  - Remove deprecated methods in BooleanQuery.
+  - Remove deprecated methods in Similarity.
   - Remove BoostingTermQuery.
   - Remove MultiValueSource.
   - Remove Scorer.explain(int).
-  </code>
   ...and some other minor ones (Uwe Schindler, Michael Busch, Mark Miller)
   
 * LUCENE-1925: Make IndexSearcher's subReaders and docStarts members
   protected; add expert ctor to directly specify reader, subReaders
   and docStarts.  (John Wang, Tim Smith via Mike McCandless)
 
-* LUCENE-1753: Make not yet final TokenStreams final to enforce 
-  decorator pattern. (Uwe Schindler)
-
 * LUCENE-1945: All public classes that have a close() method now
   also implement java.io.Closeable (IndexReader, IndexWriter, Directory,...).
   (Uwe Schindler)
@@ -151,6 +160,9 @@
 * LUCENE-2013: SpanRegexQuery does not work with QueryScorer.
   (Benjamin Keil via Mark Miller)
 
+* LUCENE-2088: addAttribute() should only accept interfaces that
+  extend Attribute. (Shai Erera, Uwe Schindler)
+
 New features
 
 * LUCENE-1933: Provide a convenience AttributeFactory that creates a
@@ -172,6 +184,9 @@
 * LUCENE-2006: Optimization of FieldDocSortedHitQueue to always
   use Comparable<?> interface.  (Uwe Schindler, Mark Miller)
 
+* LUCENE-2087: Remove recursion in NumericRangeTermEnum.
+  (Uwe Schindler)
+
 Build
 
 * LUCENE-486: Remove test->demo dependencies. (Michael Busch)

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/CHANGES.txt
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -0,0 +1,5 @@
+/lucene/java/branches/lucene_2_4/CHANGES.txt:748824
+/lucene/java/branches/lucene_2_9/CHANGES.txt:817269-818600,825998,829134,829881,831036
+/lucene/java/branches/lucene_2_9_back_compat_tests/CHANGES.txt:818601-821336
+/lucene/java/branches/lucene_3_0/CHANGES.txt:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/CHANGES.txt:881213,881315,881466,881819,882374,882464,882807,882888,882977,883074-883075

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,3 +1,5 @@
 /lucene/java/branches/lucene_2_4/contrib:748824
 /lucene/java/branches/lucene_2_9/contrib:817269-818600,825998,829134,829816,829881,831036
 /lucene/java/branches/lucene_2_9_back_compat_tests/contrib:818601-821336
+/lucene/java/branches/lucene_3_0/contrib:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/contrib:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/CHANGES.txt?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/CHANGES.txt (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/CHANGES.txt Wed Nov 25 15:32:03 2009
@@ -1,6 +1,6 @@
 Lucene contrib change Log
 
-======================= Trunk (not yet released) =======================
+======================= Release 3.0.0 2009-11-25 =======================
 
 Changes in backwards compatibility policy
 

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/CHANGES.txt
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,3 +1,5 @@
 /lucene/java/branches/lucene_2_4/contrib/CHANGES.txt:748824
 /lucene/java/branches/lucene_2_9/contrib/CHANGES.txt:817269-818600,825998,826775,829134,829816,829881,831036
 /lucene/java/branches/lucene_2_9_back_compat_tests/contrib/CHANGES.txt:818601-821336
+/lucene/java/branches/lucene_3_0/contrib/CHANGES.txt:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/contrib/CHANGES.txt:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/contrib/highlighter/src/test/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,3 +1,5 @@
 /lucene/java/branches/lucene_2_4/contrib/highlighter/src/test:748824
 /lucene/java/branches/lucene_2_9/contrib/highlighter/src/test:817269-818600,825998,826775,829134,829816,829881,831036
 /lucene/java/branches/lucene_2_9_back_compat_tests/contrib/highlighter/src/test:818601-821336
+/lucene/java/branches/lucene_3_0/contrib/highlighter/src/test:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/contrib/highlighter/src/test:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.html
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.html?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.html (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.html Wed Nov 25 15:32:03 2009
@@ -377,7 +377,7 @@
 <div class="section">
 <p>
                 This document defines the index file formats used
-                in Lucene version 2.9. If you are using a different
+                in Lucene version 3.0. If you are using a different
                 version of Lucene, please consult the copy of
                 <span class="codefrag">docs/fileformats.html</span>
                 that was distributed
@@ -391,7 +391,7 @@
                 languages</a>.  If these versions are to remain compatible with Apache
                 Lucene, then a language-independent definition of the Lucene index
                 format is required.  This document thus attempts to provide a
-                complete and independent definition of the Apache Lucene 2.9 file
+                complete and independent definition of the Apache Lucene 3.0 file
                 formats.
             </p>
 <p>
@@ -1853,7 +1853,8 @@
 <li>second bit is one for fields containing binary data</li>
                                 
 <li>third bit is one for fields with compression option enabled
-                                    (if compression is enabled, the algorithm used is ZLIB)</li>
+                                    (if compression is enabled, the algorithm used is ZLIB),
+                                    only available for indexes until Lucene version 2.9.x</li>
                             
 </ul>
                         

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.pdf
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.pdf?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.pdf (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/docs/fileformats.pdf Wed Nov 25 15:32:03 2009
@@ -397,10 +397,10 @@
 >>
 endobj
 75 0 obj
-<< /Length 2056 /Filter [ /ASCII85Decode /FlateDecode ]
+<< /Length 2057 /Filter [ /ASCII85Decode /FlateDecode ]
  >>
 stream
-GauHM95iiK&AJ$C#^[s4+Aqcse_=ur/9]E.+%CUUHXJ,A(01s$PjHZ0n)unZ;6guiM?&L4Lu^MPb^;4B5O:9mm5D-e6f/)P_q++fNbR'o>pJ!:RQ,!(s8;8Z[L!Aucofp2hi:ojIPb?dZlMk[m:GnTk/2*.o^$@*rPC2D(trC#/&74F[8S(b?MCg4VYtXMlM'#-eLYe9.?F8UEVQ'"*/t;fYu9FoIqu[BXU/UGo#D6%mH@d#lQOsT<i:aYc*UYB'TH\hNo,HA*>:I$(_pJEn[q7cGb!h7]i#m`_M#de$2h;gh`n%bO7:rpo?UFXF#<R6KhMjGJu&^>[<VWI<`J+0$')JfncS_qa!7Ftf]lL-7?k_F(W?.fNZt'HIMa/s;U-Nh&/MgXdW0oNYW0>DKc>84cb[h@2FO-,Ynj$\Wp/qBerOC.%P,d%m_[a2=eRs`;T4G2\@U)$F(%$d&m:+QV(/_`01gFoY]%P;'i4'd1qp)14#HD%/ArK$K*DSO73lHdF*4j<AnQkR"t#<3aT4=n`s4^2MK'>/jH'B$_N6"cJteVg+r+F^7XKmXF[j]9`5)_,$P\&a3!bg],jJ<o+"DHlEZoj=$+UD*R#?q;4C]4&=C`d[-8/I&g@.p@kkKc3WSRD9+JN`*gpY7,L/&_;c'0_-(XoiuNMVK92-EC99jne#EM$Qh^K-3L&Yf5me<\,^o+(;[ST*Lqo"ir@,iVF"C.G'>#9M&5C>-pC.?&r>@14'+2S#-F+Q6BOKi.rA+;bhY/hbPs7=+*Z`6C@#nlSk*1gL,Bljm[A/r'kdb+Y%J/D>D;HEZMu$<HX<3u:4(*UFn.6AD&2,lV3q<"<</?oX<iISkrU_FP7+5/V*cWLT^V]P@u@oKsuY8Xbl7D"FC^93TlBa?mq@`drr%\.#(d&]YlLb7uAO]BkK7r=OE\@o8V-#=ChsU<'PB$2/=6\!eks+4B4K5+@5Sd%oC,D@t<;g^FVb.)R]40i;W
 sIX+Vt`7#)"H-Fk=0#<^CUXcY:nEEUm",8V-<P@MnSnRT:)=#3bY0n!ffF&)%>aU<qp9)\h^X1_g%'/T+TmE74IfsDceK!A10G,@q@%:G=#@fuZ-a>(O),Cj"C-^bq-Y2%),,5&^`Kl/^aaM8AFi%PK8G$:b-)<k\IGHpr)Thq@EdE=i/P/eMp;3),qdVRsg@$UtYo`H4]8X(d0S]a/Sp6X@8N8nZ=.MV$,Q<_%:e3np'9dJYeKc::5N$.\Q8bZ%Sr7>;L0Wfu@T/@sJr_m\M_M481b8>P1QB[o\YC2IUsrZP"O[h/rfKVW5&)i=.<Dq-h^W^@s"&6_N5.*i,:QC/1\KE+"-OZ$P@ghX&pl_maHDA@*dA"M&]4/\g8KH\_S#@pP5BUKP[*Q_)uCpi&e13Zn_p9`.7kh+G2T*jLC#q2bGfq@CcBCU`.+WKUaRgoLh%CK"ag<gnO)Ho;?pi(j@Zb<nXonSg'GcE8+\I<\ZDp.46*Hkl9uLTAO4N&)-.8`1ucR7E3XeWAV$Z1[PdDdH+2U@=g"_/rQQ7[nhHZZ=e1]M1`t9M8PW9$f2*`(Rg@"Cik/o?1'gUp]ej7eVN`nFo%3=^Gb7bi,gbis_$Podj0dl7q^9P65TO%KVe:(%:=IcgZNIPC/9g2NaY^H^%!R4dhc$)-2a_LPkpgR,E:r.YE1;C`!B8%^n_jQ5*$QoEeV;fN2jaU4N;m`Apq_3Ur1<>#Sb>r4?+QH,]9#rjp=^f.HEIW*IYsWFeurhQot;fEgdlEoX/gBb2-(*4PL@fB8SWt,N]!]-i6_KpfRc@b'7"&D;#@rf7kXNZ6C&mm#b.$%JZbhZ3iu'qk_iK-j^1TO%0tj>Lbqc*^I";WVI,75'hkgsHs[D3cbctJ4F/9JiEM?$8cM6"pgF),8,Y#3lPd[mICC^9L2OPE@>Oft?n*l9%ePSujBpPjDIt,G9qtE7."moT\EKEO-4N(=K6h37Aq(>2H5"EZfML
 dMRk=_6coA<>_])*Oo!AM;>VlAmLs&Fm@bN3U7:!7b6E-_oD4fVoR_:!c6^3ILF3W>NpC@:KEuY~>
+GauHM95iiK&AJ$C#^[s4+Aqcse_=ur/9]E.+%CUUHXJ,A(01s$PjHZ0n)unZ;6guiM?&L4Lu^MPb^;4B5O:9mm5D-e6f/)P_q++fNbR'o>pJ!:RQ,!(s8;8Z[L!Aucofp2hi:ojIPb?dZlMk[m:GnTk/2*.o^$@*rPC2D(trC#/&74F[8S(b?MCg4VYtXMlM'#-eLYe9.?F8UEVQ'"*/t;fYu9FoIqu[BXU/UGo#D6%mH@d#lQOsT<i:aYc*UYB'TH\hNo,HA*>:I$(_pJEn[q7cGb!h7]i#m`_M#de$2h;gh`n%bO7:rpo?UFXF#<R6KhMjGJuouZ[<VWI<`J+0$')JfncS_qa!7Ftf]lL-7?k_F(W?.fNZt'HIMa/s;U-Nh&/MgXdW0oNYW0>DKc>84cb[h@2FO-,Ynj$\Wp/qBerOC.%P,d%m_[a2=eRs`;T4G2\@U)$F(%$d&m:+QV(/_`01gFoY]%P;'i4'd1qp)14#HD%/ArK$K*DSO73lHdF*4j<AnQkR"t#<3aT4=n`s4^2MK'>/jH'B$_N6"cJteVg+r+F^7XKmXF[j]9`5)_,$P\&a3!bg],jJ<o+"DHlEZoj=$+UD*R#?q;4C]4&=C`d[-8/I&g@.p@kkKc3WSRD9+JN`*gpY7,L/&_;c'0_-(XoiuNMVK92-EC99jne#EM$Qh^K-3L&Yf5me<\,^o+(;[ST*Lqo"ir@,iVF"C.G'>#9M&5C>-pC.?&r>@14'+2S#-F+Q6BOKi.rA+;bhY/hbPs7=+*Z`6C@#nlSk*1gL,Bljm[A/r'kdb+Y%J/D>D;HEZMu$<HX<3u:4(*UFn.6AD&2,lV3q<"<</?oX<iISkrU_FP7+5/V*cWLT^V]P@u@oKsuY8Xbl7D"FC^93TlBa?mq@`drr%\.#(d&]YlLb7uAO]BkK7r=OE\@o8V-#=ChsU<'PB$2/=6\!eks+4B4K5+=AmY]Q(DlafMUbAf<lfV8ki1rVk
 Z7JPt!jUt?B+QP7]qmuu(IZ@IP$GiVrPmeMTOB2%?qg5'N1M<X*LU]rT'OWRFr,Q3iU=d(=p\dEs'/HY`VhODY')W?3YuYpb>J`dQCk?YE\K-Y-4J'Kc#\H1f*3'$rA"8X'-]*ZUP8%46*[LJ+5L^!lR3U+33L,[5&b^A56tdk?pW2S*%^mWO4kL-DRdH0lltX;ECrL_=n*`$WEl&e+9R5W+&guZ5jBZm0237MoU-^"0I8!>[GuTuXq#>l6d9>CkQ?t6a_&.3TLPnkmL'^''CbET/'%!`<Zck6eVr`qb#`qr.%1l&p8Gbmm/bl9d"Js>qNd[tPg&JD&bqfF9/<?Sd+j\YN*t1\\lqa(L8kSI?Zli!cQ@%O9KLZ<sGA*cJjTtIpdn&oq.8t8lK5KtAKLn".ZG_N^`harGaOu-&Orbt.+>'MfXg$V$cOp2BWfs0aU`tt53#D&b&B><LF%[OD)3HGo2TC@R,\\JGiuQO^]]QN.Np_k88uib6"I0-BT4_7hXO2hGLVq+%?'YYWB%tn@X6&/\QY!_)*qVC,Urp_s2J7/%imW9W$R@`4X^+;VP\hT]2i.'sZ,n+F*V\!D%@L,B/BD25\);ZufoSJ&Es*j5(6-q''CDD?7g!mI*M8qJ"Zf@^2pDiVhQkq%4!iA.Fu.nSrd7La6J`-a'r@t@c+qk^Do->q*X(7<pV_gpTQ>pjkZ/X;fABs;Znq]jRG\>1Xn$hMhf[XGZ#o5B]'_m[;;#`O=Qm:JW;%fZ<a3>=;:bK=E,m2BM63r3-.c6Nn4cMBs!4QY7Q]1gL4Vem,@Lr]5u$Es,sq"nQ63ZmLBq%GO<SL9h?CKVNp3o+EM+sg=dFO`I5W'uo-)O5Xo8Z9)OZ%+$<AjoY4I')n3%0&k4%SsN.u72L*up9*TMeJG9-@c.'77n?h`BZ1`3gceqG:8$\PFs*&u:mG*%2^#J-=_$oX)'[@e(7^>kr+DONEO>RftlBpno_`9BuALLW
 ]F^MUOb-pcn71(8(@Fii)B&9H+kpED4C?&<9f4;W.bWXGY`VR:hq4)">RBFI`fcHS4V:Y\1)j`:h~>
 endstream
 endobj
 76 0 obj
@@ -547,10 +547,10 @@
 >>
 endobj
 95 0 obj
-<< /Length 1540 /Filter [ /ASCII85Decode /FlateDecode ]
+<< /Length 1581 /Filter [ /ASCII85Decode /FlateDecode ]
  >>
 stream
-Gatm<gMZ%0&:O:SkcIDgF%&^NV'm+X2pK3.>&7t5&$9&dO_@6e=`brN:5XLJ8_F`3$5KHT/2e)Y1P`k(LRcSSPAceO5:5%;W;dqeWK2E[MB_^LV##F1K+nn9GW#6`-U1@<B,?4%5p;WpmY6%TW0-1fijYt9oacDiQ!o7g5P17Gn(3JO'K+2i]d[YI?*"E?k)F)]R[ZdkG;X;`-/jaYBCd\c!h(Tao@9]3S%&;j+i6Ad)bo7c1c_8GW1Qgl9ZMUVkE?a:*W"k"+$_d0U<<;\Q"c01I%ti`A-;3=&"NG-,0!ad!gAI5ZD))aLGa1i=nZ6,\]FJK'f[n:REqEP<(t,;$,TfcAos(oP73n51IYH(6Q^f)?SnItn+Ln!D9d:2bj&1IU=H+)R82Y/`n0UH4'(cpo1:cm/49Yr(OWP;ro@tK;1K;&[;BNoj3K2A;<YG*'#SAZOPolIJZP+P;(FU-3E:rqfr,C7Hml"Wl&Of/Ba3e2Ia(@BSd7?oC0>*EP1AunOOU'ta$+%"cZmH/6m0`\EZ9UViq]tBeOD`]dSF&O\$rt\5UPp8!,##'K!CbE\_-0gf<-gK8![`!;25L%Aa.&!"f#HR]9ns,0_((Q;pJ)klP)Fpp*U(cI@3?gH7a[2S:$'*JnQO(jLfkpBkfF'2>J5^m6Eh2)s4q;*1KoOX63%GRPVDc4NR+\qc6]*Bk2mmQ)8?_YZjthj.^cMZ@:=CeM%E18Q3-J`()og60t]_*nC%@r>,%Me?o=GXi<Eh\7+@Cj;FKR"EcXF0b^A!i0mLcs07\')]$]"gX%]0H^=(:#AUn9eeK?-XhhNrpB0K$%PQdf.#F%uU4R)(XF'h#YLH]:W9XL#J>^Tk=Mn-rjSoP10PO9B=&^,P[UM*jhkRcnYS+a-!ELLNp&>D"?a:7<<kg^8>K_6![e#C4QS@p0Mdh+S"pB-RIl6"EdEh.Z@mad"WE?\C[6b77D*KkMO'cef1G']/plYbBMqVt
 fU%q%+ed;<ZF']sN@.EM+k<!#3efkq6SPisj,4MmY>.7F4O(kSGg8*3grU9]HgJ<W",(QZUKVGT+I$CF`+*dX+Lp?qRrA=&WHK0tqrq+T"ekq*.'QnP_P!.^&]ADA^*Y'1a/l@S#QlI9MC(3?nGR`;E?"BD&D3c'd<[gQ:!7<Lg5f=7,7VXpk!`hN?`K%!(=pT/!^r8oY<<k2%Io4bTQlm=*2ck,]8l5A=]bK"#1aC<Z3VI\9\-c^[pTBbR\[$Kj4]^*%YDfS9/`&)BGJ)N'EFg6bn2>/7WO]1p*a&gG(S?U+k]S*W6:<nGhm4]Dig)h"Z5L1%LmpT*`(O)"5<OL!d2%r<B^D4ZH6fm;<)9eVNehn!]?b_5G>52??P2up?'%a8W4,GY<]2F:*uX#&0V:>l,=48af,^]m'6>(d,X+Nn`&>%[*.T&>s2ZCLcQiuLp_*n0'VuE7P#-#q'[%"rpKSN(L\>&3PP0e=`MQ(O5;K>Ss,IO"]!f9`CO%o<<TMeRUBlsj<?_Lfb0i+Mh[O8"FK6M<b,($Oht,,YkP~>
+Gatm<gMZ%0&:O:SkcIDgF%(u9V'm+X2pK3.>&7t5&$9&dZ"QX0=`PfL:5XLJ8]_U#$5KHT/2e)Y1P`k(LVq?%PAceO5:5%;WrF.gM3!$;$q']O1As@I6%T@M]LmGCP920YZO:G3&-^P?h(T?Q26u"2r+;4traE!98RiJ2e6D@R?S<2#X@.C!9hAjZ@ZuX2X\G9d_DEaIY='rL$!5nHRr<R'TrD;H?X7umH->Xj,2=EKd0)X*iY*5hqW[@cFR7%o5)Bj<cn?KZ!4llV74On39Y7CM2qk''2UKb>^mQ8g@[q!P0^H$+4=b1)@09d@^4%c<Zs4\r.WAcR2kTt&;_\H6,m\!-ld7km>]OKjc7JS"4SJ<SpVgTrr,,k#g?)X1bH,#-+^/0?T'>m\Bmea<\`<KOe=XlEP?D%=iJ#o:Z9O&tFVpe(Ec%9`nbBGJ:e9CX.5?4Y%gd\,C<0Rm&[d-6OAgG8ju05L-6KO&A@gfGCmkAcDI0YH]-fqjn4I<Y6d@3+:e5'DUgkK%b@b;/<C@tS??.!:H4oI!(WBE=N7(L*Z+%3Sj$4sZ_1:HdQ@lH"(MUG/4g&(!OH4e&(:?2&YU`?Wp+I6d6eTGsoRMd*]Uj.]Jm##(n[1SAkig2,b1(2-7-EWp-8Au#I$4*l8X%)'rbM'b389"18iOtFY:)0*mT.Yrkga<`-$YO7L%_XK86KVZUlhNil`_=*PiJK_?*=')DcB(B0U&AQrJ6MHr'Pb62V>&"%u21hS#L0*1`MEsg2Y$IeDqL;lND>h+#+ES_;LbZ+TJ^/#TFQ(XP;)W0RK,R(^Ffg5LpPm9Wc.@e+Y*JGR?+_HRO`4]O_,mVR5dYc_=6Km@^Ti=9(s]!O,b+'M8<<QsnF5E\8lNctpNKTY@P>\Zc^^L]LO&>Li`]<F<$CpeKG3[B8P;>MDT_mrK?@eO?o,@fq<EXhPeBT'.pk^t94O;C\8Vb=\H3['g>Oki8#aq.t0[<OI?Y++N?
 SY#1-GWMsP7/85HZjed<M=:5u*7o@t:,q)&TcJp3*W6-$`(s0(;X=OGO"XQZ[Bs;i)Oc$h#;JQl_Ubc1IWXDc3$9P/.>=%nK<a$o2=r#ooh@I0q:i,\69Kf:Pc(iKQE>&/"VghX(ol&t?Z0,+kDg_&PO'_^B,6XdGHc@MborVla]:6mZJ`GH3MNA71(:&6;_AYsEJ;i+5>3AJ@j9E!aOsGL,(l^Qf;2F4oVkaIsX.Pbf7jT<1"=ZUo8daaV'&M=Ai_bOWJlmQ\r2@PBN06-d,qClb4]3$:Z.a'QMFK#Z>q,)\Ab3pAPuXBKN3+]ahC[o7D)u%W7m/C-RYT['5:7Ou%f.!6ZT[Mq+U]]-*O>/0P?r5Z*^sBG>\_3"+&h1<LqYj"8C83:Uc%kj?I``6#$"*Z6m7+beTX`i<rX<0Hb(>fNj@AY=^0RXLtsi%f3pj_g.-g18oHa_@jgDlU,Y2"rku:S1E:ocA%uT;b%D>a#6)Jk)+.!:]U5_dT47Vigcnlnp7]#4UUW<n_Q[_dh[`HI`4r_]6J&R\j[L:eJ!=YoDA3-"k)kP:Z91(*`chmG.c%,Fk2FfYmVd][@1r~>
 endstream
 endobj
 96 0 obj
@@ -1206,158 +1206,158 @@
 xref
 0 153
 0000000000 65535 f 
-0000054446 00000 n 
-0000054652 00000 n 
-0000054745 00000 n 
+0000054488 00000 n 
+0000054694 00000 n 
+0000054787 00000 n 
 0000000015 00000 n 
 0000000071 00000 n 
 0000001333 00000 n 
 0000001453 00000 n 
 0000001639 00000 n 
-0000054897 00000 n 
+0000054939 00000 n 
 0000001774 00000 n 
-0000054960 00000 n 
+0000055002 00000 n 
 0000001909 00000 n 
-0000055026 00000 n 
+0000055068 00000 n 
 0000002046 00000 n 
-0000055090 00000 n 
+0000055132 00000 n 
 0000002183 00000 n 
-0000055156 00000 n 
+0000055198 00000 n 
 0000002320 00000 n 
-0000055222 00000 n 
+0000055264 00000 n 
 0000002457 00000 n 
-0000055288 00000 n 
+0000055330 00000 n 
 0000002594 00000 n 
-0000055352 00000 n 
+0000055394 00000 n 
 0000002731 00000 n 
-0000055416 00000 n 
+0000055458 00000 n 
 0000002868 00000 n 
-0000055482 00000 n 
+0000055524 00000 n 
 0000003005 00000 n 
-0000055547 00000 n 
+0000055589 00000 n 
 0000003142 00000 n 
-0000055613 00000 n 
+0000055655 00000 n 
 0000003279 00000 n 
-0000055679 00000 n 
+0000055721 00000 n 
 0000003416 00000 n 
-0000055744 00000 n 
+0000055786 00000 n 
 0000003553 00000 n 
-0000055810 00000 n 
+0000055852 00000 n 
 0000003690 00000 n 
-0000055874 00000 n 
+0000055916 00000 n 
 0000003826 00000 n 
-0000055938 00000 n 
+0000055980 00000 n 
 0000003963 00000 n 
-0000056004 00000 n 
+0000056046 00000 n 
 0000004100 00000 n 
-0000056070 00000 n 
+0000056112 00000 n 
 0000004237 00000 n 
-0000056135 00000 n 
+0000056177 00000 n 
 0000004373 00000 n 
-0000056201 00000 n 
+0000056243 00000 n 
 0000004510 00000 n 
-0000056265 00000 n 
+0000056307 00000 n 
 0000004647 00000 n 
-0000056331 00000 n 
+0000056373 00000 n 
 0000004783 00000 n 
-0000056397 00000 n 
+0000056439 00000 n 
 0000004920 00000 n 
 0000005673 00000 n 
 0000005796 00000 n 
 0000005872 00000 n 
-0000056461 00000 n 
+0000056503 00000 n 
 0000006004 00000 n 
-0000056527 00000 n 
+0000056569 00000 n 
 0000006137 00000 n 
-0000056591 00000 n 
+0000056633 00000 n 
 0000006270 00000 n 
-0000056656 00000 n 
+0000056698 00000 n 
 0000006403 00000 n 
-0000056721 00000 n 
+0000056763 00000 n 
 0000006536 00000 n 
-0000056786 00000 n 
+0000056828 00000 n 
 0000006669 00000 n 
-0000056851 00000 n 
+0000056893 00000 n 
 0000006801 00000 n 
-0000056916 00000 n 
+0000056958 00000 n 
 0000006934 00000 n 
-0000009083 00000 n 
-0000009191 00000 n 
-0000011342 00000 n 
-0000011450 00000 n 
-0000013773 00000 n 
-0000013881 00000 n 
-0000016699 00000 n 
-0000016807 00000 n 
-0000018950 00000 n 
-0000019058 00000 n 
-0000021696 00000 n 
-0000021804 00000 n 
-0000023913 00000 n 
-0000024021 00000 n 
-0000025962 00000 n 
-0000026070 00000 n 
-0000028424 00000 n 
-0000028532 00000 n 
-0000030300 00000 n 
-0000030408 00000 n 
-0000032041 00000 n 
-0000032149 00000 n 
-0000033767 00000 n 
-0000033875 00000 n 
-0000035794 00000 n 
-0000035903 00000 n 
-0000037738 00000 n 
-0000037848 00000 n 
-0000039739 00000 n 
-0000039849 00000 n 
-0000041940 00000 n 
-0000042050 00000 n 
-0000043615 00000 n 
-0000043725 00000 n 
-0000045456 00000 n 
-0000045566 00000 n 
-0000047461 00000 n 
-0000056981 00000 n 
-0000047571 00000 n 
-0000047771 00000 n 
-0000047989 00000 n 
-0000048195 00000 n 
-0000048403 00000 n 
-0000048571 00000 n 
-0000048771 00000 n 
-0000048929 00000 n 
-0000049104 00000 n 
-0000049367 00000 n 
-0000049608 00000 n 
-0000049737 00000 n 
-0000049891 00000 n 
-0000050045 00000 n 
-0000050189 00000 n 
-0000050339 00000 n 
-0000050480 00000 n 
-0000050715 00000 n 
-0000050910 00000 n 
-0000051150 00000 n 
-0000051332 00000 n 
-0000051505 00000 n 
-0000051708 00000 n 
-0000051896 00000 n 
-0000052148 00000 n 
-0000052289 00000 n 
-0000052498 00000 n 
-0000052684 00000 n 
-0000052858 00000 n 
-0000053103 00000 n 
-0000053294 00000 n 
-0000053500 00000 n 
-0000053666 00000 n 
-0000053780 00000 n 
-0000053891 00000 n 
-0000054003 00000 n 
-0000054112 00000 n 
-0000054219 00000 n 
-0000054336 00000 n 
+0000009084 00000 n 
+0000009192 00000 n 
+0000011343 00000 n 
+0000011451 00000 n 
+0000013774 00000 n 
+0000013882 00000 n 
+0000016700 00000 n 
+0000016808 00000 n 
+0000018951 00000 n 
+0000019059 00000 n 
+0000021697 00000 n 
+0000021805 00000 n 
+0000023914 00000 n 
+0000024022 00000 n 
+0000025963 00000 n 
+0000026071 00000 n 
+0000028425 00000 n 
+0000028533 00000 n 
+0000030301 00000 n 
+0000030409 00000 n 
+0000032083 00000 n 
+0000032191 00000 n 
+0000033809 00000 n 
+0000033917 00000 n 
+0000035836 00000 n 
+0000035945 00000 n 
+0000037780 00000 n 
+0000037890 00000 n 
+0000039781 00000 n 
+0000039891 00000 n 
+0000041982 00000 n 
+0000042092 00000 n 
+0000043657 00000 n 
+0000043767 00000 n 
+0000045498 00000 n 
+0000045608 00000 n 
+0000047503 00000 n 
+0000057023 00000 n 
+0000047613 00000 n 
+0000047813 00000 n 
+0000048031 00000 n 
+0000048237 00000 n 
+0000048445 00000 n 
+0000048613 00000 n 
+0000048813 00000 n 
+0000048971 00000 n 
+0000049146 00000 n 
+0000049409 00000 n 
+0000049650 00000 n 
+0000049779 00000 n 
+0000049933 00000 n 
+0000050087 00000 n 
+0000050231 00000 n 
+0000050381 00000 n 
+0000050522 00000 n 
+0000050757 00000 n 
+0000050952 00000 n 
+0000051192 00000 n 
+0000051374 00000 n 
+0000051547 00000 n 
+0000051750 00000 n 
+0000051938 00000 n 
+0000052190 00000 n 
+0000052331 00000 n 
+0000052540 00000 n 
+0000052726 00000 n 
+0000052900 00000 n 
+0000053145 00000 n 
+0000053336 00000 n 
+0000053542 00000 n 
+0000053708 00000 n 
+0000053822 00000 n 
+0000053933 00000 n 
+0000054045 00000 n 
+0000054154 00000 n 
+0000054261 00000 n 
+0000054378 00000 n 
 trailer
 <<
 /Size 153
@@ -1365,5 +1365,5 @@
 /Info 4 0 R
 >>
 startxref
-57035
+57077
 %%EOF

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/package.html
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/package.html?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/package.html (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/package.html Wed Nov 25 15:32:03 2009
@@ -140,7 +140,6 @@
       TokenStream ts = analyzer.tokenStream("myfield",new StringReader("some text goes here"));
       while (ts.incrementToken()) {
         System.out.println("token: "+ts));
-        t = ts.next();
       }
   </PRE>
 </p>

Copied: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt (from r881317, lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt)
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt?p2=lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt&p1=lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt&r1=881317&r2=884143&rev=884143&view=diff
==============================================================================
--- lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/READ_BEFORE_REGENERATING.txt Wed Nov 25 15:32:03 2009
@@ -1,3 +1,21 @@
+/*
+ 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.
+*/
+
+
 WARNING: if you change StandardTokenizerImpl.jflex and need to regenerate
       the tokenizer, only use Java 1.4 !!!
       This grammar currently uses constructs (eg :digit:, :letter:) whose 

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.java Wed Nov 25 15:32:03 2009
@@ -21,11 +21,13 @@
 
 /*
 
-NOTE: if you change this file and need to regenerate the tokenizer,
-      remember to use JRE 1.4 when running jflex (before Lucene 3.0).
-      This grammar now uses constructs (eg :digit:) whose meaning can
-      vary according to the JRE used to run jflex.  See
-      https://issues.apache.org/jira/browse/LUCENE-1126 for details
+WARNING: if you change StandardTokenizerImpl.jflex and need to regenerate
+      the tokenizer, only use Java 1.4 !!!
+      This grammar currently uses constructs (eg :digit:, :letter:) whose 
+      meaning can vary according to the JRE used to run jflex.  See
+      https://issues.apache.org/jira/browse/LUCENE-1126 for details.
+      For current backwards compatibility it is needed to support
+      only Java 1.4 - this will change in Lucene 3.1.
 
 */
 

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.jflex
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.jflex?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.jflex (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/analysis/standard/StandardTokenizerImpl.jflex Wed Nov 25 15:32:03 2009
@@ -19,12 +19,13 @@
 
 /*
 
-NOTE: if you change StandardTokenizerImpl.jflex and need to regenerate
-      the tokenizer, remember to use JRE 1.4 to run jflex (before
-      Lucene 3.0).  This grammar now uses constructs (eg :digit:,
-      :letter:) whose meaning can vary according to the JRE used to
-      run jflex.  See
+WARNING: if you change StandardTokenizerImpl.jflex and need to regenerate
+      the tokenizer, only use Java 1.4 !!!
+      This grammar currently uses constructs (eg :digit:, :letter:) whose 
+      meaning can vary according to the JRE used to run jflex.  See
       https://issues.apache.org/jira/browse/LUCENE-1126 for details.
+      For current backwards compatibility it is needed to support
+      only Java 1.4 - this will change in Lucene 3.1.
 
 */
 

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java Wed Nov 25 15:32:03 2009
@@ -93,9 +93,20 @@
   public void clearTotalNumberOfTerms() {
     query.clearTotalNumberOfTerms();
   }
-
-  abstract class TermGenerator {
-    public void generate(IndexReader reader, TermEnum enumerator) throws IOException {
+  
+  /**
+   * Returns a DocIdSet with documents that should be
+   * permitted in search results.
+   */
+  @Override
+  public DocIdSet getDocIdSet(IndexReader reader) throws IOException {
+    final TermEnum enumerator = query.getEnum(reader);
+    try {
+      // if current term in enum is null, the enum is empty -> shortcut
+      if (enumerator.term() == null)
+        return DocIdSet.EMPTY_DOCIDSET;
+      // else fill into a OpenBitSet
+      final OpenBitSet bitSet = new OpenBitSet(reader.maxDoc());
       final int[] docs = new int[32];
       final int[] freqs = new int[32];
       TermDocs termDocs = reader.termDocs();
@@ -111,7 +122,7 @@
             final int count = termDocs.read(docs, freqs);
             if (count != 0) {
               for(int i=0;i<count;i++) {
-                handleDoc(docs[i]);
+                bitSet.set(docs[i]);
               }
             } else {
               break;
@@ -124,29 +135,6 @@
       } finally {
         termDocs.close();
       }
-    }
-    abstract public void handleDoc(int doc);
-  }
-  
-  /**
-   * Returns a DocIdSet with documents that should be
-   * permitted in search results.
-   */
-  @Override
-  public DocIdSet getDocIdSet(IndexReader reader) throws IOException {
-    final TermEnum enumerator = query.getEnum(reader);
-    try {
-      // if current term in enum is null, the enum is empty -> shortcut
-      if (enumerator.term() == null)
-        return DocIdSet.EMPTY_DOCIDSET;
-      // else fill into a OpenBitSet
-      final OpenBitSet bitSet = new OpenBitSet(reader.maxDoc());
-      new TermGenerator() {
-        @Override
-        public void handleDoc(int doc) {
-          bitSet.set(doc);
-        }
-      }.generate(reader, enumerator);
       return bitSet;
     } finally {
       enumerator.close();

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -0,0 +1,5 @@
+/lucene/java/branches/lucene_2_4/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:748824
+/lucene/java/branches/lucene_2_9/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:817269-818600,825998,829134,829881,831036
+/lucene/java/branches/lucene_2_9_back_compat_tests/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:818601-821336
+/lucene/java/branches/lucene_3_0/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/src/java/org/apache/lucene/search/MultiTermQueryWrapperFilter.java:881213,881315,881466,881819,881984,882374,882807,882888,882977,883074-883075

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/NumericRangeQuery.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/NumericRangeQuery.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/NumericRangeQuery.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/NumericRangeQuery.java Wed Nov 25 15:32:03 2009
@@ -27,6 +27,7 @@
 import org.apache.lucene.util.StringHelper;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.Term;
+import org.apache.lucene.index.TermEnum;
 
 /**
  * <p>A {@link Query} that matches numeric values within a
@@ -389,6 +390,7 @@
 
     private final IndexReader reader;
     private final LinkedList<String> rangeBounds = new LinkedList<String>();
+    private final Term termTemplate = new Term(field);
     private String currentUpperBound = null;
 
     NumericRangeTermEnum(final IndexReader reader) throws IOException {
@@ -482,10 +484,15 @@
     /** this is a dummy, it is not used by this class. */
     @Override
     protected boolean endEnum() {
-      assert false; // should never be called
-      return (currentTerm != null);
+      throw new UnsupportedOperationException("not implemented");
     }
 
+    /** this is a dummy, it is not used by this class. */
+    @Override
+    protected void setEnum(TermEnum tenum) {
+      throw new UnsupportedOperationException("not implemented");
+    }
+    
     /**
      * Compares if current upper bound is reached,
      * this also updates the term count for statistics.
@@ -504,29 +511,38 @@
       // if a current term exists, the actual enum is initialized:
       // try change to next term, if no such term exists, fall-through
       if (currentTerm != null) {
-        assert actualEnum!=null;
+        assert actualEnum != null;
         if (actualEnum.next()) {
           currentTerm = actualEnum.term();
-          if (termCompare(currentTerm)) return true;
+          if (termCompare(currentTerm))
+            return true;
         }
       }
+      
       // if all above fails, we go forward to the next enum,
       // if one is available
       currentTerm = null;
-      if (rangeBounds.size() < 2) return false;
-      // close the current enum and read next bounds
-      if (actualEnum != null) {
-        actualEnum.close();
-        actualEnum = null;
+      while (rangeBounds.size() >= 2) {
+        assert rangeBounds.size() % 2 == 0;
+        // close the current enum and read next bounds
+        if (actualEnum != null) {
+          actualEnum.close();
+          actualEnum = null;
+        }
+        final String lowerBound = rangeBounds.removeFirst();
+        this.currentUpperBound = rangeBounds.removeFirst();
+        // create a new enum
+        actualEnum = reader.terms(termTemplate.createTerm(lowerBound));
+        currentTerm = actualEnum.term();
+        if (currentTerm != null && termCompare(currentTerm))
+          return true;
+        // clear the current term for next iteration
+        currentTerm = null;
       }
-      final String lowerBound = rangeBounds.removeFirst();
-      this.currentUpperBound = rangeBounds.removeFirst();
-      // this call recursively uses next(), if no valid term in
-      // next enum found.
-      // if this behavior is changed/modified in the superclass,
-      // this enum will not work anymore!
-      setEnum(reader.terms(new Term(field, lowerBound)));
-      return (currentTerm != null);
+      
+      // no more sub-range enums available
+      assert rangeBounds.size() == 0 && currentTerm == null;
+      return false;
     }
 
     /** Closes the enumeration to further activity, freeing resources.  */

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/function/CustomScoreQuery.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/function/CustomScoreQuery.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/function/CustomScoreQuery.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/search/function/CustomScoreQuery.java Wed Nov 25 15:32:03 2009
@@ -349,7 +349,7 @@
     @Override
     public Explanation explain(IndexReader reader, int doc) throws IOException {
       Explanation explain = doExplain(reader, doc);
-      return explain == null ? new Explanation(0.0f, "no matching docs") : doExplain(reader, doc);
+      return explain == null ? new Explanation(0.0f, "no matching docs") : explain;
     }
     
     private Explanation doExplain(IndexReader reader, int doc) throws IOException {

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/AttributeSource.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/AttributeSource.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/AttributeSource.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/AttributeSource.java Wed Nov 25 15:32:03 2009
@@ -224,6 +224,12 @@
   public <A extends Attribute> A addAttribute(Class<A> attClass) {
     AttributeImpl attImpl = attributes.get(attClass);
     if (attImpl == null) {
+      if (!(attClass.isInterface() && Attribute.class.isAssignableFrom(attClass))) {
+        throw new IllegalArgumentException(
+          "addAttribute() only accepts an interface that extends Attribute, but " +
+          attClass.getName() + " does not fulfil this contract."
+        );
+      }
       addAttributeImpl(attImpl = this.factory.createAttributeInstance(attClass));
     }
     return attClass.cast(attImpl);

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/Version.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/Version.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/Version.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/java/org/apache/lucene/util/Version.java Wed Nov 25 15:32:03 2009
@@ -21,6 +21,11 @@
 /**
  * Use by certain classes to match version compatibility
  * across releases of Lucene.
+ * 
+ * <p><b>WARNING</b>: When changing the version parameter
+ * that you supply to components in Lucene, do not simply
+ * change the version at search-time, but instead also adjust
+ * your indexing code to match, and re-index.
  */
 public enum Version {
 

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFancyStyle.css
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFancyStyle.css?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFancyStyle.css (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFancyStyle.css Wed Nov 25 15:32:03 2009
@@ -24,6 +24,11 @@
   color: purple; 
 }
 
+li.bulleted-list {
+  margin-top: 0.25em;
+  margin-bottom: 0.25em;
+}
+
 li {
   margin-top: 1em;
   margin-bottom: 1em;

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFixedWidthStyle.css
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFixedWidthStyle.css?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFixedWidthStyle.css (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesFixedWidthStyle.css Wed Nov 25 15:32:03 2009
@@ -26,6 +26,11 @@
   color: purple; 
 }
 
+li.bulleted-list {
+  margin-top: 0.25em;
+  margin-bottom: 0.25em;
+}
+
 li {
   margin-top: 1em;
   margin-bottom: 1em;

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesSimpleStyle.css
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesSimpleStyle.css?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesSimpleStyle.css (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/ChangesSimpleStyle.css Wed Nov 25 15:32:03 2009
@@ -1,3 +1,8 @@
+li.bulleted-list {
+  margin-top: 0.25em;
+  margin-bottom: 0.25em;
+}
+
 li {
   margin-top: 1em;
   margin-bottom: 1em;

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/changes2html.pl
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/changes2html.pl?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/changes2html.pl (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/changes/changes2html.pl Wed Nov 25 15:32:03 2009
@@ -219,8 +219,12 @@
 
     function collapseAll() {
       var unorderedLists = document.getElementsByTagName("ul");
-      for (var i = 0; i < unorderedLists.length; i++)
-        unorderedLists[i].style.display = "none";
+      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"; 
@@ -285,6 +289,7 @@
          */
         if (list.id != '$first_relid.list' 
             && list.id != '$second_relid.list'
+            && list.className != 'bulleted-list'
             && (currentAnchor == ''
                 || ! shouldExpand(currentList, currentAnchor, list.id))) {
           list.style.display = "none";
@@ -392,7 +397,7 @@
       # Put attributions on their own lines.
       # Check for trailing parenthesized attribution with no following period.
       # Exclude things like "(see #3 above)" and "(use the bug number instead of xxxx)" 
-      unless ($item =~ s:\s*(\((?!see #|use the bug number)[^)"]+?\))\s*$:<br /><span class="attrib">$1</span>:) {
+      unless ($item =~ s:\s*(\((?!see #|use the bug number)[^)"]+?\))\s*$:\n<br /><span class="attrib">$1</span>:) {
         # If attribution is not found, then look for attribution with a
         # trailing period, but try not to include trailing parenthesized things
         # that are not attributions.
@@ -412,12 +417,45 @@
                       my ($no_parens) = $parenthetical =~ /^\((.*)\)$/s;
                       my @words = grep {/\S/} split /\s+/, $no_parens;
                       if ($no_parens =~ /\b(?:via|updates\s+from)\b/i || scalar(@words) <= 3) {
-                        $subst = "<br /><span class=\"attrib\">$parenthetical</span>";
+                        $subst = "\n<br /><span class=\"attrib\">$parenthetical</span>";
                       }
                     }
                     $subst . $trailing_period_and_or_issue;
                   }ex;
       }
+
+      $item =~ s{(.*?)(<code><pre>.*?</pre></code>)|(.*)}
+                {
+                  my $uncode = undef;
+                  if (defined($2)) {
+                    $uncode = $1 || '';
+                    $uncode =~ s{((?<=\n)[ ]*-.*\n(?:.*\n)*)}
+                                {
+                                  my $bulleted_list = $1;
+                                  $bulleted_list 
+                                    =~ s{(?:(?<=\n)|\A)[ ]*-[ ]*(.*(?:\n|\z)(?:[ ]+[^ -].*(?:\n|\z))*)}
+                                        {<li class="bulleted-list">\n$1</li>\n}g;
+                                  $bulleted_list
+                                    =~ s!(<li.*</li>\n)!<ul class="bulleted-list">\n$1</ul>\n!s;
+                                  $bulleted_list;
+                                }ge;
+                    "$uncode$2";
+                  } else {
+                    $uncode = $3 || '';
+                    $uncode =~ s{((?<=\n)[ ]*-.*\n(?:.*\n)*)}
+                                {
+                                  my $bulleted_list = $1;
+                                  $bulleted_list 
+                                    =~ s{(?:(?<=\n)|\A)[ ]*-[ ]*(.*(?:\n|\z)(?:[ ]+[^ -].*(?:\n|\z))*)}
+                                        {<li class="bulleted-list">\n$1</li>\n}g;
+                                  $bulleted_list
+                                    =~ s!(<li.*</li>\n)!<ul class="bulleted-list">\n$1</ul>\n!s;
+                                  $bulleted_list;
+                                }ge;
+                    $uncode;
+                  }
+                }sge;
+
       $item =~ s:\n{2,}:\n<p/>\n:g;                   # Keep paragraph breaks
       # Link LUCENE-XXX, SOLR-XXX and INFRA-XXX to JIRA
       $item =~ s{(?:${jira_url_prefix})?((?:LUCENE|SOLR|INFRA)-\d+)}

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/src/documentation/content/xdocs/fileformats.xml
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/src/documentation/content/xdocs/fileformats.xml?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/src/documentation/content/xdocs/fileformats.xml (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/site/src/documentation/content/xdocs/fileformats.xml Wed Nov 25 15:32:03 2009
@@ -12,7 +12,7 @@
 
             <p>
                 This document defines the index file formats used
-                in Lucene version 2.9. If you are using a different
+                in Lucene version 3.0. If you are using a different
                 version of Lucene, please consult the copy of
                 <code>docs/fileformats.html</code>
                 that was distributed
@@ -27,7 +27,7 @@
                 languages</a>.  If these versions are to remain compatible with Apache
                 Lucene, then a language-independent definition of the Lucene index
                 format is required.  This document thus attempts to provide a
-                complete and independent definition of the Apache Lucene 2.9 file
+                complete and independent definition of the Apache Lucene 3.0 file
                 formats.
             </p>
 
@@ -1259,7 +1259,8 @@
                                 <li>low order bit is one for tokenized fields</li>
                                 <li>second bit is one for fields containing binary data</li>
                                 <li>third bit is one for fields with compression option enabled
-                                    (if compression is enabled, the algorithm used is ZLIB)</li>
+                                    (if compression is enabled, the algorithm used is ZLIB),
+                                    only available for indexes until Lucene version 2.9.x</li>
                             </ul>
                         </p>
                         <p>Value --&gt;

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,2 +1,4 @@
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:825998,829134,829881,831036
+/lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/src/test/org/apache/lucene/analysis/TestISOLatin1AccentFilter.java:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/document/TestDateTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,2 +1,4 @@
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/document/TestDateTools.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestDateTools.java:825998,829134,829881,831036
+/lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/document/TestDateTools.java:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/src/test/org/apache/lucene/document/TestDateTools.java:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/document/TestNumberTools.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,2 +1,4 @@
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/document/TestNumberTools.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/document/TestNumberTools.java:825998,829134,829881,831036
+/lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/document/TestNumberTools.java:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/src/test/org/apache/lucene/document/TestNumberTools.java:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -1,2 +1,4 @@
 /lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:748824
 /lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:825998,829134,829881,831036
+/lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/src/test/org/apache/lucene/index/TestBackwardsCompatibility.java:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/search/TestNumericRangeQuery32.java Wed Nov 25 15:32:03 2009
@@ -25,6 +25,7 @@
 import org.apache.lucene.document.NumericField;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.index.IndexWriter.MaxFieldLength;
+import org.apache.lucene.index.Term;
 import org.apache.lucene.store.RAMDirectory;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util.NumericUtils;
@@ -437,4 +438,37 @@
     assertFalse(q2.equals(q1));
   }
   
+  private void testEnum(int lower, int upper) throws Exception {
+    NumericRangeQuery<Integer> q = NumericRangeQuery.newIntRange("field4", 4, lower, upper, true, true);
+    FilteredTermEnum termEnum = q.getEnum(searcher.getIndexReader());
+    try {
+      int count = 0;
+      do {
+        final Term t = termEnum.term();
+        if (t != null) {
+          final int val = NumericUtils.prefixCodedToInt(t.text());
+          assertTrue("value not in bounds", val >= lower && val <= upper);
+          count++;
+        } else break;
+      } while (termEnum.next());
+      assertFalse(termEnum.next());
+      System.out.println("TermEnum on 'field4' for range [" + lower + "," + upper + "] contained " + count + " terms.");
+    } finally {
+      termEnum.close();
+    }
+  }
+  
+  public void testEnum() throws Exception {
+    int count=3000;
+    int lower=(distance*3/2)+startOffset, upper=lower + count*distance + (distance/3);
+    // test enum with values
+    testEnum(lower, upper);
+    // test empty enum
+    testEnum(upper, lower);
+    // test empty enum outside of bounds
+    lower = distance*noDocs+startOffset;
+    upper = 2 * lower;
+    testEnum(lower, upper);
+  }
+  
 }

Modified: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java
URL: http://svn.apache.org/viewvc/lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java?rev=884143&r1=884142&r2=884143&view=diff
==============================================================================
--- lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java (original)
+++ lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java Wed Nov 25 15:32:03 2009
@@ -141,4 +141,26 @@
     assertTrue("TypeAttribute is not implemented by TypeAttributeImpl",
       src.addAttribute(TypeAttribute.class) instanceof TypeAttributeImpl);
   }
+  
+  @SuppressWarnings("unchecked")
+  public void testInvalidArguments() throws Exception {
+    try {
+      AttributeSource src = new AttributeSource();
+      src.addAttribute(Token.class);
+      fail("Should throw IllegalArgumentException");
+    } catch (IllegalArgumentException iae) {}
+    
+    try {
+      AttributeSource src = new AttributeSource(Token.TOKEN_ATTRIBUTE_FACTORY);
+      src.addAttribute(Token.class);
+      fail("Should throw IllegalArgumentException");
+    } catch (IllegalArgumentException iae) {}
+    
+    try {
+      AttributeSource src = new AttributeSource();
+      // break this by unsafe cast
+      src.addAttribute((Class) Iterator.class);
+      fail("Should throw IllegalArgumentException");
+    } catch (IllegalArgumentException iae) {}
+  }
 }

Propchange: lucene/java/branches/flex_1458_3_0_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Wed Nov 25 15:32:03 2009
@@ -0,0 +1,5 @@
+/lucene/java/branches/lucene_2_4/src/test/org/apache/lucene/util/TestAttributeSource.java:748824
+/lucene/java/branches/lucene_2_9/src/test/org/apache/lucene/util/TestAttributeSource.java:817269-818600,825998,829134,829881,831036
+/lucene/java/branches/lucene_2_9_back_compat_tests/src/test/org/apache/lucene/util/TestAttributeSource.java:818601-821336
+/lucene/java/branches/lucene_3_0/src/test/org/apache/lucene/util/TestAttributeSource.java:880754,880793,880823,881216,881317,881376,881473,881549,881820,882467,882890,883076,883080
+/lucene/java/trunk/src/test/org/apache/lucene/util/TestAttributeSource.java:881213,881315,881466,881819,882374,882807,882888,882977,883074-883075,883079



Mime
View raw message