Skip to content

Commit 47f90c3

Browse files
committed
[DOCS] Updates 9.0 release notes
1 parent 1581e6b commit 47f90c3

File tree

2 files changed

+29
-35
lines changed

2 files changed

+29
-35
lines changed

CHANGELOG-9.x.md

-34
This file was deleted.

docs/release-notes/index.md

+29-1
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,32 @@ To check for security updates, go to [Security announcements for the Elastic sta
2424

2525
### Features and enhancements [elasticsearch-ruby-client-900-features-enhancements]
2626

27-
### Fixes [elasticsearch-ruby-client-900-fixes]
27+
Ruby 3.2 and up are tested and supported for 9.0. Older versions of Ruby have reached their end of life. We follow Ruby’s own maintenance policy and officially support all currently maintained versions per [Ruby Maintenance Branches](https://www.ruby-lang.org/en/downloads/branches/). The required Ruby version is set to `2.6` to keep compatiblity wit JRuby 9.3. However, we only test the code against currently supported Ruby versions.
28+
29+
#### Gem
30+
31+
The size of both `elasticsearch` and `elasticsearch-api` gems is smaller than in previous versions. Some unnecessary files that were being included in the gem have now been removed. There has also been a lot of old code cleanup for the `9.x` branch.
32+
33+
#### Elasticsearch Serverless
34+
35+
With the release of `9.0`, the [Elasticsearch Serverless](https://github.com/elastic/elasticsearch-serverless-ruby) client has been discontinued. You can use this client to build your Elasticsearch Serverless Ruby applications. The Elasticsearch Serverless API is fully supported. The CI build for Elasticsearch Ruby runs tests to ensure compatibility with Elasticsearch Serverless.
36+
37+
#### Elasticsearch API
38+
39+
* The source code is now generated from [`elasticsearch-specification`](https://github.com/elastic/elasticsearch-specification/), so the API documentation is much more detailed and extensive. The value `Elasticsearch::ES_SPECIFICATION_COMMIT` is updated with the commit hash of elasticsearch-specification in which the code is based every time it's generated.
40+
* `indices.get_field_mapping` - `:fields` is a required parameter.
41+
* `knn_search` - This API has been removed. It was only ever experimental and was deprecated in v`8.4`, it isn't supported in 9.0, and only works with `compatible-with=8` is set. The search API should be used for all knn queries.
42+
* The functions in `utils.rb` that had names starting with double underscore have been renamed to remove these (e.g. `__listify` to `listify`).
43+
* **Namespaces clean up**: The API namespaces are now generated dynamically based on the elasticsearch-specification. As such, some deprecated namespace files have been removed from the codebase:
44+
* The `rollup` namespace was removed. The rollup feature was never GA-ed, it has been deprecated since `8.11.0` in favor of downsampling.
45+
* The `data_frame_deprecated`, `remote` namespace files have been removed, no APIs were available.
46+
* The `shutdown` namespace was removed. It is designed for indirect use by ECE/ESS and ECK. Direct use is not supported.
47+
48+
##### Testing
49+
50+
The gem `elasticsearch-api` migrated away from the Elasticsearch REST API tests and test runner in CI. We now run the [Elasticsearch Client tests](https://github.com/elastic/elasticsearch-clients-tests/) with the [Elasticsearch Tests Runner](https://github.com/elastic/es-test-runner-ruby). This gives us more control on what we're testing and makes the Buildkite build way faster in Pull Requests and scheduled builds.
51+
52+
### Fixes [elasticsearch-ruby-client-900-fixes]
53+
54+
* Some old rake tasks that were not being used have been removed. The rest were streamlined, the `es` namespace has been streamlined to make it easier to run Elasticsearch with Docker during development. The `docker` task namespace was merged into `es`.
55+
* Elasticsearch's REST API Spec tests can still be ran with `rake test:deprecated:rest_api` and setting the corresponding value for the environment variable `TEST_SUITE` ('platinum' or 'free').

0 commit comments

Comments
 (0)