478 lines
16 KiB
ReStructuredText
478 lines
16 KiB
ReStructuredText
.. _changelog:
|
|
|
|
Changelog
|
|
=========
|
|
|
|
7.11.0 (2021-02-10)
|
|
-------------------
|
|
|
|
* Added support for 7.11 APIs
|
|
* Added the ``X-Elastic-Client-Meta`` HTTP header and the ``meta_header`` parameter
|
|
for controlling the header (`#1473`_)
|
|
* Added ``ElasticsearchWarning`` which is raised when the ``Warning`` HTTP header
|
|
is returned from Elasticsearch. ``ElasticsearchDeprecationWarning`` is now
|
|
an alias for this warning type (`#1495`_)
|
|
|
|
.. _#1473: https://github.com/elastic/elasticsearch-py/pull/1473
|
|
.. _#1495: https://github.com/elastic/elasticsearch-py/pull/1495
|
|
|
|
7.10.1 (2020-12-09)
|
|
-------------------
|
|
|
|
* Fixed issue where the Scan helper would fail if a ``scroll`` response returned
|
|
without a value for ``_shards.skipped`` (`#1451`_)
|
|
* Fixed handling of IPv6 hosts with a port in the computed ``Connection.host`` property (`#1460`_)
|
|
* Fixed documented task management API stability, should have been as "experimental" (`#1471`_)
|
|
* Changed deprecated ``collections.Mapping`` in favor of
|
|
``collections.abc.Mapping`` for Python 3.9 (`#1443`_)
|
|
|
|
.. _#1443: https://github.com/elastic/elasticsearch-py/pull/1443
|
|
.. _#1451: https://github.com/elastic/elasticsearch-py/pull/1451
|
|
.. _#1460: https://github.com/elastic/elasticsearch-py/pull/1460
|
|
.. _#1471: https://github.com/elastic/elasticsearch-py/pull/1471
|
|
|
|
7.10.0 (2020-11-11)
|
|
-------------------
|
|
|
|
* Added support for Elasticsearch 7.10 APIs
|
|
* Added basic type stubs for static type checking and IDE auto-complete of API parameters (`#1297`_, `#1406`_)
|
|
* Added support for `Optimistic Concurrency Control options`_
|
|
(``_if_seq_no``/``_if_primary_term``) to bulk helpers (`#1387`_)
|
|
* Added support for passing ``_source`` with ``"_op_type": "update"``
|
|
bulk helpers (`#1387`_)
|
|
* Fixed bug where ``Connection.log_request_failure()`` call would receive the compressed
|
|
HTTP body rather than uncompressed when an error is raised for ``RequestsHttpConnection`` (`#1394`_)
|
|
* Fix a typo in AsyncTransport where ``sniff_timeout`` was used instead of ``sniffer_timeout`` (`#1431`_)
|
|
* Removed explicit ``yarl`` dependency from ``[async]`` extra to avoid issue where pip
|
|
would override ``aiohttp``'s pin of ``yarl``. This is not a problem if you
|
|
install with ``--use-feature=2020-resolver``. Users should see no changes. (`#1401`_)
|
|
|
|
.. _Optimistic Concurrency Control options: https://www.elastic.co/guide/en/elasticsearch/reference/current/optimistic-concurrency-control.html
|
|
.. _#1431: https://github.com/elastic/elasticsearch-py/pull/1431
|
|
.. _#1406: https://github.com/elastic/elasticsearch-py/pull/1406
|
|
.. _#1401: https://github.com/elastic/elasticsearch-py/pull/1401
|
|
.. _#1394: https://github.com/elastic/elasticsearch-py/pull/1394
|
|
.. _#1387: https://github.com/elastic/elasticsearch-py/pull/1387
|
|
.. _#1297: https://github.com/elastic/elasticsearch-py/pull/1297
|
|
|
|
7.9.1 (2020-08-19)
|
|
------------------
|
|
|
|
* Fixed the import of async helpers which were not available in 7.9.0 (`#1353`_)
|
|
* Added support for ``url_prefix`` when using ``AIOHttpConnection`` (`#1357`_)
|
|
|
|
.. _#1353: https://github.com/elastic/elasticsearch-py/pull/1353
|
|
.. _#1357: https://github.com/elastic/elasticsearch-py/pull/1357
|
|
|
|
7.9.0 (2020-08-18)
|
|
------------------
|
|
|
|
* Added support for ES 7.9 APIs
|
|
* Fixed retries to not raise an error when ``sniff_on_connection_error=True``
|
|
and a ``TransportError`` is raised during the sniff step. Instead the
|
|
retry will continue or the error that triggered the retry will be raised
|
|
(See `#1279`_ and `#1326`_)
|
|
|
|
.. _#1326: https://github.com/elastic/elasticsearch-py/pull/1326
|
|
.. _#1279: https://github.com/elastic/elasticsearch-py/pull/1279
|
|
|
|
7.8.1 (2020-07-30)
|
|
------------------
|
|
|
|
* Added the ``accept_enterprise`` parameter to ``xpack.info`` API (See `#1337`_)
|
|
|
|
.. _#1337: https://github.com/elastic/elasticsearch-py/pull/1337
|
|
|
|
7.8.0 (2020-06-18)
|
|
------------------
|
|
|
|
* Added support for ES 7.8 APIs
|
|
* Added support for async/await with asyncio via
|
|
``AsyncElasticsearch``. See documentation on
|
|
`using Asyncio with Elasticsearch <https://elasticsearch-py.readthedocs.io/en/master/async.html>`_
|
|
for more information (See `#1232`_, `#1235`_, `#1236`_)
|
|
* Added async helpers ``async_bulk``, ``async_streaming_bulk``,
|
|
``async_scan``, and ``async_reindex`` (See `#1260`_)
|
|
* Updated ``exists_source`` API to use non-deprecated Elasticsearch
|
|
API routes when ``doc_type`` is not specified to suppress
|
|
deprecation warnings (See `#1272`_)
|
|
|
|
.. _#1232: https://github.com/elastic/elasticsearch-py/pull/1232
|
|
.. _#1235: https://github.com/elastic/elasticsearch-py/pull/1235
|
|
.. _#1236: https://github.com/elastic/elasticsearch-py/pull/1236
|
|
.. _#1260: https://github.com/elastic/elasticsearch-py/pull/1260
|
|
.. _#1272: https://github.com/elastic/elasticsearch-py/pull/1272
|
|
|
|
7.7.1 (2020-05-26)
|
|
------------------
|
|
|
|
* Updated ``create``, ``update``, ``explain``, ``get_source``,
|
|
and ``termvectors`` APIs to use non-deprecated Elasticsearch
|
|
API routes when ``doc_type`` is not specified to suppress
|
|
deprecation warnings (See `#1253`_)
|
|
|
|
.. _#1253: https://github.com/elastic/elasticsearch-py/pull/1253
|
|
|
|
7.7.0 (2020-05-13)
|
|
------------------
|
|
|
|
* Added support for ES 7.7 APIs (See `#1182`_)
|
|
* Added ``ElasticsearchDeprecationWarning`` which is raised when a ``Warning``
|
|
HTTP header is sent by Elasticsearch. (See `#1179`_)
|
|
* Added support for serializing ``numpy`` and ``pandas``.
|
|
data types to ``JSONSerializer``. (See `#1180`_)
|
|
* Added ``certifi`` as a dependency so HTTPS connections work automatically.
|
|
* Fixed duplicated parameters in some API docstrings (See `#1169`_, thanks to `Morten Hauberg <https://github.com/mortenhauberg>`_!)
|
|
|
|
.. _#1169: https://github.com/elastic/elasticsearch-py/pull/1169
|
|
.. _#1179: https://github.com/elastic/elasticsearch-py/pull/1179
|
|
.. _#1182: https://github.com/elastic/elasticsearch-py/pull/1182
|
|
|
|
7.6.0 (2020-03-19)
|
|
------------------
|
|
|
|
* Added support for ES 7.6 APIs
|
|
* Added support for `X-Opaque-Id`_ to identify long-running tasks
|
|
* Added support for HTTP compression to ``RequestsHttpConnection``
|
|
* Updated default setting of ``http_compress`` when using ``cloud_id`` to ``True``
|
|
* Updated default setting of ``sniffing`` when using ``cloud_id`` to ``False``
|
|
* Updated default port to ``443`` if ``cloud_id`` and no other port is defined
|
|
on the client or within ``cloud_id``
|
|
* Updated ``GET`` HTTP requests that contain a body to ``POST`` where
|
|
the API allows this to fix proxies rejecting these requests.
|
|
* Fix regression of ``client.cluster.state()`` where the default ``metric``
|
|
should be set to ``"_all"`` if an index is given (See `#1143`_)
|
|
* Fix regression of ``client.tasks.get()`` without a ``task_id``
|
|
having similar functionality to ``client.tasks.list()`` This will
|
|
be removed in ``v8.0`` of ``elasticsearch-py`` (See `#1157`_)
|
|
|
|
.. _X-Opaque-Id: https://www.elastic.co/guide/en/elasticsearch/reference/current/tasks.html#_identifying_running_tasks
|
|
.. _#1143: https://github.com/elastic/elasticsearch-py/pull/1143
|
|
.. _#1157: https://github.com/elastic/elasticsearch-py/pull/1157
|
|
|
|
7.5.1 (2020-01-19)
|
|
------------------
|
|
|
|
* ``7.5.0`` tag was not released so retagging
|
|
|
|
7.5.0
|
|
-----
|
|
|
|
* All API is now auto generated
|
|
* deprecated the ``.xpack`` namespace
|
|
* Update client to support ES 7.5 APIs
|
|
|
|
7.1.0 (2019-11-14)
|
|
------------------
|
|
|
|
* Fix sniffing with ``http.publish_host``
|
|
* Fix ``request_timeout`` for ``indices`` APIs
|
|
* Allow access to ``x-pack`` features without ``xpack`` namespace
|
|
* Fix mark dead
|
|
|
|
7.0.5 (2019-10-01)
|
|
------------------
|
|
|
|
* Fix ``verify_certs=False``
|
|
|
|
7.0.4 (2019-08-22)
|
|
------------------
|
|
|
|
* Fix wheel distribution
|
|
|
|
7.0.3 (2019-08-21)
|
|
------------------
|
|
|
|
* remove sleep in retries
|
|
* pass ``scroll_id`` through body in ``scroll``
|
|
* add ``user-agent``
|
|
|
|
7.0.2 (2019-05-29)
|
|
------------------
|
|
|
|
* Add connection parameter for Elastic Cloud cloud_id.
|
|
* ML client uses client object for _bulk_body requests
|
|
|
|
7.0.1 (2019-05-19)
|
|
------------------
|
|
|
|
* Use black to format the code.
|
|
* Update the test matrix to only use current pythons and 7.x ES
|
|
* Blocking pool must fit thread_count
|
|
* Update client to support missing ES 7 API's and query params.
|
|
|
|
7.0.0 (2019-04-11)
|
|
------------------
|
|
|
|
* Removed deprecated option ``update_all_types``.
|
|
* Using insecure SSL configuration (``verify_cert=False``) raises a warning, this can
|
|
be not showed with ``ssl_show_warn=False``
|
|
* Add support for 7.x api's in Elasticsearch both xpack and oss flavors
|
|
|
|
6.8.1 (2020-03-31)
|
|
------------------
|
|
|
|
* Added support for serializing ``numpy`` and ``pandas``
|
|
data types to ``JSONSerializer``. (See `#1180`_)
|
|
* Fixed a namespace conflict in ``elasticsearch6`` wheel
|
|
distribution for ``v6.8.0`` (See `#1186`_)
|
|
|
|
.. _#1180: https://github.com/elastic/elasticsearch-py/issues/1180
|
|
.. _#1186: https://github.com/elastic/elasticsearch-py/issues/1186
|
|
|
|
6.8.0 (2020-03-12)
|
|
------------------
|
|
|
|
* Added support for HTTP compression to ``RequestsHttpConnection``
|
|
* Updated cloud_id default port
|
|
* Enable HTTP compression and disable sniffing by default
|
|
when using Cloud ID to connect to ES.
|
|
* Updated versioning scheme to match ES major.minor
|
|
|
|
6.3.0 (2018-06-20)
|
|
------------------
|
|
|
|
* Add an exponential wait on delays
|
|
* Fix issues with dependencies
|
|
* Adding X-pack Docs
|
|
* Adding forecast to x-pack ML client
|
|
|
|
6.2.0 (2018-03-20)
|
|
------------------
|
|
|
|
* cleanup for SSL Context
|
|
* Add X-Pack clients to -py
|
|
* Adding Gzip support for capacity constrained networks
|
|
* ``_routing`` in bulk action has been deprecated in ES. Introduces a breaking change
|
|
if you use ``routing`` as a field in your documents.
|
|
|
|
6.1.1 (2018-01-05)
|
|
------------------
|
|
|
|
* Updates to SSLContext logic to make it easier to use and have saner defaults.
|
|
* Doc updates
|
|
|
|
6.1.0 (2018-01-05)
|
|
------------------
|
|
|
|
* bad release
|
|
|
|
6.0.0 (2017-11-14)
|
|
------------------
|
|
|
|
* compatibility with Elasticsearch 6.0.0
|
|
|
|
5.5.0 (2017-11-10)
|
|
------------------
|
|
|
|
* ``streaming_bulk`` helper now supports retries with incremental backoff
|
|
* ``scan`` helper properly checks for successful shards instead of just
|
|
checking ``failed``
|
|
* compatible release with elasticsearch ``5.6.4``
|
|
* fix handling of UTF-8 surrogates
|
|
|
|
5.4.0 (2017-05-18)
|
|
------------------
|
|
|
|
* ``bulk`` helpers now extract ``pipeline`` parameter from the action
|
|
dictionary.
|
|
|
|
5.3.0 (2017-03-30)
|
|
------------------
|
|
|
|
* Compatibility with elasticsearch 5.3
|
|
|
|
5.2.0 (2017-02-12)
|
|
------------------
|
|
|
|
* The client now automatically sends ``Content-Type`` http header set to
|
|
``application/json``. If you are explicitly passing in other encoding than
|
|
``json`` you need to set the header manually.
|
|
|
|
5.1.0 (2017-01-11)
|
|
------------------
|
|
|
|
* Fixed sniffing
|
|
|
|
5.0.1 (2016-11-02)
|
|
------------------
|
|
|
|
* Fixed performance regression in ``scan`` helper
|
|
|
|
5.0.0 (2016-10-19)
|
|
------------------
|
|
|
|
* Version compatible with elasticsearch 5.0
|
|
* when using SSL certificate validation is now on by default. Install
|
|
``certifi`` or supply root certificate bundle.
|
|
* ``elasticsearch.trace`` logger now also logs failed requests, signature of
|
|
internal logging method ``log_request_fail`` has changed, all custom
|
|
connection classes need to be updated
|
|
* added ``headers`` arg to connections to support custom http headers
|
|
* passing in a keyword parameter with ``None`` as value will cause that param
|
|
to be ignored
|
|
|
|
2.4.0 (2016-08-17)
|
|
------------------
|
|
|
|
* ``ping`` now ignores all ``TransportError`` exceptions and just returns
|
|
``False``
|
|
* expose ``scroll_id`` on ``ScanError``
|
|
* increase default size for ``scan`` helper to 1000
|
|
* Internal: changed ``Transport.perform_request`` to just return the body, not status as well.
|
|
|
|
2.3.0 (2016-02-29)
|
|
------------------
|
|
|
|
* added ``client_key`` argument to configure client certificates
|
|
* debug logging now includes response body even for failed requests
|
|
|
|
2.2.0 (2016-01-05)
|
|
------------------
|
|
|
|
* Due to change in json encoding the client will no longer mask issues with
|
|
encoding - if you work with non-ascii data in python 2 you must use the
|
|
``unicode`` type or have proper encoding set in your environment.
|
|
* adding additional options for ssh - ``ssl_assert_hostname`` and
|
|
``ssl_assert_fingerprint`` to the default connection class
|
|
* fix sniffing
|
|
|
|
2.1.0 (2015-10-19)
|
|
------------------
|
|
|
|
* move multiprocessing import inside parallel bulk for Google App Engine
|
|
|
|
2.0.0 (2015-10-14)
|
|
------------------
|
|
|
|
* Elasticsearch 2.0 compatibility release
|
|
|
|
1.8.0 (2015-10-14)
|
|
------------------
|
|
|
|
* removed thrift and memcached connections, if you wish to continue using
|
|
those, extract the classes and use them separately.
|
|
* added a new, parallel version of the bulk helper using thread pools
|
|
* In helpers, removed ``bulk_index`` as an alias for ``bulk``. Use ``bulk``
|
|
instead.
|
|
|
|
1.7.0 (2015-09-21)
|
|
------------------
|
|
|
|
* elasticsearch 2.0 compatibility
|
|
* thrift now deprecated, to be removed in future version
|
|
* make sure urllib3 always uses keep-alive
|
|
|
|
1.6.0 (2015-06-10)
|
|
------------------
|
|
|
|
* Add ``indices.flush_synced`` API
|
|
* ``helpers.reindex`` now supports reindexing parent/child documents
|
|
|
|
1.5.0 (2015-05-18)
|
|
------------------
|
|
|
|
* Add support for ``query_cache`` parameter when searching
|
|
* helpers have been made more secure by changing defaults to raise an
|
|
exception on errors
|
|
* removed deprecated options ``replication`` and the deprecated benchmark api.
|
|
* Added ``AddonClient`` class to allow for extending the client from outside
|
|
|
|
1.4.0 (2015-02-11)
|
|
------------------
|
|
|
|
* Using insecure SSL configuration (``verify_cert=False``) raises a warning
|
|
* ``reindex`` accepts a ``query`` parameter
|
|
* enable ``reindex`` helper to accept any kwargs for underlying ``bulk`` and
|
|
``scan`` calls
|
|
* when doing an initial sniff (via ``sniff_on_start``) ignore special sniff timeout
|
|
* option to treat ``TransportError`` as normal failure in ``bulk`` helpers
|
|
* fixed an issue with sniffing when only a single host was passed in
|
|
|
|
1.3.0 (2014-12-31)
|
|
------------------
|
|
|
|
* Timeout now doesn't trigger a retry by default (can be overriden by setting
|
|
``retry_on_timeout=True``)
|
|
* Introduced new parameter ``retry_on_status`` (defaulting to ``(503, 504)``)
|
|
controls which http status code should lead to a retry.
|
|
* Implemented url parsing according to RFC-1738
|
|
* Added support for proper SSL certificate handling
|
|
* Required parameters are now checked for non-empty values
|
|
* ConnectionPool now checks if any connections were defined
|
|
* DummyConnectionPool introduced when no load balancing is needed (only one
|
|
connection defined)
|
|
* Fixed a race condition in ConnectionPool
|
|
|
|
1.2.0 (2014-08-03)
|
|
------------------
|
|
|
|
* Compatibility with newest (1.3) Elasticsearch APIs.
|
|
* Filter out master-only nodes when sniffing
|
|
* Improved docs and error messages
|
|
|
|
1.1.1 (2014-07-04)
|
|
------------------
|
|
|
|
* Bugfix release fixing escaping issues with ``request_timeout``.
|
|
|
|
1.1.0 (2014-07-02)
|
|
------------------
|
|
|
|
* Compatibility with newest Elasticsearch APIs.
|
|
* Test helpers - ``ElasticsearchTestCase`` and ``get_test_client`` for use in your
|
|
tests
|
|
* Python 3.2 compatibility
|
|
* Use ``simplejson`` if installed instead of stdlib json library
|
|
* Introducing a global ``request_timeout`` parameter for per-call timeout
|
|
* Bug fixes
|
|
|
|
1.0.0 (2014-02-11)
|
|
------------------
|
|
|
|
* Elasticsearch 1.0 compatibility. See 0.4.X releases (and 0.4 branch) for code
|
|
compatible with 0.90 elasticsearch.
|
|
|
|
* major breaking change - compatible with 1.0 elasticsearch releases only!
|
|
* Add an option to change the timeout used for sniff requests (``sniff_timeout``).
|
|
* empty responses from the server are now returned as empty strings instead of None
|
|
* ``get_alias`` now has ``name`` as another optional parameter due to issue #4539
|
|
in es repo. Note that the order of params have changed so if you are not
|
|
using keyword arguments this is a breaking change.
|
|
|
|
0.4.4 (2013-12-23)
|
|
------------------
|
|
|
|
* ``helpers.bulk_index`` renamed to ``helpers.bulk`` (alias put in place for
|
|
backwards compatibility, to be removed in future versions)
|
|
* Added ``helpers.streaming_bulk`` to consume an iterator and yield results per
|
|
operation
|
|
* ``helpers.bulk`` and ``helpers.streaming_bulk`` are no longer limited to just
|
|
index operations.
|
|
* unicode body (for ``incices.analyze`` for example) is now handled correctly
|
|
* changed ``perform_request`` on ``Connection`` classes to return headers as well.
|
|
This is a backwards incompatible change for people who have developed their own
|
|
connection class.
|
|
* changed deserialization mechanics. Users who provided their own serializer
|
|
that didn't extend ``JSONSerializer`` need to specify a ``mimetype`` class
|
|
attribute.
|
|
* minor bug fixes
|
|
|
|
0.4.3 (2013-10-22)
|
|
------------------
|
|
|
|
* Fixes to ``helpers.bulk_index``, better error handling
|
|
* More benevolent ``hosts`` argument parsing for ``Elasticsearch``
|
|
* ``requests`` no longer required (nor recommended) for install
|
|
|
|
0.4.2 (2013-10-08)
|
|
------------------
|
|
|
|
* ``ignore`` param accepted by all APIs
|
|
* Fixes to ``helpers.bulk_index``
|
|
|
|
0.4.1 (2013-09-24)
|
|
------------------
|
|
|
|
* Initial release.
|