Skip to content

0.11.5.0

Compare
Choose a tag to compare
@Mpdreamz Mpdreamz released this 10 Oct 09:24
· 7198 commits to main since this release
  • NEST now supports the term/phrase suggest thanks to the hard work of @freshmaker74 and special shout out to @MaxHorstmann for committing unit/integration tests for the,.
  • @NickCraver fixed the NodeStats() related calls since the elasticsearch response changed somewhere this year to be now one listing per node, not one per index per node.
  • Multisearch did not translate Type's to strings properly (ty @freshmaker74 again!)
  • NEST now comes with an IRawElasticClient which is generated by scanning the java rest source code, this allows us to have a string/object in string/object out (wrapped in a ConnectionStatus object) client. You can new one or get to an instance of this raw client from your IElasticClient i.e:
var connectionStatus = this._client.Raw.SearchPost(index, typeName, json, queryStringParams);
return connectionStatus.Deserialize<QueryResponse<T>>();

Note the json parameter in the previous example can be a string or a plain anonymous C# object.

  • Many underwater fixes related to serializations read more here: #349
  • NEST by default camelCase's propertyNames you can now easily modify this behaviour by calling SetDefaultPropertyNameInferrer() on IConnectionSettings i.e
//Do not do anything to properties
.SetDefaultPropertyNameInferrer(a=>a)

BREAKING CHANGE

Removed IsValid and TryConnect()

The first 2 features of ElasticClient I wrote nearly three years ago which seemed like a good idea at the time. TryConnect() and .IsValid() are two confusing ways to check if your node is up, RootNodeInfo() now returns a mapped response of the info elasticsearch returns when you hit a node at the root (version, lucene_version etc), or you can call client.Raw.MainGet() or perhaps even better client.Raw.MainHead() or even client.Connection.HeadSync("/").

You catch my drift: with so many ways of querying the root .IsValid and TryConnect() is just fluff that only introduces confusion.

NEXT RELEASE

I will "pull an elasticsearch" for the next release and jump to version 0.90.*.* this next release will focus on stabilising the IElasticClient interface and making sure that every method as an *Async variant.

Full list of commits that make up this release:
0.11.4.0...0.11.5.0