elastic-enterprise-search 8.3.0 → 8.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. checksums.yaml +4 -4
  2. data/.ci/Dockerfile +14 -1
  3. data/.ci/jobs/{elastic+enterprise-search-ruby+8.0.yml → elastic+enterprise-search-ruby+8.3.yml} +4 -4
  4. data/.ci/jobs/{elastic+enterprise-search-ruby+8.1.yml → elastic+enterprise-search-ruby+8.4.yml} +4 -4
  5. data/.ci/make.sh +3 -1
  6. data/.ci/test-matrix.yml +1 -1
  7. data/.github/workflows/rubocop.yml +2 -2
  8. data/.github/workflows/testing.yml +2 -0
  9. data/README.md +1 -1
  10. data/docs/guide/app-search-api.asciidoc +4 -3
  11. data/docs/guide/installation.asciidoc +2 -2
  12. data/docs/guide/overview.asciidoc +2 -2
  13. data/docs/guide/release_notes/83.asciidoc +14 -0
  14. data/docs/guide/release_notes/84.asciidoc +36 -0
  15. data/docs/guide/release_notes/85.asciidoc +40 -0
  16. data/docs/guide/release_notes/index.asciidoc +6 -0
  17. data/elastic-enterprise-search.gemspec +6 -1
  18. data/lib/elastic/app-search/api/adaptive_relevance_settings.rb +0 -1
  19. data/lib/elastic/app-search/api/adaptive_relevance_suggestions.rb +0 -1
  20. data/lib/elastic/app-search/api/add_meta_engine_source.rb +0 -1
  21. data/lib/elastic/app-search/api/api_key.rb +0 -1
  22. data/lib/elastic/app-search/api/api_logs.rb +0 -1
  23. data/lib/elastic/app-search/api/count_analytics.rb +0 -1
  24. data/lib/elastic/app-search/api/crawler_active_crawl_request.rb +0 -1
  25. data/lib/elastic/app-search/api/crawler_crawl_request.rb +0 -1
  26. data/lib/elastic/app-search/api/crawler_crawl_schedule.rb +0 -1
  27. data/lib/elastic/app-search/api/crawler_domain.rb +0 -1
  28. data/lib/elastic/app-search/api/crawler_domain_validation_result.rb +0 -1
  29. data/lib/elastic/app-search/api/crawler_metrics.rb +0 -1
  30. data/lib/elastic/app-search/api/crawler_overview.rb +0 -1
  31. data/lib/elastic/app-search/api/crawler_process_crawl.rb +0 -1
  32. data/lib/elastic/app-search/api/crawler_process_crawl_denied_urls.rb +0 -1
  33. data/lib/elastic/app-search/api/crawler_url_extraction_result.rb +0 -1
  34. data/lib/elastic/app-search/api/crawler_url_tracing_result.rb +0 -1
  35. data/lib/elastic/app-search/api/crawler_url_validation_result.rb +0 -1
  36. data/lib/elastic/app-search/api/crawler_user_agent.rb +0 -1
  37. data/lib/elastic/app-search/api/create_api_key.rb +0 -1
  38. data/lib/elastic/app-search/api/create_crawler_crawl_request.rb +0 -1
  39. data/lib/elastic/app-search/api/create_crawler_crawl_rule.rb +0 -1
  40. data/lib/elastic/app-search/api/create_crawler_domain.rb +0 -1
  41. data/lib/elastic/app-search/api/create_crawler_entry_point.rb +0 -1
  42. data/lib/elastic/app-search/api/create_crawler_process_crawl.rb +0 -1
  43. data/lib/elastic/app-search/api/create_crawler_sitemap.rb +0 -1
  44. data/lib/elastic/app-search/api/create_curation.rb +0 -1
  45. data/lib/elastic/app-search/api/create_engine.rb +0 -1
  46. data/lib/elastic/app-search/api/create_synonym_set.rb +0 -1
  47. data/lib/elastic/app-search/api/curation.rb +0 -1
  48. data/lib/elastic/app-search/api/delete_api_key.rb +0 -1
  49. data/lib/elastic/app-search/api/delete_crawler_active_crawl_request.rb +0 -1
  50. data/lib/elastic/app-search/api/delete_crawler_crawl_rule.rb +0 -1
  51. data/lib/elastic/app-search/api/delete_crawler_crawl_schedule.rb +0 -1
  52. data/lib/elastic/app-search/api/delete_crawler_domain.rb +0 -1
  53. data/lib/elastic/app-search/api/delete_crawler_entry_point.rb +0 -1
  54. data/lib/elastic/app-search/api/delete_crawler_sitemap.rb +0 -1
  55. data/lib/elastic/app-search/api/delete_curation.rb +0 -1
  56. data/lib/elastic/app-search/api/delete_documents.rb +0 -1
  57. data/lib/elastic/app-search/api/delete_engine.rb +0 -1
  58. data/lib/elastic/app-search/api/delete_meta_engine_source.rb +0 -1
  59. data/lib/elastic/app-search/api/delete_synonym_set.rb +0 -1
  60. data/lib/elastic/app-search/api/documents.rb +0 -1
  61. data/lib/elastic/app-search/api/engine.rb +0 -1
  62. data/lib/elastic/app-search/api/index_documents.rb +0 -1
  63. data/lib/elastic/app-search/api/list_adaptive_relevance_suggestions.rb +0 -1
  64. data/lib/elastic/app-search/api/list_api_keys.rb +0 -1
  65. data/lib/elastic/app-search/api/list_crawler_crawl_requests.rb +0 -1
  66. data/lib/elastic/app-search/api/list_crawler_domains.rb +0 -1
  67. data/lib/elastic/app-search/api/list_crawler_process_crawls.rb +0 -1
  68. data/lib/elastic/app-search/api/list_curations.rb +0 -1
  69. data/lib/elastic/app-search/api/list_documents.rb +0 -1
  70. data/lib/elastic/app-search/api/list_engines.rb +0 -1
  71. data/lib/elastic/app-search/api/list_synonym_sets.rb +0 -1
  72. data/lib/elastic/app-search/api/log_clickthrough.rb +0 -1
  73. data/lib/elastic/app-search/api/multi_search.rb +0 -1
  74. data/lib/elastic/app-search/api/put_adaptive_relevance_settings.rb +0 -1
  75. data/lib/elastic/app-search/api/put_adaptive_relevance_suggestions.rb +0 -1
  76. data/lib/elastic/app-search/api/put_api_key.rb +0 -1
  77. data/lib/elastic/app-search/api/put_crawler_crawl_rule.rb +0 -1
  78. data/lib/elastic/app-search/api/put_crawler_crawl_schedule.rb +0 -1
  79. data/lib/elastic/app-search/api/put_crawler_domain.rb +0 -1
  80. data/lib/elastic/app-search/api/put_crawler_entry_point.rb +0 -1
  81. data/lib/elastic/app-search/api/put_crawler_sitemap.rb +0 -1
  82. data/lib/elastic/app-search/api/put_curation.rb +0 -1
  83. data/lib/elastic/app-search/api/put_documents.rb +0 -1
  84. data/lib/elastic/app-search/api/put_schema.rb +0 -1
  85. data/lib/elastic/app-search/api/put_search_settings.rb +1 -1
  86. data/lib/elastic/app-search/api/put_synonym_set.rb +0 -1
  87. data/lib/elastic/app-search/api/query_suggestion.rb +0 -1
  88. data/lib/elastic/app-search/api/refresh_adaptive_relevance_update_process.rb +0 -1
  89. data/lib/elastic/app-search/api/reset_search_settings.rb +0 -1
  90. data/lib/elastic/app-search/api/schema.rb +0 -1
  91. data/lib/elastic/app-search/api/search.rb +0 -1
  92. data/lib/elastic/app-search/api/search_es_search.rb +5 -6
  93. data/lib/elastic/app-search/api/search_explain.rb +1 -2
  94. data/lib/elastic/app-search/api/search_settings.rb +0 -1
  95. data/lib/elastic/app-search/api/synonym_set.rb +0 -1
  96. data/lib/elastic/app-search/api/top_clicks_analytics.rb +0 -1
  97. data/lib/elastic/app-search/api/top_queries_analytics.rb +0 -1
  98. data/lib/elastic/enterprise-search/api/health.rb +0 -1
  99. data/lib/elastic/enterprise-search/api/put_read_only.rb +0 -1
  100. data/lib/elastic/enterprise-search/api/read_only.rb +0 -1
  101. data/lib/elastic/enterprise-search/api/search_engines.rb +0 -1
  102. data/lib/elastic/enterprise-search/api/stats.rb +0 -1
  103. data/lib/elastic/enterprise-search/api/version.rb +0 -1
  104. data/lib/elastic/enterprise-search/request.rb +1 -1
  105. data/lib/elastic/enterprise-search/version.rb +1 -1
  106. data/lib/elastic/workplace-search/api/auto_query_refinement_details.rb +0 -1
  107. data/lib/elastic/workplace-search/api/command_sync_jobs.rb +0 -1
  108. data/lib/elastic/workplace-search/api/content_source.rb +0 -1
  109. data/lib/elastic/workplace-search/api/create_analytics_event.rb +0 -1
  110. data/lib/elastic/workplace-search/api/create_batch_synonym_sets.rb +0 -1
  111. data/lib/elastic/workplace-search/api/create_content_source.rb +0 -1
  112. data/lib/elastic/workplace-search/api/create_external_identity.rb +0 -1
  113. data/lib/elastic/workplace-search/api/current_user.rb +0 -1
  114. data/lib/elastic/workplace-search/api/delete_content_source.rb +0 -1
  115. data/lib/elastic/workplace-search/api/delete_documents.rb +0 -1
  116. data/lib/elastic/workplace-search/api/delete_documents_by_query.rb +0 -1
  117. data/lib/elastic/workplace-search/api/delete_external_identity.rb +0 -1
  118. data/lib/elastic/workplace-search/api/delete_synonym_set.rb +0 -1
  119. data/lib/elastic/workplace-search/api/document.rb +0 -1
  120. data/lib/elastic/workplace-search/api/external_identity.rb +0 -1
  121. data/lib/elastic/workplace-search/api/index_documents.rb +0 -1
  122. data/lib/elastic/workplace-search/api/list_content_sources.rb +0 -1
  123. data/lib/elastic/workplace-search/api/list_documents.rb +0 -1
  124. data/lib/elastic/workplace-search/api/list_external_identities.rb +0 -1
  125. data/lib/elastic/workplace-search/api/list_synonym_sets.rb +0 -1
  126. data/lib/elastic/workplace-search/api/put_content_source.rb +0 -1
  127. data/lib/elastic/workplace-search/api/put_content_source_icons.rb +0 -1
  128. data/lib/elastic/workplace-search/api/put_external_identity.rb +0 -1
  129. data/lib/elastic/workplace-search/api/put_synonym_set.rb +0 -1
  130. data/lib/elastic/workplace-search/api/put_triggers_blocklist.rb +0 -1
  131. data/lib/elastic/workplace-search/api/search.rb +0 -1
  132. data/lib/elastic/workplace-search/api/synonym_set.rb +0 -1
  133. data/lib/elastic/workplace-search/api/triggers_blocklist.rb +0 -1
  134. data/rake_tasks/unified_release_tasks.rake +21 -0
  135. data/spec/app-search/client_spec.rb +1 -28
  136. data/spec/enterprise-search/client_spec.rb +1 -28
  137. data/spec/fixtures/vcr/workplace_search/create_analytics_event.yml +1 -1
  138. data/spec/fixtures/vcr/workplace_search/oauth_request_token.yml +1 -1
  139. data/spec/fixtures/vcr/workplace_search/search_request.yml +1 -1
  140. data/spec/integration/app-search/elasticsearch_search_spec.rb +17 -3
  141. data/spec/spec_helper.rb +34 -0
  142. data/spec/workplace-search/client_spec.rb +1 -28
  143. metadata +65 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 95fb62ab62fbcabaccdcdbebc1b8caf15fbfe6ca1cec388af5778da738ce0aff
