Releases: elastic/elasticsearch-py
Releases · elastic/elasticsearch-py
8.0.0-beta2
Client
Added
- Added the top-level
.options()method toElasticsearchandAsyncElasticsearchfor modifying transport options. - Added parameters corresponding to JSON request body fields for all APIs
- Added
basic_authparameter for specifying username and password authentication - Added
bearer_authparameter for specifying an HTTP bearer token or service token - Added the
metaproperty toApiErrorto access the HTTP response metadata of an error. - Added a check that a compatible version of the
elastic-transportpackage is installed.
Changed
- Changed the transport layer to use the
elastic-transportpackage - Changed user-defined
bodyparameters to have semantic names (e.gindex(document={...})instead ofindex(body={...})). - Changed responses to be objects with two properties,
metafor response metadata (HTTP status, headers, node, etc) andbodyfor a typed body. - Changed
AsyncElasticsearchto always be available, regardless of whetheraiohttpis installed - Changed exception hierarchy, the major change is a new exception
ApiErrorwhich differentiates between an error that's raised from the transport layer (previouslyelasticsearch.exceptions.TransportError, nowelastic_transport.TransportError) and one raised from the API layer - Changed the name of
JSONSerializertoJsonSerializerfor consistency with other serializer names. Added an alias to the old name for backwards compatibility - Changed the default mimetypes (
application/json) to instead use compatibility mimetypes (application/vnd.elasticsearch+json) which always request for responses compatibility with version 8.x.
Removed
- Removed support for Python 2.7 and Python 3.5, the library now supports only Python 3.6+
- Removed the
elasticsearch.connectionmodule as all functionality has been moved to theelastic-transportpackage - Removed the default URL of
http://localhost:9200due to Elasticsearch 8.0 default configuration beinghttps://localhost:9200.
The client's connection to Elasticsearch now must be specified with scheme, host, and port or with thecloud_idparameter - Removed the ability to use positional arguments with API methods. Going forward all API parameters must be keyword-only parameters
Deprecated
- Deprecated the
bodyandparamsparameters on all APIs - Deprecated setting transport options
http_auth,api_key,ignore,request_timeout,headers, andopaque_id
All of these settings should instead be set via the.options()method - Deprecated the
elasticsearch.transportandelasticsearch.clientmodules. These modules will be removed in a future version
API
- Removed the
doc_typeandinclude_type_nameparameters from many document and index APIs
CAT
- Removed the deprecated
localparameter from thecat.indices,cat.nodes,cat.shardsAPI - Removed the deprecated
allow_no_datafeedsparameter from thecat.ml_datafeedsAPI - Removed the deprecated
allow_no_jobsparameter from thecat.ml_jobsAPI - Removed the deprecated
sizeparameter from thecat.thread_poolAPI - Added the
timeparameter to thecat.thread_poolAPI
Documents
- Removed the deprecated
sizeparameter from thedelete_by_queryAPI - Removed the deprecated
sizeparameter from theupdate_by_queryAPI
Indices
- Removed the deprecated
indices.flush_syncedAPI - Removed the deprecated
indices.freezeAPI - Removed the deprecated
indices.get_upgradeAPI - Removed the deprecated
indices.upgradeAPI - Removed the deprecated parameter
copy_settingsfrom theindices.shrinkAPI
License / X-Pack
- Deprecated the
accept_enterpriseparameter of thelicense.getAPI - Deprecated the
accept_enterpriseparameter of thexpack.infoAPI
Machine Learning
- Removed the deprecated
allow_no_jobsparameter from theml.close_jobAPI - Added the
timeoutparameter to theml.delete_trained_modelAPI - Removed the deprecated
ml.find_text_structureAPI - Removed the deprecated
allow_no_datafeedsparameter from theml.get_datafeed_statsAPI - Removed the deprecated
allow_no_datafeedsparameter from theml.get_datafeedsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_job_statsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_jobsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_overall_bucketsAPI - Added the experimental
ml.infer_trained_model_deploymentAPI - Added the experimental
ml.put_trained_model_definition_partAPI - Added the experimental
ml.put_trained_model_vocabularyAPI - Added the experimental
ml.start_trained_model_deploymentAPI - Added the experimental
ml.stop_trained_model_deploymentAPI
Search
- Added the experimental
knn_searchAPI
Searchable Snapshots
- Removed the deprecated
searchable_snapshots.repository_statsAPI
Security
- Added the
security.enroll_kibanaAPI - Added the
security.enroll_nodeAPI
7.17.0
Machine Learning
- Added the
ml.get_model_snapshot_upgrade_statsAPI - Added the
bodyparameter to theml.forecastandml.open_jobAPIs
Transform
- Added the
timeoutparameter to thetransform.delete_transform,transform.preview_transform,transform.put_transform,transform.update_transform, andtransform.upgrade_transformAPIs
8.0.0-beta1
Client
Added
- Added the top-level
.options()method toElasticsearchandAsyncElasticsearchfor modifying transport options. - Added parameters corresponding to JSON request body fields for all APIs
- Added
basic_authparameter for specifying username and password authentication - Added
bearer_authparameter for specifying an HTTP bearer token or service token - Added the
metaproperty toApiErrorto access the HTTP response metadata of an error. - Added a check that a compatible version of the
elastic-transportpackage is installed.
Changed
- Changed the transport layer to use the
elastic-transportpackage - Changed user-defined
bodyparameters to have semantic names (e.gindex(document={...})instead ofindex(body={...})). - Changed responses to be objects with two properties,
metafor response metadata (HTTP status, headers, node, etc) andbodyfor a typed body. - Changed
AsyncElasticsearchto always be available, regardless of whetheraiohttpis installed - Changed exception hierarchy, the major change is a new exception
ApiErrorwhich differentiates between an error that's raised from the transport layer (previouslyelasticsearch.exceptions.TransportError, nowelastic_transport.TransportError) and one raised from the API layer - Changed the name of
JSONSerializertoJsonSerializerfor consistency with other serializer names. Added an alias to the old name for backwards compatibility
Removed
- Removed support for Python 2.7 and Python 3.5, the library now supports only Python 3.6+
- Removed the
elasticsearch.connectionmodule as all functionality has been moved to theelastic-transportpackage - Removed the default URL of
http://localhost:9200due to Elasticsearch 8.0 default configuration beinghttps://localhost:9200.
The client's connection to Elasticsearch now must be specified with scheme, host, and port or with thecloud_idparameter - Removed the ability to use positional arguments with API methods. Going forward all API parameters must be keyword-only parameters
Deprecated
- Deprecated the
bodyandparamsparameters on all APIs - Deprecated setting transport options
http_auth,api_key,ignore,request_timeout,headers, andopaque_id
All of these settings should instead be set via the.options()method - Deprecated the
elasticsearch.transportandelasticsearch.clientmodules. These modules will be removed in a future version
API
- Removed the
doc_typeandinclude_type_nameparameters from many document and index APIs
CAT
- Removed the deprecated
localparameter from thecat.indices,cat.nodes,cat.shardsAPI - Removed the deprecated
allow_no_datafeedsparameter from thecat.ml_datafeedsAPI - Removed the deprecated
allow_no_jobsparameter from thecat.ml_jobsAPI - Removed the deprecated
sizeparameter from thecat.thread_poolAPI - Added the
timeparameter to thecat.thread_poolAPI
Documents
- Removed the deprecated
sizeparameter from thedelete_by_queryAPI - Removed the deprecated
sizeparameter from theupdate_by_queryAPI
Indices
- Removed the deprecated
indices.flush_syncedAPI - Removed the deprecated
indices.freezeAPI - Removed the deprecated
indices.get_upgradeAPI - Removed the deprecated
indices.upgradeAPI - Removed the deprecated parameter
copy_settingsfrom theindices.shrinkAPI
License / X-Pack
- Deprecated the
accept_enterpriseparameter of thelicense.getAPI - Deprecated the
accept_enterpriseparameter of thexpack.infoAPI
Machine Learning
- Removed the deprecated
allow_no_jobsparameter from theml.close_jobAPI - Added the
timeoutparameter to theml.delete_trained_modelAPI - Removed the deprecated
ml.find_text_structureAPI - Removed the deprecated
allow_no_datafeedsparameter from theml.get_datafeed_statsAPI - Removed the deprecated
allow_no_datafeedsparameter from theml.get_datafeedsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_job_statsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_jobsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_overall_bucketsAPI - Added the experimental
ml.infer_trained_model_deploymentAPI - Added the experimental
ml.put_trained_model_definition_partAPI - Added the experimental
ml.put_trained_model_vocabularyAPI - Added the experimental
ml.start_trained_model_deploymentAPI - Added the experimental
ml.stop_trained_model_deploymentAPI
Search
- Added the experimental
knn_searchAPI
Searchable Snapshots
- Removed the deprecated
searchable_snapshots.repository_statsAPI
Security
- Added the
security.enroll_kibanaAPI - Added the
security.enroll_nodeAPI
7.16.3
Client
- API is compatible with Elasticsearch 7.16.3
8.0.0-alpha4
Client
Added
- Added the top-level
.options()method toElasticsearchandAsyncElasticsearchfor modifying transport options. - Added parameters corresponding to JSON request body fields for all APIs
- Added
basic_authparameter for specifying username and password authentication - Added
bearer_authparameter for specifying an HTTP bearer token or service token - Added the
metaproperty toApiErrorto access the HTTP response metadata of an error. - Added a check that a compatible version of the
elastic-transportpackage is installed.
Changed
- Changed the transport layer to use the
elastic-transportpackage - Changed user-defined
bodyparameters to have semantic names (e.gindex(document={...})instead ofindex(body={...} [elasticsearch8-8.0.0a3.tar.gz](https://github.com/elastic/elasticsearch-py/files/7686727/elasticsearch8-8.0.0a3.tar.gz) ). - Changed responses to be objects with three properties,
metafor response metadata,rawfor the raw deserialized response, andbodyfor a typed body. - Changed
AsyncElasticsearchto always be available, regardless of whetheraiohttpis installed - Changed exception hierarchy, the major change is a new exception
ApiErrorwhich differentiates between an error that's raised from the transport layer (previouslyelasticsearch.exceptions.TransportError, nowelastic_transport.TransportError) and one raised from the API layer - Changed the name of
JSONSerializertoJsonSerializerfor consistency with other serializer names. Added an alias to the old name for backwards compatibility
Removed
- Removed the
elasticsearch.connectionmodule as all functionality has been moved to theelastic-transportpackage - Removed the default URL of
http://localhost:9200due to Elasticsearch 8.0 default configuration beinghttps://localhost:9200.
The client's connection to Elasticsearch now must be specified with scheme, host, and port or with thecloud_idparameter - Removed the ability to use positional arguments with API methods. Going forward all API parameters must be keyword-only parameters
Deprecated
- Deprecated setting transport options
http_auth,api_key,ignore,request_timeout,headers, andopaque_id
All of these settings should instead be set via the.options()method - Deprecated the
elasticsearch.transportandelasticsearch.clientmodules. These modules will be removed in a future version - Deprecated the
bodyandparamsparameters on all APIs
API
- Removed the
doc_typeandinclude_type_nameparameters from many document and index APIs
CAT
- Removed the deprecated
localparameter from thecat.indices,cat.nodes,cat.shardsAPI - Removed the deprecated
allow_no_datafeedsparameter from thecat.ml_datafeedsAPI - Removed the deprecated
allow_no_jobsparameter from thecat.ml_jobsAPI - Removed the deprecated
sizeparameter from thecat.thread_poolAPI - Added the
timeparameter to thecat.thread_poolAPI
Documents
- Removed the deprecated
sizeparameter from thedelete_by_queryAPI - Removed the deprecated
sizeparameter from theupdate_by_queryAPI
Indices
- Removed the deprecated
indices.flush_syncedAPI - Removed the deprecated
indices.freezeAPI - Removed the deprecated
indices.get_upgradeAPI - Removed the deprecated
indices.upgradeAPI - Removed the deprecated parameter
copy_settingsfrom theindices.shrinkAPI
License / X-Pack
- Deprecated the
accept_enterpriseparameter of thelicense.getAPI - Deprecated the
accept_enterpriseparameter of thexpack.infoAPI
Machine Learning
- Removed the deprecated
allow_no_jobsparameter from theml.close_jobAPI - Added the
timeoutparameter to theml.delete_trained_modelAPI - Removed the deprecated
ml.find_text_structureAPI - Removed the deprecated
allow_no_datafeedsparameter from theml.get_datafeed_statsAPI - Removed the deprecated
allow_no_datafeedsparameter from theml.get_datafeedsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_job_statsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_jobsAPI - Removed the deprecated
allow_no_jobsparameter from theml.get_overall_bucketsAPI - Added the experimental
ml.infer_trained_model_deploymentAPI - Added the experimental
ml.put_trained_model_definition_partAPI - Added the experimental
ml.put_trained_model_vocabularyAPI - Added the experimental
ml.start_trained_model_deploymentAPI - Added the experimental
ml.stop_trained_model_deploymentAPI
Search
- Added the experimental
knn_searchAPI
Searchable Snapshots
- Removed the deprecated
searchable_snapshots.repository_statsAPI
Security
- Added the
security.enroll_kibanaAPI - Added the
security.enroll_nodeAPI
7.16.2
Client
- API is compatible with Elasticsearch 7.16.2
7.16.1
Client
- API is compatible with Elasticsearch 7.16.1
Transport
- Fixed an issue where the
AIOHttpConnectionwouldn't log query parameters for URLs.
7.16.0
Client
Deprecated
- Deprecated the
send_get_body_asparameter. 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.
Fixed
- Fixed an issue with
unicodeHTTP headers with the urllib3 HTTP client - Fixed an issue with the
scanhelper to always set thesortandscrollparameters
API
Search
- Changed the
keep_aliveparameter of theopen_point_in_timeAPI to be required
to reflect its required status within Elasticsearch - Added the
track_total_hitsparameter to thesearch_mvtAPI
Fleet
- Changed the
fleet.global_checkpointsAPI from experimental to stable - Added the
fleet.searchexperimental API - Added the
fleet.msearchexperimental API
Indices
- Added the
indices.modify_data_streamAPI
Ingest
- Added the
if_versionparameter to theingest.put_pipelineAPI
Migration
- Added the
migration.get_feature_upgrade_statusAPI - Added the
migration.post_feature_upgradeAPI
Machine Learning
- Added the
defer_definition_decompressionparameter to theml.put_trained_modelAPI
Transforms
- Added the
transform.upgrade_transformsAPI
7.15.2
Client
- API is compatible with Elasticsearch 7.15.2
Nodes
- Documented additional options the
metricparameter of thenodes.infoAPI.
7.15.1
Client
- Fixed a performance regression in
JSONSerializer.default()whennumpyandpandasweren't installed. - Changed the
DeprecationWarningfor thebodyparameter to be a "removed in a future version" instead of "removed in 8.0" in line with the 8.0 roadmap.
API
Search
- The
indexparameter of theopen_point_in_timeAPI is now required, was optional.