Skip to content

Commit 9a9aba1

Browse files
committed
[DOCS] Adds 7.14 Release Notes about changes in transport
1 parent ed32823 commit 9a9aba1

File tree

3 files changed

+115
-0
lines changed

3 files changed

+115
-0
lines changed

CHANGELOG.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,57 @@
1+
## 7.14.0
2+
3+
### Client
4+
5+
This release changes the way in which the transport layer and the client interact. Before, when using `elasticsearch-transport`, `Elasticsearch::Transport::Client` had a convenient wrapper so it could be used as `Elasticsearch::Client`. We are decoupling the transport layer from the Elasticsearch client. If you're using the `elasticsearch` gem, not much should change. It will instantiate a new `Elasticsearch::Transport::Client` when you instantiate `Elasticsearch::Client` and the endpoints from `elasticsearch-api` will be available.
6+
7+
`Elasticsearch::Client` has an `attr_accessor` for the transport instance:
8+
9+
```ruby
10+
> client = Elasticsearch::Client.new
11+
> client.transport.class
12+
=> Elasticsearch::Transport::Client
13+
> client.transport.transport.class
14+
=> Elasticsearch::Transport::Transport::HTTP::Faraday
15+
```
16+
17+
The interaction with `elasticsearch-api` remains unchanged. You can use the API endpoints just like before:
18+
19+
```ruby
20+
> client.info
21+
=> {"name"=>"instance",
22+
"cluster_name"=>"elasticsearch",
23+
"cluster_uuid"=>"id",
24+
"version"=>
25+
{"number"=>"7.14.0",
26+
...
27+
},
28+
"tagline"=>"You Know, for Search"}
29+
```
30+
31+
Or perform request directly from the client which will return an `Elasticsearch::Transport::Response` object:
32+
```ruby
33+
> client.perform_request('GET', '/')
34+
# This is the same as doing client.transport.perform_request('GET', '/')
35+
=> #<Elasticsearch::Transport::Transport::Response:0x000055c80bf94bc8
36+
@body=
37+
{"name"=>"instance",
38+
"cluster_name"=>"elasticsearch",
39+
"cluster_uuid"=>"id",
40+
"version"=>
41+
{"number"=>"7.14.0-SNAPSHOT",
42+
...
43+
},
44+
"tagline"=>"You Know, for Search"},
45+
@headers=
46+
{"content-type"=>"application/json; charset=UTF-8",
47+
"content-length"=>"571",
48+
...
49+
},
50+
@status=200>
51+
```
52+
53+
If you have any problems, please report them in [this issue](https://github.com/elastic/elasticsearch-ruby/issues/1344).
54+
155
## 7.13.3
256

357
- API Support for Elasticsearch version 7.13.3

docs/release_notes/714.asciidoc

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
[[release_notes_714]]
2+
=== 7.14 Release notes
3+
4+
[discrete]
5+
==== Client
6+
7+
8+
This release changes the way in which the transport layer and the client interact. Before, when using `elasticsearch-transport`, `Elasticsearch::Transport::Client` had a convenient wrapper so it could be used as `Elasticsearch::Client`. We are decoupling the transport layer from the Elasticsearch client. If you're using the `elasticsearch` gem, not much should change. It will instantiate a new `Elasticsearch::Transport::Client` when you instantiate `Elasticsearch::Client` and the endpoints from `elasticsearch-api` will be available.
9+
10+
`Elasticsearch::Client` has an `attr_accessor` for the transport instance:
11+
12+
[source,ruby]
13+
------------------------------------
14+
> client = Elasticsearch::Client.new
15+
> client.transport.class
16+
=> Elasticsearch::Transport::Client
17+
> client.transport.transport.class
18+
=> Elasticsearch::Transport::Transport::HTTP::Faraday
19+
------------------------------------
20+
21+
The interaction with `elasticsearch-api` remains unchanged. You can use the API endpoints just like before:
22+
23+
[source,ruby]
24+
------------------------------------
25+
> client.info
26+
=> {"name"=>"instance",
27+
"cluster_name"=>"elasticsearch",
28+
"cluster_uuid"=>"id",
29+
"version"=>
30+
{"number"=>"7.14.0",
31+
...
32+
},
33+
"tagline"=>"You Know, for Search"}
34+
------------------------------------
35+
36+
Or perform request directly from the client which will return an `Elasticsearch::Transport::Response` object:
37+
[source,ruby]
38+
------------------------------------
39+
> client.perform_request('GET', '/')
40+
# This is the same as doing client.transport.perform_request('GET', '/')
41+
=> #<Elasticsearch::Transport::Transport::Response:0x000055c80bf94bc8
42+
@body=
43+
{"name"=>"instance",
44+
"cluster_name"=>"elasticsearch",
45+
"cluster_uuid"=>"id",
46+
"version"=>
47+
{"number"=>"7.14.0-SNAPSHOT",
48+
...
49+
},
50+
"tagline"=>"You Know, for Search"},
51+
@headers=
52+
{"content-type"=>"application/json; charset=UTF-8",
53+
"content-length"=>"571",
54+
...
55+
},
56+
@status=200>
57+
------------------------------------
58+
59+
If you have any problems, please report them in https://github.com/elastic/elasticsearch-ruby/issues/1344[this issue].

docs/release_notes/index.asciidoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
[discrete]
66
=== 7.x
7+
* <<release_notes_714, 7.14 Release Notes>>
78
* <<release_notes_713, 7.13 Release Notes>>
89
* <<release_notes_712, 7.12 Release Notes>>
910
* <<release_notes_711, 7.11 Release Notes>>
@@ -15,6 +16,7 @@
1516
* <<release_notes_75, 7.5 Release Notes>>
1617
* <<release_notes_70, 7.0 Release Notes>>
1718

19+
include::714.asciidoc[]
1820
include::713.asciidoc[]
1921
include::712.asciidoc[]
2022
include::711.asciidoc[]

0 commit comments

Comments
 (0)