# Is NEST 6.x backwards compatible with Elasticsearch 5.x?

**URL:** <https://discuss.elastic.co/t/is-nest-6-x-backwards-compatible-with-elasticsearch-5-x/135058>\
**Category:** Elasticsearch\
**Created:** [June 7, 2018, 10:00pm UTC](https://discuss.elastic.co/t/is-nest-6-x-backwards-compatible-with-elasticsearch-5-x/135058 "2018-06-07T22:00:35Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ben\_Joldersma](https://avatars.discourse-cdn.com/v4/letter/b/848f3c/32.png) [@Ben\_Joldersma](https://discuss.elastic.co/u/Ben_Joldersma)\
**Post date:** [June 7, 2018, 10:00pm UTC](https://discuss.elastic.co/t/is-nest-6-x-backwards-compatible-with-elasticsearch-5-x/135058/1 "2018-06-07T22:00:36Z")

</div>

I'm trying to plan our rollout and am wondering if I need to orchestrate my clients with the ES 6 upgrade, or if I can push them out first.

Thanks!

---

<div class="post-metadata">

**Author:** ![forloop](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/forloop/32/9021_2.png) [@forloop](https://discuss.elastic.co/u/forloop)\
**Post date:** [June 14, 2018, 2:35am UTC](https://discuss.elastic.co/t/is-nest-6-x-backwards-compatible-with-elasticsearch-5-x/135058/2 "2018-06-14T02:35:21Z")

</div>

[Major versions of NEST are tested against major versions of Elasticsearch](https://github.com/elastic/elasticsearch-net#compatibility-matrix); in the case of NEST 6.x, it is tested against the latest build of each Elasticsearch 6.x minor version.

NEST 6.x isn't tested or supported against Elasticsearch 5.x; _it may work_ completely or for the most part for the types of operations that you're running against Elasticsearch, but because of changes at the Elasticsearch API level, reflected in changes within NEST, it may not.

If at all possible, you should try to update the client in tandem with the cluster. I appreciate that this can sometimes be difficult to do.

We are looking at ways in which we can make major upgrades of the client easier, and one that we are exploring is to publish version specific nuget packages to a MyGet feed. The idea here is that we would effectively

1. rewrite and rename the NEST and [Elasticsearch.Net](http://Elasticsearch.Net) assemblies e.g. `Nest.dll` -\> `Nest610.dll`
2. rewrite the _direct_ assembly dependencies
3. renamespace all the types e.g. `Nest.ElasticClient` -\> `Nest610.ElasticClient`

This would allow a project to easily reference both NEST 5.x and NEST 6.x whilst upgrading. Then, once the cluster upgrade is complete, you would be able to

1. Remove the reference to the old client version
2. Move the new client from the version specific nuget package to an official released package from Nuget

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 12, 2018, 2:35am UTC](https://discuss.elastic.co/t/is-nest-6-x-backwards-compatible-with-elasticsearch-5-x/135058/3 "2018-07-12T02:35:29Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