4
- data.tar.gz: 1ce82e08b5ab98ea8a0ea47076806b709e765b98b01d6ecb1c1a3284b3660922
3
+ metadata.gz: 370baa568c7b78d3fa58a0c322732c106163b3f91845841287b968966ca70717
4
+ data.tar.gz: 76108e767bc9e72f6ca6c981629f69a8c9e99106b07dc460761aaf089be4c86a
5
5
  SHA512:
6
- metadata.gz: 6681c1fb77c29e120cc726345bc97e244aada238720255ad375bf8e6447beb31b4bbeb6283f4153196c6be42f8a807e1b234dd3caa064d5d2fd4da021965e800
7
- data.tar.gz: df33f6629dcf8b0ec537b47619fbcce2327cb715a69536df22ed6693429948874c49f2728504a0ae11c351d73020865f77e42ca3addfe0226ba7e1ce570da021
6
+ metadata.gz: 17ebc4758f08ae8a5e198d02fa45016525f080d8cc357b9a3b5ad82b2b208c89e5534e05f61e784cccc4ab4b9d30c79e6737845f52cd25bc1741ceff95bc893e
7
+ data.tar.gz: 0252bf54a1828983f1a8daac3ae4fb123a814aaa4f9d195df7284cea265542cb370242c71dd5fb9c2832f81650e5b17f3b58da8ae585fc08e5e7aff03881b7a3
data/.ci/Dockerfile CHANGED
@@ -1,12 +1,25 @@
1
1
  ARG RUBY_VERSION=2.7
