8.5 Release notes
edit8.5 Release notes
edit8.5.2 Release notes
editAPI Bugfix
editFixes security.create_service_token API, uses POST when token name isn’t present.
Thanks @carlosdelest for reporting in #1961.
8.5.1 Release notes
editBugfixes
editFixes bug when instantiating client with api_key: When passing in api_key and transport_options that don’t include headers to the client, the api_key code would overwrite the arguments passed in for transport_options. This was fixed in this Pull Request.
Thanks @svdasein for reporting in #1940.
8.5.0 Release notes
edit- Tested versions of Ruby for 8.5.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
Client
editWith the latest release of elastic-transport - v8.1.0 - this gem now supports Faraday v2. Elasticsearch Ruby has an open dependency on elastic-transport ('elastic-transport', '~> 8'), so when you upgrade your gems, 8.1.0 will be installed. This supports both Faraday v1 and Faraday v2. The main change on dependencies when using Faraday v2 is all adapters, except for the default net_http one, have been moved out of Faraday into separate gems. This means if you’re not using the default adapter and you migrate to Faraday v2, you’ll need to add the adapter gems to your Gemfile.
These are the gems required for the different adapters with Faraday 2, instead of the libraries on which they were based:
# HTTPCLient gem 'faraday-httpclient' # NetHTTPPersistent gem 'faraday-net_http_persistent' # Patron gem 'faraday-patron' # Typhoeus gem 'faraday-typhoeus'
Things should work fine if you migrate to Faraday 2 as long as you include the adapter (unless you’re using the default one net-http), but worst case scenario, you can always lock the version of Faraday in your project to 1.x:
gem faraday, ~> 1
Be aware if migrating to Faraday v2 that it requires at least Ruby 2.6, unlike Faraday v1 which requires 2.4.
Troubleshooting
If you see a message like:
:adapter is not registered on Faraday::Adapter (Faraday::Error)
Then you probably need to include the adapter library in your gemfile and require it.
Please submit an issue if you encounter any problems.
API
editNew APIs
edit-
machine_learning.clear_trained_model_deployment_cache- Clear the cached results from a trained model deployment (Beta). -
security.bulk_update_api_keys- Updates the attributes of multiple existing API keys.
API Changes
edit-
rollup.rolluprenamed toindices.downsample. The method now receives theindexto downsample (Required) and instead ofrollup_index, use target_index as the index to store downsampled data. -
security.get_api_keyandsecurity.query_api_keysadd:with_limited_byflag to show the limited-by role descriptors of API Keys. -
security.get_useradds:with_profile_uidflag to retrieve profile uid (if exists) associated to the user. -
security.get_user_profilenow retrieves user profiles for given unique ID(s).:uidis now a list of comma-separated list of unique identifier for user profiles. -
text_structure.find_structureadds:ecs_compatibility, optional parameter to specify the compatibility mode with ECS Grok patterns - may be either v1 or disabled.
Machine learning APIs promoted from Experimental to Beta:
-
machine_learning.clear_trained_model_deployment_cache.rb -
machine_learning.infer_trained_model.rb -
machine_learning.put_trained_model_definition_part.rb -
machine_learning.put_trained_model_vocabulary.rb -
machine_learning.start_trained_model_deployment.rb -
machine_learning.stop_trained_model_deployment.rb
Security usef profile APIs promoted from Experimental to Stable:
-
security/activate_user_profile -
security/disable_user_profile -
security/enable_user_profile -
security/get_user_profile -
security/has_privileges_user_profile -
security/suggest_user_profile -
security/update_user_profile_data