Introduction
These beta packages have been released in order to solicit feedback from users. Like any beta software it should not be used in a production environment, if you do so it is very much at your own risk and we will be unable to support you.
These packages are designed to be used in conjunction with Elasticsearch 6.x
We are, however, very keen to field any issues that you may have. If you come across a problem please open an issue. Please ensure your issue mentions the 6.0.0-beta1
label.
Major changes
Serialization
The Newtonsoft.Json
nuget dependency has been removed and the assembly has now been IL merged into the NEST assembly.
The reasons for this are two-fold:
- It simplifies the deployment for customers - no more dependancies to manage.
- It allows us to implement a specialised serialization pipeline in the future, without affecting users.
The Json.NET library has been completely internalized. All methods, properties, classes (etc) have been rewritten into the NEST assembly with internal
scope and namespaces moved over to NEST.Json
. It should not be possible to access any of the serialization functionality and it should coexist with Newtonsoft.Json
references in your project.
Serialization Extensions
The new NEST.JsonNetSerializer package enables you to write a custom serialization path for the types you index into Elasticsearch using Json.NET.
This creates a new extension point within NEST for the serialization of your types.
Single Type Per Index
It is now only possible to have a single type per index, this change is more heavily documented here.
If you have multiple types in an index you'll need to move to a single type per index solution. If you can not do that straight away you can opt in to multiple types, for the time being, by using mapping.single_type index settings.
new IndexSettings(new Dictionary<string, object> {
{ "mapping.single_type", "false" }
})
{
NumberOfShards = 2,
NumberOfReplicas = 0,
};
Breaking Changes
The breaking changes for Elasticsearch 5.x to 6.x are documented here and tracked here.