2
2
  FROM ruby:${RUBY_VERSION}
3
3
 
4
+ # Default UID/GID to 1000
5
+ # it can be overridden at build time
6
+ ARG BUILDER_UID=1000
7
+ ARG BUILDER_GID=1000
8
+ ENV BUILDER_USER elastic
9
+ ENV BUILDER_GROUP elastic
10
+
4
11
  ENV GEM_HOME="/usr/local/bundle"
5
12
  ENV PATH $GEM_HOME/bin:$GEM_HOME/gems/bin:$PATH
6
13
  ENV QUIET=true
7
14
  ENV CI=true
8
15
 
16
+ # Create user
17
+ RUN groupadd --system -g ${BUILDER_GID} ${BUILDER_GROUP} \
18
+ && useradd --system --shell /bin/bash -u ${BUILDER_UID} -g ${BUILDER_GROUP} -d /var/lib/elastic -m elastic 1>/dev/null 2>/dev/null \
19
+ && mkdir -p /code/enterprise-search-ruby && touch /Gemfile.lock \
20
+ && chown -R ${BUILDER_USER}:${BUILDER_GROUP} /code/enterprise-search-ruby /Gemfile.lock
21
+
9
22
  WORKDIR /code/enterprise-search-ruby
10
23
 
11
- COPY . .
24
+ COPY --chown=$BUILDER_USER:$BUILDER_GROUP . .
12
25
  RUN bundle install
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  - job:
3
- name: elastic+enterprise-search-ruby+8.0
4
- display-name: 'elastic / enterprise-search-ruby # 8.0'
5
- description: Testing the enterprise-search-ruby 8.0 branch.
3
+ name: elastic+enterprise-search-ruby+8.3
4
+ display-name: 'elastic / enterprise-search-ruby # 8.3'
5
+ description: Testing the enterprise-search-ruby 8.3 branch.
6
6
  junit_results: "*-junit.xml"
