8.0.0-beta1
Pre-release
Pre-release
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