Apache Lucene.Net History ------------------------- 24Jul09: -Release: Apache Lucene.Net.2.3.2 build 001 "final" -Fix: LUCENENET-175 Add FIPS compliance to lucene.net -Fix: LUCENENET-182 Public fields of StringIndex class should have C# like names -Fix: LUCENENET-183 SegmentTermVector IndexOf method always fails -Port: LUCENENET-184 Port of org.apache.lucene.analysis.br to C# - analyser, stemfilter and stemmer 19Mar09: -Release: Apache Lucene.Net.2.3.1 build 003 "final" -Fix: LUCENENET-106 (Lucene.NET is leaking memory) -Fix: LUCENENET-116: Ambiguous name "text" in term class when in VB.NET -Fix: LUCENENET-117: Bug in Lucene.Net.Index.DocumentsWriter.AppendPostings when compiled in release-mode -Fix: LUCENENET-121: StopFilter tries to access the i'th item of a hashtable as item[i] where i is not a key. -Fix: LUCENENET-122: Bug in function "SupportClass.Number.ToString(long number)" -Fix: LUCENENET-128: 2 bugs in BooleanScorer2 -Fix: LUCENENET-129 "Test case TestDateSort.TestReverseDateSort fails" -Fix: LUCENENET-130 "bug in unit test helper class Lucene.Net.Search.CheckHits" -Fix: LUCENENET-131 "bugs in TestIndexWriter test cases" -Fix: LUCENENET-132 "bug in DocumentsWriter.BalanceRAM()" -Fix: LUCENENET-133 "bug in IndexWriter.RegisterMerge()" -Fix: LUCENENET-134 "broken test cases in unit test class TestIndexWriterDelete.cs" -Fix: LUCENENET-138 "IndexReader.IndexExists() always returns false" -Fix: LUCENENET-139 "Bugs in test codes (remote searching) stemming from opening the same port twice or registering an already registered http channel" -Fix: LUCENENET-140 "System.Single.Parse --> SupportClass.Single.Parse" -Fix: TestStressIndexing2.patch of LUCENENET-143 (NUnit test for Index/TestStressIndexing2) -Fix: LUCENENET-146 (BUG in segmenttermpositionvector.cs (similar to LUCENENET-145)) -Fix: LUCENENET-150 (DocumentsWriter.ReusableStringReader does not implement some methods of StringReader) -Fix: LUCENENET-151 (Bug in Lucene.Net.Search.MultiPhraseQuery.ExtractTerms(System.Collections.Hashtable terms)) -Fix: LUCENENET-152 (Nunit test for TestStressIndexAndSearching & TestStressLocks) -Fix: LUCENENET-154 (Lucene.Net.Index.TestIndexWriterLockRelease: Unit test fails in tear down if directory does not exist) -Fix: LUCENENET-155 (SetUp bug in 3 unit tests) -Fix: LUCENENET-157 (SegmentMerger.AddIndexed expects *Reader.GetFieldNames to return a 1-dimensional ICollection) -Fix: LUCENENET-158 (TestSpanNearOrdered02 - TestSpanNearOrdered05 fail) -Fix: LUCENENET-159 (Lucene.Net.Search.Spans.SpanOrQuery) -Fix: LUCENENET-160 (A small performance improvement in ExtendedFieldCacheImpl) -Fix: LUCENENET-163 (Platform dependent path handling) -Fix: LUCENENET-168 Sporadic failures in TestRemoteSearchable.cs -Fix: LUCENENET-170 (BooleanClause serialization fails owing to issues with serializing Occur object) -Fix: LUCENENET-174 RAMDirectory Not Correctly Serializing 15Jul08: - Release: Apache Lucene.Net.2.3.1 build 002 "Beta" - Port: Prted the "Test" code from Java to C#. - Fix: A number of issues in Lucene.Net Core code -- Thanks to Doug Sale - Fix: A number of issues in Lucene.Net Test code -- Thanks to Doug Sale 24Jun08: - Dev Release: Apache Lucene.Net.2.3.1 build 001 "Alpha" - Port: Prted the "Core" and "Demo" code from Java to C#. - Issues: Test code is not released yet. - Note: Requires Visual Studio 2005 or later and .NET 2.0 or later. - Note: There is no 2.3.0 or 2.2 release (to correspond with the Java Lucene release). 10Dec07: - Release: Apache Lucene.Net.2.1 build 003 "Release Candidate" - Fix: LUCENENET-55 "Documents.DateTools has issue creating a Date in StringToDate()" - Fix: LUCENENET-56 "Incorrect file in TestLockFactory.RmDir()" - Fix: LUCENENET-57 "DocHelper in Tests not creating UTF8 Cleanly" - Fix: LUCENENET-58 "Issue in CheckHits c# doesn't perform an Assert against a hashtable" - Fix: LUCENENET-59 "QueryUtils has some invalid Asserts" - Fix: LUCENENET-61 "Issue testing Backwards Compatibility" - Fix: LUCENENET-62 "IndexReader.IndexExists() Fails if directory doesn't exists." - Fix: LUCENENET-63 "FieldCacheImpl tries to parse a float in f format" - Fix: LUCENENET-64 "TestDateFilter incorrectly gets total milliseconds" - Fix: LUCENENET-65 "Test case "TestSerializable" uses the stream after closing" - Fix: LUCENENET-66 "TestMergeAfterCopy fails in IndexFileDeleter" - Fix: LUCENENET-67 "Bug in TestIndexWriter.TestAddIndexOnDiskFull" - Fix: LUCENENET-68 "Bug in TestIndexWriterDelete.TestOperationsOnDiskFull" - Fix: LUCENENET-69 "FSIndexInput.isFDValid() not ported correctly" - Fix: LUCENENET-70 "TestParallelReader.TestDocument fails because of bug in "ParallelReader.Document(int n, FieldSelector fieldSelector)" method" - Fix: LUCENENET-71 "TestParallelTermEnum.Test1 fails because of bug in "ParallelReader.Next" method" - Fix: LUCENENET-72 "TestIndexReader bugs" - Fix: LUCENENET-73 "TestDoc.cs --> access to a closed stream" - Fix: LUCENENET-74 "SimpleFSLockFactory can not obtain lock correctly." - Fix: LUCENENET-75 "FSDirectory does not correctly handle directory cache "DIRECTORIES"" - Fix: LUCENENET-76 "DisjunctionMaxQuery has unnecessary clone which causes it to fail unit tests" - Fix: LUCENENET-77 "Bug in TestBinaryDocument.cs" - Fix: LUCENENET-81 "TestTermVectorsWriter.cs bug" - Fix: LUCENENET-82 "NUnite test for TestSimpleExplanations" - Fix: LUCENENET-83 "NUnite test for TestComplexExplanations" - Fix: LUCENENET-84 "Nunit test for TestMultiFieldQueryParser" - Fix: LUCENENET-85 "SupportClass.Parse and System.Globalization.CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator" - Fix: LUCENENET-87 "NUnite test for TestQueryParser" - Fix: LUCENENET-88 "NUnit test for TestQueryParser -2" - Fix: LUCENENET-89 "NUnit test for TestQueryParser -3" - Fix: LUCENENET-90 "Nunit test for TestIndexModifier.TestIndex" - Fix: LUCENENET-91 "NUnit test for TestQueryParser.TestStarParsing" - Fix: LUCENENET-92 "NUnite test for QueryParser.TestMultiAnalyzer." - Fix: LUCENENET-93 "NUnite test for Search.TestRemoteSearchable" - Fix: LUCENENET-94 "NUnit test for Search.TestSort (RemoteSearchable issues)" (only TestSort.patch applied) - Fix: LUCENENET-96 "NUnit test for Lucene.Net.Store.TestLockFactory.TestLockClassProperty" - Fix: LUCENENET-101 "Using incorrect base when opening index" - Fix: LUCENENET-100 "Problem with remoting of IComparable[] in FieldDoc.cs" - Fix: LUCENENET-104 "Name of first index segment is empty string" 11Aug07: - Release: Apache Lucene.Net.2.1 build 002 "Beta" - Port: Ported the "Test" code from Java to C# - Fix: LUCENENET-47: "Make up for Constansts.cs" - Fix: LUCENENET-48 "Clone method of SegmentInfos.cs does'nt copy local fields/variables." - Fix: LUCENENET-50 "Improvement for FSDirectory." - Fix: LUCENENET-52 "IndexFileDeleter in svn trunk" - Fix: LUCENENET-53 "SegmentsInfos.GetCurrentSegmentGeneration works incorrectly" - Issues: A number of NUnit tests are failing. 01May07: - Dev Release: Apache Lucene.Net.2.1 build 001 "early-Alpha" - Issues: Optimizing an index will cause an exception. - Issues: The "Test" code has not yet be ported for this release. - Issues: Code in "contrib" have not been validated to work with this release. 30Apr07: - Patch: Apache Lucene.Net.2.0 build 005 "final" - Fix: LUCENENET-37 "Exception while search in Lucene.Net and Index prepared by Lucene Java" 11Mar07: - Release: Apache Lucene.Net.2.0 build 004 "final" - Fix: LUCENENET-36 "Countries using "," as decimal separator gets an exception in QueryParser.cs with a query like color~0.5" - Fix: LUCENENET-35 "Tokenizer.Close should check if input is null" - Fix: LUCENENET-33 "Frequent exceptions at Single Parse(String s)" - Fix: LUCENENET-32 "Check hashtable in PhraseQuery.ExtractTerms for existing keys" - Fix: LUCENENET-31 "elimate exception when casting TermFreqVector" - Fix: LUCENENET-30 "Unnecessary boxing of bytes" 27Dec06: - Release: Apache Lucene.Net.2.0 build 003 "final" - Fix: Lucene.Net.Search.TestSort.TestInternationalMultiSearcherSort -- NUnit test now passes - Fix: Lucene.Net.Search.TestSort.TestInternationalSort -- NUnit test now passes 27Nov06: - Release: Apache Lucene.Net.2.0 build 002 "Beta" - Lucene.Net.Demo.SearchFiles.cs -- ported new code - Lucene.Net.Index.SegmentReader.Get() -- changed Exception to SystemException - Lucene.Net.Search.StringIndex.cs -- added a Close() method (to fix sort memory leak defect) - Lucene.Net.Search.FieldCacheImpl.cs -- added a Close() method (to fix sort memory leak defect) - Lucene.Net.Search.FieldSortHitQueue.cs -- added a Close() method (to fix sort memory leak defect) - Lucene.Net.Search.IndexSearcher.cs -- added a Close() method (to fix sort memory leak defect) - Lucene.Net.Search.MatchAllDocsQuery.Clone() -- removed this unused methods - Lucene.Net.Search.MultiPhraseQuery.Clone() -- removed this unused methods - Lucene.Net.Search.PrefixQuery.Clone() -- removed this unused methods - Lucene.Net.Search.RangeQuery.Clone() -- removed this unused methods - Lucene.Net.Index.FieldInfos.FieldName()/FieldInfo() -- avoid the use of exception throwing - Issues: Lucene.Net.Search.TestSort.TestInternationalMultiSearcherSort -- NUnit test FAILS - Issues: Lucene.Net.Search.TestSort.TestInternationalSort -- NUnit test FAILS 17Aug06: - Release: Apache Lucene.Net.2.0 build 001 "Alpha" 13Jul06: - Release: Apache Lucene.Net.1.9.1 build 001 - Port: Lucene.Net.Documents.TimeToString() -- re-based with the Java version - Port: Lucene.Net.Index.IndexWriter.SetMaxBufferedDocs() -- re-based with the Java version - Port: Lucene.Net.Store.BufferedIndexOutput.WriteBytes() -- re-based with the Java version - Port: Lucene.Net.Store.RAMOutputStream.FlushBuffer() -- re-based with the Java version - Port: Lucene.Net.Demo.* -- re-based with the Java version - Port: Test.Lucene.Net.Index.TestCompoundFile.TestLargeWrites() -- new test case added - Port: Test.Lucene.Net.StoreTest.Test() -- re-based with the Java version 09Jul06: - Release: Apache Lucene.Net.1.9 RC1 build 005 "final" - Fix: Lucene.Net.Search.MultiPhraseQuery.ToString() -- was skipping one too many item during the iteration - Fix: Lucene.Net.Index.ParallelReader.GetFieldNames() -- was adding the object instead of the dictionary value - Fix: Lucene.Net.Index.ParallelReader.Add() -- was adding the object instead of the dictionary value - Fix: Lucene.Net.Store.Obtain() -- changed name from obtain() to Obtain() (lower case to upper case) - Fix: Lucene.Net.Index.SegmentReader.~SegmentReader() -- removed: System.Threading.Thread.SetData() - Fix: Lucene.Net.Index.TermInfosReader.~TermInfosReader() -- removed: System.Threading.Thread.SetData() - Fix: Lucene.Net.Documents.DateField.DATE_LEN -- must use SupportClass.Number.ToString() to get the length - Fix: Lucene.Net.Util.ToStringUtils.Boost() -- wasn't adding ".0" when the value doesn't have a remainder - Fix: Lucene.Net.Index.SegmentReader.CreateFakeNorms() -- was returning the wrong data member - Fix: Lucene.Net.Documents.NumberTools -- value of MIN_STRING_VALUE and MAX_STRING_VALUE were wrong - Fix: Test.Lucene.Net.Analysis.TestISOLatin1AccentFilter.TestU() -- file was not saved as unicode; thanks to Ben Tregenna - Fix: Test.Lucene.Net.TestSearchForDuplicates.TestRun() -- wasn't using MemoryStream correctly - Fix: Test.Lucene.Net.TestSearch.TestSearch_Renamed_Method() -- wasn't using MemoryStream correctly - Fix: Test.Lucene.Net.* -- replaced "[TestFixtureSetUp]" to "[SetUp]" and "[FixtureTearDown]" to "[TearDown]" - Fix: Test.Lucene.Net.Index.TestParallelReader -- was comparing objects instead of the dictionary value - Fix: Test.Lucene.Net.Index.TestSegmentReader -- was comparing objects instead of the dictionary value - Fix: Test.Lucene.Net.Index.TestTermVectorWriter -- was not calling InitBloc() - Fix: Test.Lucene.Net.Analysis.Setup() -- was adding to the hash without checking if the key already exist - Fix: Test.Lucene.Net.Index.TestMultiReader/TestSegmentReader/TestSegmentTermDoc.cs -- all those needed their class member variables re-initialized 13Jun06: - Release: Apache Lucene.Net.1.9 RC1 build 004 Beta - Fix: Lucene.Net.Search.FieldCacheImpl.GetFloats() -- must remove 'f" or "F" for System.Single.Parse() to work - Fix: Lucene.Net.Index.GetFieldnames() -- was storing the object instead the value in the object - Fix: Test.Lucene.Net.Index.CollectionContains() -- need to compare strings, not objects - Fix: Test.Lucene.Net.Serch.TestKnownSetOfDocuments() -- don't fail if an item doesn't exist 03Jun06: - Release: Apache Lucene.Net.1.9 RC1 build 003 Alpha - Note: This is the first release of Lucene.Net 1.9 to SVN - Note: Added ZIP compression support via reflection. Thanks to Eyal Post - Note: Fixed bugs in the code which were expose via the NUnit "Test" code - Note: NUnit "Test" code has been ported to Lucene.Net. Out of 307 tests 58 are failing - Note: There are still some remaining port work to be done; look for the text "Aroush" in the code - Issue: There are still some code not fully ported; search for "Aroush" to find those codes - Issue: The NUnit test code has not been ported yet - Issue: Demo.IndexHtml won't work due to some bug in the area of in-memory stream porting 07Feb06: - Release: Lucene.Net.1.9 RC1 build 002 Alpha - Note: This release is based on the current Java code release of 1.9 RC1 - Note: This release contains all the fixes currently implemented for 1.4.3 build 004 - Note: There are still some remaining port work to be done; look for the text "Aroush" in the code - Issue: The NUnit test code has not been ported yet - Issue: Demo.IndexHtml won't work due to some bug in the area of in-memory stream porting 26May05: - Release: Lucene.Net.1.9 RC1 build 001 Alpha - Issue: There are still some code not fully ported; search for "Aroush" to find those codes. - Issue: The NUnit test code has not been ported yet (the current code is still based on 1.4.3 final) 15Dec05: - Release: Lucene.Net.1.4.3 final build 004 to the Apache incubator site - Clean-up: VS.Net project settings. 21Nov05: - Release: Lucene.Net.1.4.3 final build 004 - Fix: Fixed System.Object cast in Lucene.Net.Search.RangeQuery and Lucene.Net.Analysis.PorterStemFilter -- Thanks to Jason - Note: Moved project to Apache at: http://svn.apache.org/repos/asf/incubator/lucene.net/ 23Oct05: - Release: Lucene.Net.1.4.3 final build 003 - Fix: Memory leak -- Thanks to Marcus. - Fix: Remoting class and other misused of System.Object cast -- Thanks to Jason 26May05: - Release: Lucene.Net.1.9 RC1 build 001 Alpha - Issue: There are still some code not fully ported; search for "Aroush" to find those codes. - Issue: The NUnit test code has not been ported yet (the current code is still based on 1.4.3 final) 22Feb05: - Release: Lucene.Net.1.4.3 final build 002 - Fix: Lucene.Net.Index.MultiReader.cs -- fixed GetIndexedFieldNames() 13Feb05: - Release: Lucene.Net.1.4.3 final build 001 - Fix: Lucene.Net.Search.TermQuery.Clone() -- was returning null, so removed it. - Fix: Lucene.Net.Documents.Field.cs -- replaced StreamReader() to TextReader() - Fix: Lucene.Net.Search.RemoteSearchable.cs -- added InitializeLifetimeService() - Fix: Lucene.Net.Document.DateField.cs -- fixed StringToDate() - Fix: Lucene.Net.Store.RAMDirectory.cs -- fixed RAMDirectory() - Issue: Demo.IndexHtml won't work due to some bug in the area of in-memory stream porting 05Jan05: - Release: Lucene.Net.1.4.3 RC2 build 001 - Fix: Lucene.Net.Search.Query.MergeBooleanQueries(); cast type was wrong. - Fix: Demo.IndexHtml; can index now but searching on the index file won't work, yet. 21Dec04: - Release: Lucene.Net.1.4.3 RC1 build 001 - Fix: Document.DateField.StringToTime() -- can't use System.Convert.ToInt64() 06Dec04: - Release: Lucene.Net.1.4.3 beta build 001 22Nov04: - Release: Lucene.Net.1.4.0 RC1 build 001 - Fix: Changed some data types from 'int' to 'long' - Fix: changed some codes from base.Clone() to this.Clone() 10Nov04: - Release: Lucene.Net.1.4.0 beta build 002 (targeted for "final") - Fix: Document.Fields() now returns an IEnumerable. Thanks to Marcus. - Fix: Use SupportClass.Single.Parse() to parse numbers ending with 'f' 03Nov04: - Release: Lucene.Net.1.4.0 beta build 001 - Release Note: 159 test run, 7 failed due to non-existing remote-Lucene setup - Failed Test: - Search.TestRemoteSearchable.* - Search.TestSort.TestNormalizedScores/TestRemoteCustomSort/TestRemoteSort - Fix: Removed 'ref' keyword usage from DateTime. - Port: TestQueryParser.cs -- done. thanks to Radu. - Fix: TestQueryParser.cs -- date-range formatting issues. - Fix: Lucene.Net.QueryParsers.GetRangeQuery() -- date-range formatting issues. - Fix: Use: System.IO.Path.Combine("path-1", "path-2") instead of "path-1" + "\\" + "path-2" 29Oct04: - Port: Ported "test" out of ~160 tests, only ~14 fail. - Port: SupportClass.Character.ForDigit() -- done. thanks to Monsur - Port: Lucene.Net.Documents.DateField.cs -- done. thanks to Monsur - Fix: Lucene.Net.Search.BooleanScorer - Fix: Lucene.Net.Search.FilteredQuery - Fix: Lucene.Net.Search.SortScorers 25Oct04: - Port: Ported "test" more than 2/3 of the NUnit test now pass - Fix: Fixed query (ToString()) formatting issue ("2" -> "2.0") to pass NUnit test - Fix: Field items iteration 19Oct04: - Fix: TermInfoReader.get_Renamed() -> TermInfoReader.Get() - Fix: Searching now works 18Oct04: - Fix: Indexing now works; indexing with Lucene.Net and searching on the same index via Jakarta Lucene - Fix: System.IO.TextReader.Read() returns 0 not -1 so check for '<= 0' 16Oct04: - Port: QueryTermVector.cs -- done. thanks to Monsur 14Oct04: - Port: SpanNearQuery.cs -- done. thanks to Radu - Port: SpanOrQuery.cs -- done. thanks to Radu - Port: FSDirectory.cs -- done. thanks to Seth & Bill - Port: IndexReader.cs -- done. thanks to Bill - Port: IndexWriter.cs -- done. thanks to Bill 13Oct04 Lucene.Net.1.4-alpha build 002 - Port: SpanNearQuery.cs & SpanOrQuery.cs -- thanks to Radu - Fix: FSDirectory.cs, IndexReader.cs & IndexWriter.cs -- thanks to Seth and Bill - Fix: FSDirectory.RenameFile() 13Oct04 Lucene.Net.1.4-alpha build 002 - Note: First effort to port Jakarta Lucene 1.4-final to C# - Note: Ported emements are: "src" and "demo" - Note: There are still outstanding un-ported code (12 in all) which are being looked at - Note: The code compiles and runs as is, but you can't index or search - Fix: PriorityQueue.Out() -> PriorityQueue.Put() - Port: MultiReader.cs & Document.cs -- thanks to Radu 15Sep04 Lucene.Net.1.3-rc3 build 001 - Revival of Lucene by repackaging 1.3rc1-001 and 1.3rc3-001 29Sep04 Lucene.Net 1.3-rc3 build 001 - initial release of jakarta lucene 1.3-rc3 for changes: http://cvs.apache.org/viewcvs.cgi/*checkout*/jakarta-lucene/CHANGES.txt?rev=1.58 - fix: DateToString bug for more info: https://sourceforge.net/tracker/?func=detail&atid=582307&aid=910832&group_id=87200 18Apr04 Lucene.Net 1.3-rc2 build 002 - add: demos, web demos and tests - fix: add FileAccess.Read key with FileMode.Open when open file stream for read - fix: name style updated Document.cs:GetField() QueryParser.cs: GenerateParseException() Search/BooleanQuery.cs:GetMaxClauseCount(),SetMaxClauseCount() - new: Lucene.Net National Language Support Pack (Lucene.Net.NLS Pack) support: Brazilian, CJK, Chinese, Czech, French and Dutch Analysers 20Dec03 Lucene.Net 1.3-rc2 build 001 - initial release for 1.3-rc2 only Lucene.Net without demo and tests 09Jan03 Lucene.Net 1.3-rc1 build 002 - update: documentation and comments - bug fixed: wildcard search crash lucene - fixed look TestQueryFSDirectory project for details - bug fixed: all tests and demos work 08May03 Lucene.Net 1.3-rc1 build 001 - initial release