7
7
  parameters:
8
8
  - string:
9
9
  name: branch_specifier
10
- default: refs/heads/8.0
10
+ default: refs/heads/8.3
11
11
  description: the Git branch specifier to build (<branchName>, <tagName>,
12
12
  <commitId>, etc.)
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  - job:
3
- name: elastic+enterprise-search-ruby+8.1
4
- display-name: 'elastic / enterprise-search-ruby # 8.1'
5
- description: Testing the enterprise-search-ruby 8.1 branch.
3
+ name: elastic+enterprise-search-ruby+8.4
4
+ display-name: 'elastic / enterprise-search-ruby # 8.4'
5
+ description: Testing the enterprise-search-ruby 8.4 branch.
6
6
  junit_results: "*-junit.xml"
7
7
  parameters:
8
8
  - string:
9
9
  name: branch_specifier
10
- default: refs/heads/8.1
10
+ default: refs/heads/8.4
11
11
  description: the Git branch specifier to build (<branchName>, <tagName>,
12
12
  <commitId>, etc.)
data/.ci/make.sh CHANGED
@@ -113,6 +113,7 @@ esac
113
113
  echo -e "\033[34;1mINFO: building $product container\033[0m"
114
114
 
115
115
  docker build --file .ci/Dockerfile --tag ${product} \
