Release notesedit

7.17.7 (2022-10-26)edit

  • Client is compatible with Elasticsearch 7.17.7

7.17.6 (2022-08-25)edit

  • Client is compatible with Elasticsearch 7.17.6

7.17.5 (2022-08-25)edit

  • Client is compatible with Elasticsearch 7.17.5

7.17.4 (2022-06-01)edit

  • Client is compatible with Elasticsearch 7.17.4

7.17.3 (2022-04-26)edit

  • Client is compatible with Elasticsearch 7.17.3

7.17.2 (2022-03-30)edit

  • Client is compatible with Elasticsearch 7.17.2

7.17.1 (2022-02-28)edit

  • Fixed AiohttpHttpConnection` to not leak TLS connections when the socket isn’t explicitly shutdown by the peer
  • Fixed the from parameter to be rewritten to from_ when used with the scan and async_scan helpers

7.17.0 (2022-02-01)edit

  • Client is compatible with Elasticsearch 7.17.0

7.16.3 (2022-01-13)edit

  • Client is compatible with Elasticsearch 7.16.3

7.16.2 (2021-12-27)edit

  • Client is compatible with Elasticsearch 7.16.2

7.16.1 (2021-12-13)edit

Fixededit

  • Fixed issue where the AIOHttpConnection wouldn’t log query parameters for URLs.

7.16.0 (2021-12-07)edit

Deprecatededit

  • Deprecated the send_get_body_as parameter. This parameter is no longer necessary as APIs all use non-GET HTTP methods when using a body.
  • Removal of body, params, and other per-request parameters has been delayed beyond 8.0.0. Changed deprecation warnings to mention "future version" instead of 8.0.0.

Fixededit

  • Fixed an issue with unicode HTTP headers with the urllib3 HTTP client
  • Fixed an issue with the scan helper to always set the sort and scroll parameters

Searchedit

  • Changed the keep_alive parameter of the open_point_in_time API to be required to reflect its required status within Elasticsearch
  • Added the track_total_hits parameter to the search_mvt API

Fleetedit

  • Changed the fleet.global_checkpoints API from experimental to stable
  • Added the fleet.search experimental API
  • Added the fleet.msearch experimental API

Indicesedit

  • Added the indices.modify_data_stream API

Ingestedit

  • Added the if_version parameter to the ingest.put_pipeline API

Migrationedit

  • Added the migration.get_feature_upgrade_status API
  • Added the migration.post_feature_upgrade API

Machine Learningedit

  • Added the defer_definition_decompression parameter to the ml.put_trained_model API

Transformsedit

  • Added the transform.upgrade_transforms API

7.15.2 (2021-11-10)edit

Nodesedit

  • Documented additional options the metric parameter of the nodes.info API.

7.15.1 (2021-10-14)edit

Clientedit

  • Fixed a performance regression in JSONSerializer.default() when numpy and pandas weren’t installed.
  • Changed the DeprecationWarning for the body parameter to be a "removed in a future version" instead of "removed in 8.0" in line with the 8.0 roadmap.

Searchedit

  • The index parameter of the open_point_in_time API is now required, was optional.

7.15.0 (2021-09-22)edit

Clientedit

  • Added more precise type hints to many API parameters
  • Added explicit parameters to AsyncTransport and AIOHttpConnection
  • Added MapboxVectorTileSerializer for handling the application/vnd.mapbox-vector-tile mimetype. Because this mimetype is binary rather than text the raw response bytes are forwarded from the serializer without decoding
  • Reduced amount of time to import the elasticsearch module by delaying imports of pandas and numpy until later in the JSON serialization stage if necessary
  • Deprecated positional arguments for APIs, instead use keyword arguments exclusively.

Searchedit

  • Added the search_mvt experimental API
  • Added body field parameters to the search, scroll, and clear_scroll APIs
  • Deprecated the body parameter of the search, scroll, and clear_scroll APIs

Documentsedit

  • Added body field parameters to the update API
  • Added the document parameter to the create and index APIs
  • Deprecated the body parameter of the create, index, and update APIs

Indicesedit

  • Added the indices.disk_usage experimental API
  • Added the indices.fields_usage_stats experimental API
  • Added body field parameters to the indices.create API
  • Deprecated the body parameter of the indices.create API

Machine Learningedit

  • Added the ignore_unavailable, allow_no_indices, ignore_throttled, and expand_wildcards parameters to the ml.put_job API

Nodesedit

  • Added the nodes.clear_repositories_metering_archive experimental API
  • Added the nodes.get_repositories_metering_info experimental API
  • Added the shards option to the index_metric parameter of the nodes.stats API
  • Deprecated the doc_type parameter of the nodes.hot_threads API, instead use the type parameter

    Securityedit

  • Added the security.query_api_keys API

Licenseedit

  • Deprecated the doc_type parameter of the license.post_start_trial API, instead use the type parameter

7.14.0 (2021-08-02)edit

  • Added check that client is connected to an Elasticsearch cluster. If the client isn’t connected to a supported Elasticsearch cluster the UnsupportedProductError exception will be raised.

Searchedit

  • Added the terms_enum beta API
  • Removed the query_and_fetch and dfs_query_and_fetch options in the search_type parameter to the msearch, msearch_template and search_template APIs

Index Lifecycle Managementedit

  • Added the ilm.migrate_to_data_tiers API

Machine Learningedit

  • Added the ml.reset_job API

Securityedit

  • Added the security.saml_authenticate API
  • Added the security.saml_complete_logout API
  • Added the security.saml_invalidate API
  • Added the security.saml_logout API
  • Added the security.saml_prepare_authentication API
  • Added the security.saml_service_provider_metadata API

SQLedit

  • Added the sql.delete_async API
  • Added the sql.get_async API
  • Added the sql.get_async_status API

Snapshotsedit

  • Added the include_repository parameter to snapshot.get API
  • Added the rarely_abort_writes parameter to the snapshot.repository_analyze API

7.13.4 (2021-07-20)edit

  • Client is compatible with Elasticsearch 7.13.4

7.13.3 (2021-07-07)edit

  • NameError would be raised on Python 2.7 and 3.4 when a connection error would have otherwise been raised.

7.13.2 (2021-06-21)edit

  • Fixed Transport.perform_request() to properly reraise RecursionError
  • Fixed AIOHttpConnection to no longer send Accept-Encoding: gzip, deflate when http_compress=None. Instead now sends no Accept-Encoding header in the default case

Snapshotedit

  • Added the snapshot.repository_analyze API

7.13.1 (2021-06-02)edit

  • Client is compatible with Elasticsearch 7.13.1

7.13.0 (2021-05-25)edit

  • Added support for compatibility header for Elasticsearch. If the environment variable ELASTIC_CLIENT_APIVERSIONING=1 is set the client will send the headers Accept and Content-Type with the following value: application/vnd.elasticsearch+json;compatible-with=7.

Catedit

  • Added the include_unloaded_segments parameter to the cat.nodes API
  • Added the features.reset_features experimental API
  • Added the fleet.global_checkpoints expiremental API
  • Added the ingest.geo_ip_stats API

Machine Learningedit

  • Added the ml.delete_trained_model_alias API
  • Added the ml.preview_data_frame_analytics API
  • Added the ml.put_trained_model_alias API
  • Changed the ml.delete_data_frame_analytics, ml.delete_trained_model, ml.explain_data_frame_analytics, ml.get_data_fram_analytics, ml.get_data_frame_analytics_stats, ml.get_trained_models, ml.get_trained_models_stats, ml.put_trained_model, ml.start_data_frame_analytics, ml.stop_data_frame_analytics, ml.update_data_frame_analytics APIs from beta to stable.

Nodesedit

  • Added include_unloaded_segments parameter to node.stats API

Searchable Snapshotsedit

  • Added the searchable_snapshots.cache_stats experimental API

Securityedit

  • Added the security.clear_cached_service_tokens beta API
  • Added the security.create_service_token beta API
  • Added the security.delete_service_token beta API
  • Added the security.get_service_accounts beta API
  • Added the security.get_service_credentials beta API

Shutdownedit

  • Added the shutdown.delete_node experiemental API
  • Added the shutdown.get_node experimental API
  • Added the shutdown.put_node experimental API

Snapshotsedit

  • Added the index_details parameter to snapshot.get API

Text Structureedit

  • Changed the text_structure.find_structure API from experimental to stable

7.12.1 (2021-04-27)edit

Text Structureedit

  • Changed the text_structure.find_text_structure API from experimental to stable

7.12.0 (2021-03-23)edit

Autoscalingedit

  • Changed autoscaling.delete_autoscaling_policy, autoscaling.get_autoscaling_policy, and autoscaling.put_autoscaling_policy APIs from experimental to stable

EQLedit

  • Added eql.get_status API

Logashedit

  • Added logstash.delete_pipeline, logstash.get_pipeline, and logstash.put_pipeline APIs

Machine Learningedit

  • Removed the experimental ml.find_text_structure API

Searchable Snapshotsedit

  • Added storage parameter to the searchable_snapshots.mount API
  • Added level parameter to the searchable_snapshots.stats API

Searchedit

  • Added the min_compatible_shard_node parameter to search()

Text Structureedit

  • Added experimental text_structure.find_text_structure API

7.11.0 (2021-02-10)edit

  • 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).

7.10.1 (2020-12-09)edit

  • 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).

7.10.0 (2020-11-11)edit

  • 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).

7.9.1 (2020-08-19)edit

  • Fixed the import of async helpers which were not available in 7.9.0 (#1353).
  • Added support for url_prefix when using AIOHttpConnection (#1357).

7.9.0 (2020-08-18)edit

  • 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 (#1279, #1326).

7.8.1 (2020-07-30)edit

  • Added the accept_enterprise parameter to xpack.info API (#1337).

7.8.0 (2020-06-18)edit

  • Added support for ES 7.8 APIs.
  • Added support for async/await with asyncio via AsyncElasticsearch. See documentation on `using Asyncio with Elasticsearch (#1232, #1235, #1236).
  • Added async helpers async_bulk, async_streaming_bulk, async_scan, and async_reindex (#1260).
  • Updated exists_source API to use non-deprecated Elasticsearch API routes when doc_type is not specified to suppress deprecation warnings (#1272).

7.7.1 (2020-05-26)edit

  • 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 (#1253).

7.7.0 (2020-05-13)edit

  • Added support for ES 7.7 APIs (#1182).
  • Added ElasticsearchDeprecationWarning which is raised when a Warning HTTP header is sent by Elasticsearch (#1179).
  • Added support for serializing numpy and pandas data types to JSONSerializer (#1180).
  • Added certifi as a dependency so HTTPS connections work automatically.
  • Fixed duplicated parameters in some API docstrings (#1169, thanks to Morten Hauberg).

7.6.0 (2020-03-19)edit

  • 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 (#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 (#1157).

7.5.1 (2020-01-19)edit

  • All API is now auto generated.
  • Deprecated the .xpack namespace.
  • Update client to support ES 7.5 APIs.

7.1.0 (2019-11-14)edit

  • 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)edit

  • Fix verify_certs=False.

7.0.4 (2019-08-22)edit

  • Fix wheel distribution.

7.0.3 (2019-08-21)edit

  • Remove sleep in retries.
  • Pass scroll_id through body in scroll.
  • Add user-agent.

7.0.2 (2019-05-29)edit

  • Add connection parameter for Elastic Cloud cloud_id.
  • ML client uses client object for _bulk_body requests.

7.0.1 (2019-05-19)edit

  • 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)edit

  • 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 APIs in Elasticsearch both xpack and oss flavors.
  • Ordering of parameters may have changed for some APIs compared to 6.8. Use keyword arguments instead of positional arguments to work-around this change.