Date: 2004-08-11T12:56:58
   Editor: DanielNaber <[EMAIL PROTECTED]>
   Wiki: Jakarta Lucene Wiki
   Page: Lucene2Whiteboard
   URL: http://wiki.apache.org/jakarta-lucene/Lucene2Whiteboard

   divide into compatible and non-compatible changes

Change Log:

------------------------------------------------------------------------------
@@ -1,6 +1,6 @@
 = Lucene 2.0 =
 
-Release 2.0 will primarily make incompatible API improvements.  New, back-compatible 
features can be easily added in point releases, and should not be listed here.
+Release 2.0 will primarily make incompatible API improvements.
 
 == Release Migration Plan ==
 
@@ -16,21 +16,26 @@
 
  4. Rename PhrasePrefixQuery to be something like MultiPhraseQuery.  Also make 
MultipleTermPositions a private nested class of this, as this is the only place 
MultipleTermPositions is used.
 
- 5. Rename InputSteam to IndexInput and OutputStream to IndexOutput. Also make both 
of these interfaces and add BufferedIndexInput and BufferedIndexOutput as the 
implementation used by FSDirectory, RAMDirectory, etc.  This would permit unbuffered 
and native implementations (e.g., that use mmap) that could potentially speed things 
considerably.
+ 5. Rename InputStream to IndexInput and OutputStream to IndexOutput. Also make both 
of these interfaces and add BufferedIndexInput and BufferedIndexOutput as the 
implementation used by FSDirectory, RAMDirectory, etc.  This would permit unbuffered 
and native implementations (e.g., that use mmap) that could potentially speed things 
considerably.
 
  6. Replace DateField with something that formats dates suitably for RangeQuery.
 
  7. Move language-specific analyzers into separate downloads? Also move 
analysis/de/WordlistLoader.java one level upwards, as it's not specific to German at 
all.
 
- 8. Add support for span queries to query parser?
+ 8. Remove public PrintStream infoStream from IndexWriter and System.out.println() 
from TermVectorsReader. Instead use some kind of Logger which is customizable thru the 
API to print debug, error and warning messages within lucene. The logger must not be 
an external library like log4j, it could be a small implementation directly in lucene 
to avoid references to external packages.
 
- 9. Implement an option for error handling described on  the mailing list: 
[http://www.mail-archive.com/[EMAIL PROTECTED]/msg04050.html message]
+ 9. Add a non-static method isCurrent() to IndexReader and remove static 
getCurrentVersion() and lastModified methods: [http://www.mail-archive.com/[EMAIL 
PROTECTED]/msg06143.html]
 
- 10. Add a non-static method isCurrent() to IndexReader and remove static 
getCurrentVersion() and lastModified methods: [http://www.mail-archive.com/[EMAIL 
PROTECTED]/msg06143.html]
 
- 11. Remove public PrintStream infoStream from IndexWriter and System.out.println() 
from TermVectorsReader. Instead use some kind of Logger which is customizable thru the 
API to print debug, error and warning messages within lucene. The logger must not be 
an external library like log4j, it could be a small implementation directly in lucene 
to avoid references to external packages.
+== Other Changes ==
 
- 12. Implement a callback interface for processes which can run for several minutes 
like IndexWriter.optimize(). The idea is to define a simple public interface which can 
be implemented by developers using lucene. The object implementing the callback, could 
be passed to methods like optimize() and can inform the caller when one of the steps 
to process has finished. This would make it much easier in interactive applications to 
inform the user that the system is working and not frozen.
+Here's a list of planned changes that either don't affect the API or that can be 
implemented in an API compatible way:
+
+ 1. Add support for span queries to query parser?
+
+ 2. Implement an option for error handling described on  the mailing list: 
[http://www.mail-archive.com/[EMAIL PROTECTED]/msg04050.html message]
+
+ 3. Implement a callback interface for processes which can run for several minutes 
like IndexWriter.optimize(). The idea is to define a simple public interface which can 
be implemented by developers using lucene. The object implementing the callback, could 
be passed to methods like optimize() and can inform the caller when one of the steps 
to process has finished. This would make it much easier in interactive applications to 
inform the user that the system is working and not frozen.
 
 == Schedule ==
 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to