116
+ --build-arg BUILDER_UID="$(id -u)" \
116
117
  --build-arg USER_ID="$(id -u)" \
117
118
  --build-arg GROUP_ID="$(id -g)" .
118
119
 
@@ -128,10 +129,11 @@ args_string="${TASK_ARGS[*]}"
128
129
  args_string="${args_string// /,}"
129
130
 
130
131
  docker run \
132
+ -u "$(id -u)" \
131
133
  --env "RUBY_TEST_VERSION=${RUBY_TEST_VERSION}" \
132
134
  --name test-runner \
133
135
  --volume $REPO_BINDING \
134
- --volume $repo:/usr/src/app \
136
+ --volume $repo:/code/enterprise-search-ruby \
135
137
  --rm \
136
138
  $product \
137
139
  bundle exec rake unified_release:"$TASK"["$args_string"]
data/.ci/test-matrix.yml CHANGED
@@ -5,7 +5,7 @@ RUBY_VERSION:
5
5
  - 2.7
6
6
 
7
7
  STACK_VERSION:
8
- - 8.3-SNAPSHOT
8
+ - 8.5.0-SNAPSHOT
9
9
 
10
10
  SERVICE:
11
11
  - appsearch
@@ -11,5 +11,5 @@ jobs:
11
11
  ruby-version: 2.7
12
12
  - name: Run Rubocop
13
13
  run: |
14
- bundle install
15
- bundle exec rubocop
14
+ gem install rubocop
15
+ rubocop
@@ -16,6 +16,8 @@ jobs:
16
16
  ruby-version: ${{ matrix.ruby }}
17
17
  - name: Build and test with Rake
18
18
  run: |
19
+ sudo apt-get update
20
+ sudo apt-get install libcurl4-openssl-dev
19
21
  ruby -v
20
22
  bundle install
21
23
  bundle exec rake spec:client
data/README.md CHANGED
@@ -34,7 +34,7 @@ If an adapter is not specified, the client will try to auto-detect available lib
34
34
 
35
35
  [See the documentation](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/index.html) for usage, code examples, configuring the client, and an API reference.
36
36
 
37
- See code examples of usage for the [Enteprise Search](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/enterprise-search-api.html), [App Search](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/app-search-api.html) and [Workplace Search](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/workplace-search-api.html) APIs.
37
+ See code examples of usage for the [Enterprise Search](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/enterprise-search-api.html), [App Search](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/app-search-api.html) and [Workplace Search](https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/workplace-search-api.html) APIs.
38
38
 
39
39
  ## Compatibility
40
40
 
