Release notes

Notes about releases

[5.4.1] - 2019-01-28

Quality effort

  • A lot of code style

  • A lot of style fix

[5.4.0] - 2019-01-22

Bug fix

  • Filter with Wildcard Searches #245

  • Wrong use of "CheckAnyParameter" option #247

New features

  • Implements Parameter.Equals #145

Quality effort

Docs effort

And...

  • Some code style

  • Some style fix

  • Update dependencies versions

[5.3.1] - 2018-07-04

Bug fix

  • Fix DI exceptions in .Net Core 2.1 (#262)

[5.3.0] - 2018-07-04

Enhancement

  • Support to .Net Core 2.1 (#261)

[5.2.0] - 2018-06-13

Bug fix

  • Fix DI exceptions in .Net 4.7.1 (#250)

  • Wrong exception (#251)

  • Wrong convertions when using DateTime? or GeoCoordinate? (#255)

  • Wrong validation when use Nullable in FacetRange (#256)

  • Set null instead throw exception (#257)

  • Wrong parse when use Nullable in FacetRange (#258)

Enhancement

  • Support to .Net 4.7.1 (#248)

  • Update packages references (#249)

  • Implemented a new Query extension (#252)

  • Change parameter ascendent of extension ParametersExtension.Sort to default true (#253)

  • New extensions _SomeThing_If (#254)

Testability

  • Make possible start SolrExpress without Solr (#259)

BREAKING CHANGES

  • Use SolrExpress.Search.Extension namespace instead SolrExpress.Search.Parameter.Extension to access DocumentSearch extensions

[5.1.2] - 2017-11-17

Bug fix

  • Prevent exceptions when use SchemaLess (#237) and (#241), tks jokin

  • FieldExpression parameter is not being used in some extension methods (#239)

  • Wrong quotation marks addition in StartsWith method (#240)

[5.1.1] - 2017-09-10

Bug fix

  • Bug when use local parameters (#234)

[5.0.1] - 2017-09-05

Enhancement

  • Support to .Net Core 2.0 (#230)

  • Support for define local parameters (#222)

  • Paging using deep page options (#223)

  • Facet filter (#225)

  • Facet hardend (#229)

  • Facet prefix and method (#227 and #228)

[5.0.0] - 2017-08-28

  • Minor bug fixes and docs updates, closes (#218) and (#221)

[5.0.0-BETA2] - 2017-08-28

  • Minor bug fixes and docs updates

[5.0.0-BETA1] - 2017-08-25

BREAKING CHANGES

  • See migration guide for informations about migrations

  • See issue for informations about what, why, how

Thanks people for ideas and contributions:

[4.2.6] - 2017-07-13

Enhancement

  • Updated NewtonSoft.Json and Flurl (tks @Baklap4)

[4.2.5] - 2017-04-25

Bug fix

[4.2.4] - 2017-03-19

Enhancement

  • Implements #203 in .Net 4.5 framework (#204)

[4.2.3] - 2017-03-19

Enhancement

  • Implements #203 in .Net 4.5 framework (#204)

[4.2.2] - 2017-03-19

Bug fix

  • Error 501 when use SolrCloud (#199, #203)

[4.2.1] - 2017-01-31

Bug fix

  • Wrong variable used in result Interceptors execution (#197)

[4.2.0] - 2017-01-20

Enhancement

  • Authentication system (#181)

NOTE Basic Auth & Kerberos plugins and Rule-based Authorization plugin was added in 5.3

[4.1.2] - 2017-01-19

Bug fix

  • Wrong facets exclude tags semantics (#194)

[4.1.1] - 2017-01-16

Bug fix

  • DI bugs in full .NET framework (#186)

[4.1.0] - 2017-01-13

Enhancement

  • Better way to find Minimum/Maximum in range facet result in SOLR 5.0 (#131)

  • Improve performance (#132 and #167)

  • Create unit tests to Checker class (#168)

  • QueryAll in extension class (#169)

  • Review package references in .Net Standard 1.6 (#178) - closes (#177)

  • Filter using AnyValue in extension class (#183)

  • Option to not calculate facet range before and after (#184) - closes (#180)

[4.0.7] - 2016-12-14

Bug fix

  • Default parameters conflit with configued parameters (#175)

[4.0.6] - 2016-12-13

Bug fix

  • Wrong dependency injection (#173)

[4.0.5] - 2016-12-13

Bug fix

  • Inaccessible internal services when configure multiple Documents (#172)

[4.0.4] - 2016-12-02

Enhancement

  • Create tag property in Facet itens (#166)

[4.0.3] - 2016-12-01

Enhancement

  • Create tag property in Facet itens (#165)

[4.0.2] - 2016-09-26

Bug fix

  • SearchResult.Info.PageNumber not equal to StartParameter.Value (#157)

Enhancement

  • Create validation when use SolrExpress.Core.Update.AtomicDelete with 0 documentIds (#149)

[4.0.1] - 2016-09-14

Bug fix

  • ISearchParameterBuilder.Filter, parameters 'from' and 'to' must be default null (#152)

  • Unable to resolve service for type 'IEngine' while attempting to activate 'SearchParameterBuilder` (#154)

Enhancement

  • SolrExpress.Core.Search.ISolrSearch.Add methods must return itself instance (#150)

  • ISolrSearch must accept AddRange (#153)

[4.0.0] - 2016-09-14

Bug fix

  • Friendly assembly wont work (#122)

  • Check if parameter called "parameters" is null in result processors (#142)

  • Invalid cast when a facet range is created using a field of long type (#143)

  • Wrong query when using SpatialFilter (#148)

Enhancement

  • Cleanup in package.json files (#138)

  • Create benchmarks (#139)

  • Create interface to be used in DocumentCollection, SolrQueryable e SolrAtomicUpdate classes (#140)

  • DI review (#141)

  • Code review (#147)

PAY ATTENTION

Issues (#141) and (#147) causes BREAKING CHANGES

BREAKING CHANGES

  • To use DocumentCollection

Before

var provider = new Provider("http://localhost:8983/solr/techproducts");
var resolver = new SimpleResolver().Configure();
var configuration = new Configuration();
var techProducts = new DocumentCollection<TechProduct>(provider, resolver, configuration);

After

Using Net.Core
serviceCollection.AddSolrExpress<TechProduct>(builder => builder
    .UseHostAddress("http://localhost:8983/solr/techproducts")
    .UseOptions(/*options instance*/) // Optionally
    .UseSolr5()); // Or UserSolr4()

In some controller/service/however
public ClassConstructor(IDocumentCollection<TechProduct> techProducts)
{
    //...
}

Using Net4 or Net4.5
techProducts = new DocumentCollectionBuilder<TechProduct>()
    .AddSolrExpress()
    .UseHostAddress("http://localhost:8983/solr/techproducts")
    .UseOptions(/*options instance*/) // Optionally
    .UseSolr5()  // Or UserSolr4()
    .Create();
  • To create a new parameter without using ISolrSearch

Before

var parameter = new QueryParameter<TechProductDocument>().Configure(new QueryAll());

After

Using Net.Core
In some controller/service/however
public ClassConstructor(ISearchParameterBuilder<TDocument> parameterBuilder)
{
    var parameter = parameterBuilder.Query(new QueryAll());
}

Using Net4 or Net4.5
Sorry bro... continues using the old way :/

[3.1.2] - 2016-07-30

Enhancement

  • Add default parameters (#125)

  • Create unit test to test validations methods (#129)

  • Organize changelogs in CHANGELOG.md file (#133)

  • Change projects dependencies (#136)

[3.1.1] - 2016-07-19

Bug fix

  • Create mincount using solr field name rather than POCO property name (#128)

  • In sort validation, must use "index" property rather than "stored" property (#127)

  • Need encode parameters in FacetRange (#123)

Enhancement

  • Change all properties in SolrExpress.Core.Query.ParameterValue.* classes to public {get; private set;} (#130)

  • Use List< IParameter > parameters to calculate gaps and discovery facet types (#46)

  • Recode Core.Query.ParameterValue.Range<> (#126)

  • Use min.count = 1 (#50)

[3.1.0] - 2016-07-12

Bug fix

  • Wrong default namespace in xprojs (#121)

  • Create wrong parameter when use BoostType.Boost (#117)

Enhancement

  • Ignore list (#118, #120)

  • Change base version to 4.0 and add support to 4.5 rather than 4.5.1 (#119)

  • Rename class Statistic to Info (#116)

  • Implements random sort (#110)

[3.0.0] - 2016-07-07

Enhancement

  • Support to .Net Core 1.0 (#109)

  • Interceptors (Query and Result) and Parameters in global form (#114)

  • Create handler parameter to avoid string in Execute method (#115)

NOTES All projects are signed by default (no more *.Signed packages)

[2.1.0] - 2016-05-13

Bug fix

  1. In Solr 5.5, when 2 sorts parameters are added, a bad format is created and Solr don't process the request (#101)

  2. Description of exception InvalidParameterTypeException is bad formatted (#100)

Enhancement

  1. Extensions (#99, #103)

  2. Atomic update (#106)

  3. Simple interceptions (#104, #105)

  4. Boost parameter (#102)

  5. Exception description (#98)

[2.0.0] - 2016-05-05

Bug fix

  • Fix hyperlink to samples in readme.md (#93)

Enhancement

  • Code cleanup and reorganization

  • Improves in DI

  • Atomic update (#94)

[1.2.0.1] - 2016-01-06

Bug fix

  • NuGet mistakes (#86)

  • Unit test fix (#89)

Enhancement

  • Rename ParameterValue classes removing "Value" suffix (#90)

  • Create SpatialFilterParamaterValue (#91)

  • Docs updat (#85)

  • Create a better way to discovery field type in facet ranges (#53)

  • Create FreeParameter (#83)

  • ThrowHelper (#88)

  • Create option to choose request handler (#82)

  • Fluent language (#87)

[1.1.0.2] - 2015-12-15

  • NuGet mistakes

[1.1.0.1] - 2015-12-10

  • NuGet mistakes

[1.1.0] - 2015-12-10

Bug fix

  • Wrong query when use MultiValue and SolrQueryConditionType (#76)

Changes

  • Change namespace of class IDocument (#78)

  • Migrate Fluent Api to core project (#66)

  • StatisticResultBuilder must result a class (#77)

  • Update to C# 6.0 (#38)

Enhancement

  • Signed package enhancement (#65)

  • Globalization (#42)

[1.0.01] - 2015-08-27

All Is Said And Done :)

Read the documentation and if you have some question or find some error, please, contact me

Last updated