Skip to content

Releases: chriseldredge/Lucene.Net.Linq

Fixes IEnumerable<int>.Contains(int)

30 Jun 16:04
Compare
Choose a tag to compare

Release Notes

Fixes #80 (Unable to search within IEnumerable field).

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.5.3

PM> Install-Package Lucene.Net.Linq -Version 3.5.3

Bug Fix: binary OR with negation

05 Jan 17:58
Compare
Choose a tag to compare

Release Notes

Fixes #77 (incorrect query generated for expressions like d.Name != "x" || d.Year == 2010.

This query will now be generated as (*:* -Name:x) Year:2010 effectively allowing either clause to match. Previously this was generated as -Name:x Year:2010 effectively ANDing the clauses.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.5.2

PM> Install-Package Lucene.Net.Linq -Version 3.5.2

Common.Logging.Core -> Common.Logging

05 Dec 16:33
Compare
Choose a tag to compare

Release Notes

Update dependencies to use Common.Logging and remove Common.Logging.Core.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.5.1

PM> Install-Package Lucene.Net.Linq -Version 3.5.1

Performance

19 Nov 14:39
Compare
Choose a tag to compare

Release Notes

Adds the following enhancements:

  • #72 Advanced ISession.Add overload
  • #74 Expose IndexWriter MergePolicy and related settings

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.5.0

PM> Install-Package Lucene.Net.Linq -Version 3.5.0

Nullable Numeric Bug Fix

10 Nov 15:18
Compare
Choose a tag to compare

Release Notes

This version fixes a regression in 3.4.0 when mapping a nullable property to a NumericField. See 1db80e1 for more details.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.4.1

PM> Install-Package Lucene.Net.Linq -Version 3.4.1

Parse queries without LINQ

27 Oct 19:57
Compare
Choose a tag to compare

Release Notes

This version provides two new methods on LuceneDataProvider:

  • CreateQueryParser<T>() creates a Lucene QueryParser that knows how to create boolean queries with correct conversion and encoding of query values
  • LuceneVersion and GetIndexedPropertyNames<T>() provide additional metadata about the binary format version of the index and which fields are indexed for a given document.

These new capabilities make it easier for your application to accept advanced queries as expressed as simple strings so queries can come from users or other code that isn't using LINQ to build them.

This version also fixes a bug when sorting results by a UnaryExpression as in the case of a property backed by a nullable value type.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.4.0

PM> Install-Package Lucene.Net.Linq -Version 3.4.0

Bug Fix: OData $skip and $select

09 Sep 00:33
Compare
Choose a tag to compare

Add support for aggressively flattening nested queries to allow query execution to work on queries generated by Web Api OData.

The following sample query would be produced by OData:

from ODataPackage <generated>_8 in {
  from SampleDocument p in value(Lucene.Net.Linq.LuceneQueryable`1[SampleDocument])
    orderby [p].Id asc, [p].Version asc select [p] => Skip(20)
  }
  select new SelectSome`1() {
    ModelID = "451afd8f-5957-4c03-99a5-8a81bf81a591",
    Container = new AutoSelectedNamedPropertyWithNext`1() {
      Name = "Version",
      Value = [<generated>_8].Version,
      Next = new NamedProperty`1() {
        Name = "Id",
        Value = [<generated>_8].Id
      }
    }
  } => Take(21)

These queries will now be flattened to remove the nesting.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.3.4

PM> Install-Package Lucene.Net.Linq -Version 3.3.4

Bug fix: dispose for realsies

29 Aug 16:55
Compare
Choose a tag to compare

Thanks to @igorkomsinus for reporting #70 - IndexReader not properly disposed.

Now Disposing LuceneDataProvider should release all handles to files in your index, allowing the index to be reopened, optimized or deleted.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.3.3

PM> Install-Package Lucene.Net.Linq -Version 3.3.3

Document Boost at Index Time

06 Aug 16:41
Compare
Choose a tag to compare

Thanks to Tamas Flamich (@tamasflamich) for providing mappings to boost documents when they are indexed.

See examples in Integration/DocumentBoostTests and fluent configuration in Fluent/DocumentBoostTests.

This release also makes sure the right version of Remotion.Linq gets installed when installing Lucene.Net.Linq and changes the dependency on Common.Logging to use the light PCL package Common.Logging.Core.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.3.2

PM> Install-Package Lucene.Net.Linq -Version 3.3.2

Query Statistics and more

20 Jun 19:01
Compare
Choose a tag to compare

New Features

  • #23 Capture statistics on query execution
  • #65 Fuzzy Match extension

Query Statistics

It is now possible to get the full count of hits when using Skip() and Take() to paginate:

LuceneQueryStatistics stats = null;

provider
  .AsQueryable<SampleDocument>()
  .CaptureStatistics(s => { stats = s; })
  .Where(d => d.SearchText == "foo")
  .Skip(20)
  .Take(20)
  .ToList();

See LuceneQueryStatistics.cs for available metadata.

Binaries

NuGet package at https://www.nuget.org/packages/Lucene.Net.Linq/3.3.0

PM> Install-Package Lucene.Net.Linq -Version 3.3.0