@@ -338,12 +338,13 @@ client.refresh_adaptive_relevance_update_process(engine_name, adaptive_relevance
338
338
 
339
339
  === Elasticsearch Search
340
340
 
341
- Utilize the API to passthrough and execute raw Elasticsearch queries against the indices that power Enterprise Search engines.
341
+ Submit an Elasticsearch search request to the document indices that power an App Search engine and retrieve the results. You can use this API with regular engines and meta engines. See https://www.elastic.co/guide/en/app-search/current/elasticsearch-search-api-reference.html[Elasticsearch search API for App Search] for more information and requirements for using this API.
342
+
342
343
 
343
344
  [source,rb]
344
345
  ----------------------------
345
- es_request = { body: { query: { bool: { must: { term: { title: 'test' } } } } } }
346
- client.search_es_search(engine_name, body: { request: es_request })
346
+ es_request = { query: { bool: { must: { term: { title: 'test' } } } } }
347
+ client.search_es_search(engine_name, body: es_request)
347
348
  ----------------------------
348
349
 
349
350
  === Search Explain
@@ -5,7 +5,7 @@ You can install Enterprise Search Client from Rubygems:
5
5
 
6
6
  [source,sh]
7
7
  ---------------------------------------------------
8
- $ gem install elastic-enterprise-search --pre
8
+ $ gem install elastic-enterprise-search
9
9
  ---------------------------------------------------
10
10
 
11
11
  Or add it to your project's Gemfile:
@@ -15,4 +15,4 @@ Or add it to your project's Gemfile:
15
15
  gem 'elastic-enterprise-search'
16
16
  ---------------------------------------------------
17
17
 
18
- The version follows the Elastic Stack version so 7.10.0 is compatible with Enterprise Search released in Elastic Stack 7.10.0.
18
+ The version follows the Elastic Stack version so 7.10.0 is compatible with Enterprise Search released in Elastic Stack 7.10.0, 8.1.0 is compatible with Enterprise Search released in Elastic Stack 8.1.0, and so on.
@@ -17,7 +17,7 @@ The library is compatible with all Elastic Enterprise Search versions since `7.x
17
17
  [discrete]
18
18
  === HTTP Library
19
19
 
20
- This library uses https://github.com/elastic/elastic-transport-ruby[elastic-transport], the low-level Ruby client for connecting to an Elastic clusters - also used in the official https://github.com/elastic/elasticsearch-ruby[Elasticsearch Ruby Client]. It uses https://rubygems.org/gems/faraday[Faraday], which supports several https://lostisland.github.io/faraday/adapters/[adapters] and will use `Net::HTTP` by default. For optimal performance with the Enterprise Search API, we suggest using an HTTP library which supports persistent ("keep-alive") connections. For the standard Ruby implementation, this could be https://github.com/drbrain/net-http-persistent[Net::HTTP::Persistent], https://github.com/toland/patron[patron] or https://github.com/typhoeus/typhoeus[Typhoeus]. For JRuby, https://github.com/cheald/manticore[Manticore] is a great option as well. Require the library for the adapter in your code and then pass in the `:adapter` parameter to the client when you initialize it:
20
+ This library uses https://github.com/elastic/elastic-transport-ruby[elastic-transport], the low-level Ruby client for connecting to an Elastic cluster - also used in the official https://github.com/elastic/elasticsearch-ruby[Elasticsearch Ruby Client]. It uses https://rubygems.org/gems/faraday[Faraday], which supports several https://lostisland.github.io/faraday/adapters/[adapters] and will use `Net::HTTP` by default. For optimal performance with the Enterprise Search API, we suggest using an HTTP library which supports persistent ("keep-alive") connections. For the standard Ruby implementation, this could be https://github.com/drbrain/net-http-persistent[Net::HTTP::Persistent], https://github.com/toland/patron[patron] or https://github.com/typhoeus/typhoeus[Typhoeus]. For JRuby, https://github.com/cheald/manticore[Manticore] is a great option as well. Require the library for the adapter in your code and then pass in the `:adapter` parameter to the client when you initialize it:
21
21
 
22
22
  [source,ruby]
23
23
  ---------------------------------------------------
@@ -41,7 +41,7 @@ If you don't specify a host and port, the client will default to `http://localho
41
41
  [discrete]
42
42
  === Logging
43
43
 
44
- You can enable logging with the default logger by passing `log: true` as a parameter to the client's initializer, or pass in a Logger object with the `:logger` parameter, any confoming logger implementation:
44
+ You can enable logging with the default logger by passing `log: true` as a parameter to the client's initializer. You can also pass in a Logger object with the `:logger` parameter, any confoming logger implementation will work:
45
45
 
46
46
  [source,rb]
47
47
  ----------------------------
@@ -0,0 +1,14 @@
1
+ [[release_notes_83]]
2
+ === 8.3 Release notes
3
+
4
+ [discrete]
5
+ [[release_notes_830]]
6
+ === 8.3.0 Release notes
7
+
8
+ - Tested versions of Ruby for 8.3.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
9
+ - General small improvements in documentation.
10
+ - Updated for compatibility with Elastic Enterprise Search 8.3's API.
11
+
12
+ [discrete]
13
+ ==== Enterprise Search
14
+ New API: `search_engines` - Retrieve information about search engines
@@ -0,0 +1,36 @@
1
+ [[release_notes_84]]
2
+ === 8.4 Release notes
3
+
4
+ [discrete]
5
+ [[release_notes_840]]
6
+ === 8.4.0 Release notes
7
+
8
+ - Tested versions of Ruby for 8.4.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
9
+ - Updated for compatibility with Elastic Enterprise Search 8.4's API.
10
+ - Fixed client name String in meta header
11
+
12
+ ==== Changes to Elasticsearch Search in App Search
13
+
14
+ [CAUTION]
15
+ ====
16
+ The Elasticsearch search API for App Search is a beta feature. Beta features are subject to change and are not covered by the support SLA of generally available (GA) features. Elastic plans to promote this feature to GA in a future release.
17
+ ====
18
+
19
+ The Elasticsearch Search API `search_es_search` has been updated to be more consistent with the Elasticsearch `_search` API.
20
+
21
+ In the previous version, a `request` object was required in the request:
22
+
23
+ [source,rb]
24
+ ----------------------------
25
+ # DEPRECATED - This worked for 8.3 but has been updated in 8.4:
26
+ es_request = { body: { query: { bool: { must: { term: { title: 'test' } } } } } }
27
+ client.search_es_search(engine_name, body: { request: es_request })
28
+ ----------------------------
29
+
30
+ This has been simplified to:
31
+
32
+ [source,rb]
33
+ ----------------------------
34
+ es_request = { query: { bool: { must: { term: { title: 'test' } } } } }
35
+ client.search_es_search(engine_name, body: es_request)
36
+ ----------------------------
@@ -0,0 +1,40 @@
1
+ [[release_notes_85]]
2
+ === 8.5 Release notes
3
+
4
+ [discrete]
5
+ [[release_notes_850]]
6
+ === 8.5.0 Release notes
7
+
8
+ ==== Client
9
+ - Updates dependency on `elastic-transport`. With the latest release of `elastic-transport` - `v8.1.0` - this gem now supports Faraday v2. 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.
10
+
11
+ These are the gems required for the different adapters with Faraday 2, instead of the libraries on which they were based:
12
+
13
+ [source,rb]
14
+ ----------------------------
15
+ # HTTPCLient
16
+ gem 'faraday-httpclient'
17
+ # NetHTTPPersistent
18
+ gem 'faraday-net_http_persistent'
19
+ # Patron
20
+ gem 'faraday-patron'
21
+ # Typhoeus
22
+ gem 'faraday-typhoeus'
23
+ ----------------------------
24
+
25
+ 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:
26
+ `gem 'faraday', '~> 1'`
27
+
28
+ *Troubleshooting*
29
+
30
+ If you see a message like:
31
+ `:adapter is not registered on Faraday::Adapter (Faraday::Error)`
32
+ Then you probably need to include the adapter library in your gemfile and require it.
33
+
34
+ Please https://github.com/elastic/enterprise-search-ruby/issues[submit an issue] if you encounter any problems.
35
+
36
+ [discrete]
37
+ ==== App Search
38
+
39
+ - Adds `precision_enabled` (Boolean) to `put_search_settings`. See https://www.elastic.co/guide/en/app-search/current/search-settings.html#search-settings-update[here] for more information.
40
+ - `search_es_search` and `search_explain` changed the path to `api/as/v1` instead of `v0` and are now GA with version `8.5` of the stack.
@@ -4,6 +4,9 @@
4
4
  [discrete]
5
5
  === 8.x
6
6
 
7
+ * <<release_notes_85, 8.5.0 Release Notes>>
8
+ * <<release_notes_84, 8.4.0 Release Notes>>
9
+ * <<release_notes_83, 8.3.0 Release Notes>>
7
10
  * <<release_notes_82, 8.2.0 Release Notes>>
8
11
  * <<release_notes_81, 8.1.0 Release Notes>>
9
12
  * <<release_notes_80, 8.0.0 Release Notes>>
@@ -20,6 +23,9 @@
20
23
  * <<release_notes_711, 7.11.0 Release Notes>>
21
24
  * <<release_notes_710, 7.10.0.beta.1 Release Notes>>
22
25
 
26
+ include::85.asciidoc[]
27
+ include::84.asciidoc[]
28
+ include::83.asciidoc[]
23
29
  include::82.asciidoc[]
24
30
  include::81.asciidoc[]
25
31
  include::80.asciidoc[]
@@ -47,7 +47,7 @@ Gem::Specification.new do |s|
47
47
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
48
48
  s.require_paths = ['lib']
49
49
 
50
- s.add_dependency 'elastic-transport', '~> 8'
50
+ s.add_dependency 'elastic-transport', '~> 8.1'
51
51
  s.add_runtime_dependency 'jwt', '>= 1.5', '< 3.0'
52
52
  s.add_development_dependency 'awesome_print'
53
53
  s.add_development_dependency 'byebug' unless defined?(JRUBY_VERSION)
@@ -56,5 +56,10 @@ Gem::Specification.new do |s|
56
56
  s.add_development_dependency 'rubocop', '~> 1'
57
57
  s.add_development_dependency 'vcr', '~> 3.0.3'
58
58
  s.add_development_dependency 'webmock'
59
+ # Adapters
60
+ s.add_development_dependency 'faraday-httpclient'
61
+ s.add_development_dependency 'faraday-net_http_persistent'
62
+ s.add_development_dependency 'faraday-patron' unless defined? JRUBY_VERSION
63
+ s.add_development_dependency 'faraday-typhoeus'
59
64
  end
60
65
  # rubocop:enable Metrics/BlockLength
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # AdaptiveRelevanceSettings - Retrieve adaptive relevance settings
26
25
  # Retrieve adaptive relevance settings
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # AdaptiveRelevanceSuggestions - Retrieve adaptive relevance
26
25
  # Retrieve adaptive relevance for a single query
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Engines - Add a source engine
26
25
  # Adds a source engine to a given meta engine
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Credentials - Retrieve an API key
26
25
  # Retrieves details of an API key
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # APILogs - Retrieve API logs
26
25
  # The API Log displays API request and response data at the Engine level
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Analytics - Query for analytics counts data
26
25
  # Returns the number of clicks and total number of queries over a period
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Get active crawl request details
26
25
  # Returns active crawl request details.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Get crawl request details
26
25
  # Returns crawl request details.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Get crawl schedule
26
25
  # Returns the current crawl schedule for a given engine
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Get domain configuration
26
25
  # Returns crawler domain configuration details
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Validate Domain with Crawler
26
25
  # Performs a number of checks on a given domain name to make sure it is ready to be crawled and ingested into App Search.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Retrieve a snapshot of crawler metrics
26
25
  # Retrieves a momentary snapshot of key crawler metrics, including global and node-level crawler health
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Retrieve crawler configuration overview
26
25
  # Retrieves crawler configuration overview of a given engine, including configured domains
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Get process crawl details
26
25
  # Returns process crawl details.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - View denied urls for Process Crawl
26
25
  # Provides a sample list of urls identified for deletion by the given process crawl id.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Extract content from a URL
26
25
  # Performs an HTTP request to a given URL and extracts content from the page using standard App Search Crawler extraction pipeline.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Trace a history of a crawled URL
26
25
  # Returns information about the history of a given URL with the App Search Crawler.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Validate URL with Crawler
26
25
  # Performs a number of checks on a given URL to make sure it is ready to be crawled and ingested into App Search.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Get the User-Agent header value for the crawler
26
25
  # Retrieves the currently configured value for the User-Agent header used for all Crawler HTTP requests
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Credentials - Create an API key
26
25
  # Creates an App Search API key
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Create a crawl request
26
25
  # Creates a request to perform a crawl of a given engine with the Crawler.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Create a crawl rule
26
25
  # Creates a crawl rule for a given engine and domain
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Create a crawler domain
26
25
  # Creates a crawler domain configuration for a given engine
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Create a crawler entry point
26
25
  # Creates a crawler domain entry point for a given engine and domain
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Create a process crawl
26
25
  # Queues a task to reprocess crawled documents with current crawl configuration
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Create a crawler sitemap
26
25
  # Creates a crawler sitemap configuration for a given engine and domain
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Curations - Create a new curation
26
25
  # Create a new curation for the engine
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Engines - Create an Engine
26
25
  # Creates an App Search Engine
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Synonyms - Create a synonym set
26
25
  # Creates a new synonym set for the engine
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Curations - Retrieve a curation
26
25
  # Retrieves a curation by ID
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Credentials - Delete an API key
26
25
  # Deletes a given API key
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Cancel an active crawl request
26
25
  # Cancels an active crawl request, stopping a running crawl if needed.
@@ -20,7 +20,6 @@
20
20
  module Elastic
21
21
  module EnterpriseSearch
22
22
  module AppSearch
23
- # Generated from build hash 835a1a87f357f7b7cfd3453b5c5a937c47995772
24
23
  module Actions
25
24
  # Crawler - Delete a crawl rule
26
25
  # Deletes a crawl rule from a given domain