We have some Python programs that use Elasticsearch-dsl-py and Elasticsearch-py Python clients to process Elasticsearch data. We are considering upgrading to Elasticsearch-8. From PyPI we can see that elasticsearch-py-8.1.0 is available. However, elasticsearch-dsl is still at 7.4.0. The DSL documentation explicitly states that
The library is compatible with all Elasticsearch versions since 2.x but you have to use a matching major version:
For Elasticsearch 7.0 and later, use the major version 7 (7.x.y) of the library.
Is use of Elasticsearch-DSL-7.4 supported for Elasticsearch-8.x? Or is there a plan to release a v8 of the client?
elasticsearch-dsl-7.4.0 enforces a require dependency on elasticsearch-7.x so it is impossible to install both elasticsearch==8.x and elasticsearch-dsl on same environment.
We have worked around this limitation by creating a temporary local package 7.4.1 in which the requirement for elasticsearch is loosened (>=7.0,<9.0).
Since we also only use the Search() API for Elasticsearch-DSL, we were able to use elasticsearch-dsl as it is with Elasticsearch-8.x
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.