searchkick 2.3.2 → 5.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +377 -84
- data/LICENSE.txt +1 -1
- data/README.md +859 -602
- data/lib/searchkick/bulk_reindex_job.rb +13 -9
- data/lib/searchkick/controller_runtime.rb +40 -0
- data/lib/searchkick/hash_wrapper.rb +12 -0
- data/lib/searchkick/index.rb +281 -356
- data/lib/searchkick/index_cache.rb +30 -0
- data/lib/searchkick/index_options.rb +487 -281
- data/lib/searchkick/indexer.rb +15 -8
- data/lib/searchkick/log_subscriber.rb +57 -0
- data/lib/searchkick/middleware.rb +9 -2
- data/lib/searchkick/model.rb +72 -118
- data/lib/searchkick/multi_search.rb +9 -10
- data/lib/searchkick/process_batch_job.rb +12 -15
- data/lib/searchkick/process_queue_job.rb +22 -13
- data/lib/searchkick/query.rb +458 -217
- data/lib/searchkick/railtie.rb +7 -0
- data/lib/searchkick/record_data.rb +128 -0
- data/lib/searchkick/record_indexer.rb +164 -0
- data/lib/searchkick/reindex_queue.rb +51 -9
- data/lib/searchkick/reindex_v2_job.rb +10 -32
- data/lib/searchkick/relation.rb +247 -0
- data/lib/searchkick/relation_indexer.rb +155 -0
- data/lib/searchkick/results.rb +201 -82
- data/lib/searchkick/version.rb +1 -1
- data/lib/searchkick/where.rb +11 -0
- data/lib/searchkick.rb +269 -97
- data/lib/tasks/searchkick.rake +37 -0
- metadata +24 -178
- data/.gitignore +0 -22
- data/.travis.yml +0 -39
- data/Gemfile +0 -16
- data/Rakefile +0 -20
- data/benchmark/Gemfile +0 -23
- data/benchmark/benchmark.rb +0 -97
- data/lib/searchkick/logging.rb +0 -242
- data/lib/searchkick/tasks.rb +0 -33
- data/searchkick.gemspec +0 -28
- data/test/aggs_test.rb +0 -197
- data/test/autocomplete_test.rb +0 -75
- data/test/boost_test.rb +0 -202
- data/test/callbacks_test.rb +0 -59
- data/test/ci/before_install.sh +0 -17
- data/test/errors_test.rb +0 -19
- data/test/gemfiles/activerecord31.gemfile +0 -7
- data/test/gemfiles/activerecord32.gemfile +0 -7
- data/test/gemfiles/activerecord40.gemfile +0 -8
- data/test/gemfiles/activerecord41.gemfile +0 -8
- data/test/gemfiles/activerecord42.gemfile +0 -7
- data/test/gemfiles/activerecord50.gemfile +0 -7
- data/test/gemfiles/apartment.gemfile +0 -8
- data/test/gemfiles/cequel.gemfile +0 -8
- data/test/gemfiles/mongoid2.gemfile +0 -7
- data/test/gemfiles/mongoid3.gemfile +0 -6
- data/test/gemfiles/mongoid4.gemfile +0 -7
- data/test/gemfiles/mongoid5.gemfile +0 -7
- data/test/gemfiles/mongoid6.gemfile +0 -12
- data/test/gemfiles/nobrainer.gemfile +0 -8
- data/test/gemfiles/parallel_tests.gemfile +0 -8
- data/test/geo_shape_test.rb +0 -175
- data/test/highlight_test.rb +0 -78
- data/test/index_test.rb +0 -166
- data/test/inheritance_test.rb +0 -83
- data/test/marshal_test.rb +0 -8
- data/test/match_test.rb +0 -276
- data/test/misspellings_test.rb +0 -56
- data/test/model_test.rb +0 -42
- data/test/multi_search_test.rb +0 -36
- data/test/multi_tenancy_test.rb +0 -22
- data/test/order_test.rb +0 -46
- data/test/pagination_test.rb +0 -70
- data/test/partial_reindex_test.rb +0 -58
- data/test/query_test.rb +0 -35
- data/test/records_test.rb +0 -10
- data/test/reindex_test.rb +0 -64
- data/test/reindex_v2_job_test.rb +0 -32
- data/test/routing_test.rb +0 -23
- data/test/should_index_test.rb +0 -32
- data/test/similar_test.rb +0 -28
- data/test/sql_test.rb +0 -214
- data/test/suggest_test.rb +0 -95
- data/test/support/kaminari.yml +0 -21
- data/test/synonyms_test.rb +0 -67
- data/test/test_helper.rb +0 -567
- data/test/where_test.rb +0 -223
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,297 @@
|
|
1
|
-
## 2.
|
1
|
+
## 5.2.1 (2023-02-21)
|
2
|
+
|
3
|
+
- Added support for `redis-client` gem
|
4
|
+
|
5
|
+
## 5.2.0 (2023-02-08)
|
6
|
+
|
7
|
+
- Added model name to warning about missing records
|
8
|
+
- Fixed unnecessary data loading when reindexing relations with `:async` and `:queue` modes
|
9
|
+
|
10
|
+
## 5.1.2 (2023-01-29)
|
11
|
+
|
12
|
+
- Fixed error with missing point in time
|
13
|
+
|
14
|
+
## 5.1.1 (2022-12-05)
|
15
|
+
|
16
|
+
- Added support for strings for `offset` and `per_page`
|
17
|
+
|
18
|
+
## 5.1.0 (2022-10-12)
|
19
|
+
|
20
|
+
- Added support for fractional search timeout
|
21
|
+
- Fixed search timeout with `elasticsearch` 8+ and `opensearch-ruby` gems
|
22
|
+
- Fixed search timeout not applying to `multi_search`
|
23
|
+
|
24
|
+
## 5.0.5 (2022-10-09)
|
25
|
+
|
26
|
+
- Added `model` method to `Searchkick::Relation`
|
27
|
+
- Fixed deprecation warning with `redis` gem
|
28
|
+
- Fixed `respond_to?` method on relation loading relation
|
29
|
+
- Fixed `Relation loaded` error for non-mutating methods on relation
|
30
|
+
|
31
|
+
## 5.0.4 (2022-06-16)
|
32
|
+
|
33
|
+
- Added `max_result_window` option
|
34
|
+
- Improved error message for unsupported versions of Elasticsearch
|
35
|
+
|
36
|
+
## 5.0.3 (2022-03-13)
|
37
|
+
|
38
|
+
- Fixed context for index name for inherited models
|
39
|
+
|
40
|
+
## 5.0.2 (2022-03-03)
|
41
|
+
|
42
|
+
- Fixed index name for inherited models
|
43
|
+
|
44
|
+
## 5.0.1 (2022-02-27)
|
45
|
+
|
46
|
+
- Prefer `mode: :async` over `async: true` for full reindex
|
47
|
+
- Fixed instance method overriding with concerns
|
48
|
+
|
49
|
+
## 5.0.0 (2022-02-21)
|
50
|
+
|
51
|
+
- Searches now use lazy loading (similar to Active Record)
|
52
|
+
- Added `unscope` option to better support working with default scopes
|
53
|
+
- Added support for `:async` and `:queue` modes for `reindex` on relation
|
54
|
+
- Added basic protection from unfiltered parameters to `where` option
|
55
|
+
- Added `models` option to `similar` method
|
56
|
+
- Changed async full reindex to fetch ids instead of using ranges for numeric primary keys with Active Record
|
57
|
+
- Changed `searchkick_index_options` to return symbol keys (instead of mix of strings and symbols)
|
58
|
+
- Changed non-anchored regular expressions to match expected results (previously warned)
|
59
|
+
- Changed record reindex to return `true` to match model and relation reindex
|
60
|
+
- Updated async reindex job to call `search_import` for nested associations
|
61
|
+
- Fixed removing records when `should_index?` is `false` when `reindex` called on relation
|
62
|
+
- Fixed issue with `merge_mappings` for fields that use `searchkick` options
|
63
|
+
- Raise error when `search` called on relations
|
64
|
+
- Raise `ArgumentError` (instead of warning) for invalid regular expression modifiers
|
65
|
+
- Raise `ArgumentError` instead of `RuntimeError` for unknown operators
|
66
|
+
- Removed mapping of `id` to `_id` with `order` option (not supported in Elasticsearch 8)
|
67
|
+
- Removed `wordnet` option (no longer worked)
|
68
|
+
- Removed dependency on `elasticsearch` gem (can use `elasticsearch` or `opensearch-ruby`)
|
69
|
+
- Dropped support for Elasticsearch 6
|
70
|
+
- Dropped support for Ruby < 2.6 and Active Record < 5.2
|
71
|
+
- Dropped support for NoBrainer and Cequel
|
72
|
+
- Dropped support for `faraday_middleware-aws-signers-v4` (use `faraday_middleware-aws-sigv4` instead)
|
73
|
+
|
74
|
+
## 4.6.3 (2021-11-19)
|
75
|
+
|
76
|
+
- Added support for reloadable synonyms for OpenSearch
|
77
|
+
- Added experimental support for `opensearch-ruby` gem
|
78
|
+
- Removed `elasticsearch-xpack` dependency for reloadable synonyms
|
79
|
+
|
80
|
+
## 4.6.2 (2021-11-15)
|
81
|
+
|
82
|
+
- Added support for beginless ranges to `where` option
|
83
|
+
- Fixed `like` and `ilike` with `+` character
|
84
|
+
- Fixed warning about accessing system indices when no model or index specified
|
85
|
+
|
86
|
+
## 4.6.1 (2021-09-25)
|
87
|
+
|
88
|
+
- Added `ilike` operator for Elasticsearch 7.10+
|
89
|
+
- Fixed missing methods with `multi_search`
|
90
|
+
|
91
|
+
## 4.6.0 (2021-08-22)
|
92
|
+
|
93
|
+
- Added support for case-insensitive regular expressions with Elasticsearch 7.10+
|
94
|
+
- Added support for `OPENSEARCH_URL`
|
95
|
+
- Fixed error with `debug` option
|
96
|
+
|
97
|
+
## 4.5.2 (2021-08-05)
|
98
|
+
|
99
|
+
- Fixed error with reindex queue
|
100
|
+
- Fixed error with `model_name` method with multiple models
|
101
|
+
- Fixed error with `debug` option with elasticsearch-ruby 7.14
|
102
|
+
|
103
|
+
## 4.5.1 (2021-08-03)
|
104
|
+
|
105
|
+
- Improved performance of reindex queue
|
106
|
+
|
107
|
+
## 4.5.0 (2021-06-07)
|
108
|
+
|
109
|
+
- Added experimental support for OpenSearch
|
110
|
+
- Added support for synonyms in Japanese
|
111
|
+
|
112
|
+
## 4.4.4 (2021-03-12)
|
113
|
+
|
114
|
+
- Fixed `too_long_frame_exception` with `scroll` method
|
115
|
+
- Fixed multi-word emoji tokenization
|
116
|
+
|
117
|
+
## 4.4.3 (2021-02-25)
|
118
|
+
|
119
|
+
- Added support for Hunspell
|
120
|
+
- Fixed warning about accessing system indices
|
121
|
+
|
122
|
+
## 4.4.2 (2020-11-23)
|
123
|
+
|
124
|
+
- Added `missing_records` method to results
|
125
|
+
- Fixed issue with `like` and special characters
|
126
|
+
|
127
|
+
## 4.4.1 (2020-06-24)
|
128
|
+
|
129
|
+
- Added `stem_exclusion` and `stemmer_override` options
|
130
|
+
- Added `with_score` method to search results
|
131
|
+
- Improved error message for `reload_synonyms` with non-OSS version of Elasticsearch
|
132
|
+
- Improved output for reindex rake task
|
133
|
+
|
134
|
+
## 4.4.0 (2020-06-17)
|
135
|
+
|
136
|
+
- Added support for reloadable, multi-word, search time synonyms
|
137
|
+
- Fixed another deprecation warning in Ruby 2.7
|
138
|
+
|
139
|
+
## 4.3.1 (2020-05-13)
|
140
|
+
|
141
|
+
- Fixed error with `exclude` in certain cases for Elasticsearch 7.7
|
142
|
+
|
143
|
+
## 4.3.0 (2020-02-19)
|
144
|
+
|
145
|
+
- Fixed `like` queries with `"` character
|
146
|
+
- Better error when invalid parameters passed to `where`
|
147
|
+
|
148
|
+
## 4.2.1 (2020-01-27)
|
149
|
+
|
150
|
+
- Fixed deprecation warnings with Elasticsearch
|
151
|
+
- Fixed deprecation warnings in Ruby 2.7
|
152
|
+
|
153
|
+
## 4.2.0 (2019-12-18)
|
154
|
+
|
155
|
+
- Added safety check for multiple `Model.reindex`
|
156
|
+
- Added `deep_paging` option
|
157
|
+
- Added request parameters to search notifications and curl representation
|
158
|
+
- Removed curl from search notifications to prevent confusion
|
159
|
+
|
160
|
+
## 4.1.1 (2019-11-19)
|
161
|
+
|
162
|
+
- Added `chinese2` and `korean2` languages
|
163
|
+
- Improved performance of async full reindex
|
164
|
+
- Fixed `searchkick:reindex:all` rake task for Rails 6
|
165
|
+
|
166
|
+
## 4.1.0 (2019-08-01)
|
167
|
+
|
168
|
+
- Added `like` operator
|
169
|
+
- Added `exists` operator
|
170
|
+
- Added warnings for certain regular expressions
|
171
|
+
- Fixed anchored regular expressions
|
172
|
+
|
173
|
+
## 4.0.2 (2019-06-04)
|
174
|
+
|
175
|
+
- Added block form of `scroll`
|
176
|
+
- Added `clear_scroll` method
|
177
|
+
- Fixed custom mappings
|
178
|
+
|
179
|
+
## 4.0.1 (2019-05-30)
|
180
|
+
|
181
|
+
- Added support for scroll API
|
182
|
+
- Made type optional for custom mapping for Elasticsearch 6
|
183
|
+
- Fixed error when suggestions empty
|
184
|
+
- Fixed `models` option with inheritance
|
185
|
+
|
186
|
+
## 4.0.0 (2019-04-11)
|
187
|
+
|
188
|
+
- Added support for Elasticsearch 7
|
189
|
+
- Added `models` option
|
190
|
+
|
191
|
+
Breaking changes
|
192
|
+
|
193
|
+
- Removed support for Elasticsearch 5
|
194
|
+
- Removed support for multi-word synonyms (they no longer work with shingles)
|
195
|
+
- Removed support for Active Record < 5
|
196
|
+
|
197
|
+
## 3.1.3 (2019-04-11)
|
198
|
+
|
199
|
+
- Added support for endless ranges
|
200
|
+
- Added support for routing to `similar` method
|
201
|
+
- Added `prefix` to `where`
|
202
|
+
- Fixed error with elasticsearch-ruby 6.3
|
203
|
+
- Fixed error with some language stemmers and Elasticsearch 6.5
|
204
|
+
- Fixed issue with misspellings below and body block
|
205
|
+
|
206
|
+
## 3.1.2 (2018-09-27)
|
207
|
+
|
208
|
+
- Improved performance of indices boost
|
209
|
+
- Fixed deletes with routing and `async` callbacks
|
210
|
+
- Fixed deletes with routing and `queue` callbacks
|
211
|
+
- Fixed deprecation warnings
|
212
|
+
- Fixed field misspellings for older partial match format
|
213
|
+
|
214
|
+
## 3.1.1 (2018-08-09)
|
215
|
+
|
216
|
+
- Added per-field misspellings
|
217
|
+
- Added `case_sensitive` option
|
218
|
+
- Added `stem` option
|
219
|
+
- Added `total_entries` option
|
220
|
+
- Fixed `exclude` option with match all
|
221
|
+
- Fixed `with_highlights` method
|
222
|
+
|
223
|
+
## 3.1.0 (2018-05-12)
|
224
|
+
|
225
|
+
- Added `:inline` as alias for `true` for `callbacks` and `mode` options
|
226
|
+
- Friendlier error message for bad mapping with partial matches
|
227
|
+
- Warn when records in search index do not exist in database
|
228
|
+
- Easier merging for `merge_mapping`
|
229
|
+
- Fixed `with_hit` and `with_highlights` when records in search index do not exist in database
|
230
|
+
- Fixed error with highlights and match all
|
231
|
+
|
232
|
+
## 3.0.3 (2018-04-22)
|
233
|
+
|
234
|
+
- Added support for pagination with `body` option
|
235
|
+
- Added `boost_by_recency` option
|
236
|
+
- Fixed "Model Search Data" output for `debug` option
|
237
|
+
- Fixed `reindex_status` error
|
238
|
+
- Fixed error with optional operators in Ruby regexp
|
239
|
+
- Fixed deprecation warnings for Elasticsearch 6.2+
|
240
|
+
|
241
|
+
## 3.0.2 (2018-03-26)
|
242
|
+
|
243
|
+
- Added support for Korean and Vietnamese
|
244
|
+
- Fixed `Unsupported argument type: Symbol` for async partial reindex
|
245
|
+
- Fixed infinite recursion with multi search and misspellings below
|
246
|
+
- Do not raise an error when `id` is indexed
|
247
|
+
|
248
|
+
## 3.0.1 (2018-03-14)
|
249
|
+
|
250
|
+
- Added `scope` option for partial reindex
|
251
|
+
- Added support for Japanese, Polish, and Ukrainian
|
252
|
+
|
253
|
+
## 3.0.0 (2018-03-03)
|
254
|
+
|
255
|
+
- Added support for Chinese
|
256
|
+
- No longer requires fields to query for Elasticsearch 6
|
257
|
+
- Results can be marshaled by default (unless using `highlight` option)
|
258
|
+
|
259
|
+
Breaking changes
|
260
|
+
|
261
|
+
- Removed support for Elasticsearch 2
|
262
|
+
- Removed support for Active Record < 4.2 and Mongoid < 5
|
263
|
+
- Types are no longer used
|
264
|
+
- The `_all` field is disabled by default in Elasticsearch 5
|
265
|
+
- Conversions are not stemmed by default
|
266
|
+
- An `ArgumentError` is raised instead of a warning when options are incompatible with the `body` option
|
267
|
+
- Removed `log` option from `boost_by`
|
268
|
+
- Removed `Model.enable_search_callbacks`, `Model.disable_search_callbacks`, and `Model.search_callbacks?`
|
269
|
+
- Removed `reindex_async` method, as `reindex` now defaults to callbacks mode specified on the model
|
270
|
+
- Removed `async` option from `record.reindex`
|
271
|
+
- Removed `search_hit` method - use `with_hit` instead
|
272
|
+
- Removed `each_with_hit` - use `with_hit.each` instead
|
273
|
+
- Removed `with_details` - use `with_highlights` instead
|
274
|
+
- Bumped default `limit` to 10,000
|
275
|
+
|
276
|
+
## 2.5.0 (2018-02-15)
|
277
|
+
|
278
|
+
- Try requests 3 times before raising error
|
279
|
+
- Better exception when trying to access results for failed multi-search query
|
280
|
+
- More efficient aggregations with `where` clauses
|
281
|
+
- Added support for `faraday_middleware-aws-sigv4`
|
282
|
+
- Added `credentials` option to `aws_credentials`
|
283
|
+
- Added `modifier` option to `boost_by`
|
284
|
+
- Added `scope_results` option
|
285
|
+
- Added `factor` option to `boost_by_distance`
|
286
|
+
|
287
|
+
## 2.4.0 (2017-11-14)
|
288
|
+
|
289
|
+
- Fixed `similar` for Elasticsearch 6
|
290
|
+
- Added `inheritance` option
|
291
|
+
- Added `_type` option
|
292
|
+
- Fixed `Must specify fields to search` error when searching `*`
|
293
|
+
|
294
|
+
## 2.3.2 (2017-09-08)
|
2
295
|
|
3
296
|
- Added `_all` and `default_fields` options
|
4
297
|
- Added global `index_prefix` option
|
@@ -10,14 +303,14 @@
|
|
10
303
|
- Fixed bug where `routing` and `type` options were silently ignored with `body` option
|
11
304
|
- Fixed `reindex(async: true)` for non-numeric primary keys in Postgres
|
12
305
|
|
13
|
-
## 2.3.1
|
306
|
+
## 2.3.1 (2017-07-06)
|
14
307
|
|
15
308
|
- Added support for `reindex(async: true)` for non-numeric primary keys
|
16
309
|
- Added `conversions_term` option
|
17
310
|
- Added support for passing fields to `suggest` option
|
18
311
|
- Fixed `page_view_entries` for Kaminari
|
19
312
|
|
20
|
-
## 2.3.0
|
313
|
+
## 2.3.0 (2017-05-06)
|
21
314
|
|
22
315
|
- Fixed analyzer on dynamically mapped fields
|
23
316
|
- Fixed error with `similar` method and `_all` field
|
@@ -25,54 +318,54 @@
|
|
25
318
|
- Added `queue_name` option
|
26
319
|
- No longer require synonyms to be lowercase
|
27
320
|
|
28
|
-
## 2.2.1
|
321
|
+
## 2.2.1 (2017-04-16)
|
29
322
|
|
30
323
|
- Added `avg`, `cardinality`, `max`, `min`, and `sum` aggregations
|
31
324
|
- Added `load: {dumpable: true}` option
|
32
325
|
- Added `index_suffix` option
|
33
326
|
- Accept string for `exclude` option
|
34
327
|
|
35
|
-
## 2.2.0
|
328
|
+
## 2.2.0 (2017-03-19)
|
36
329
|
|
37
330
|
- Fixed bug with text values longer than 256 characters and `_all` field - see [#850](https://github.com/ankane/searchkick/issues/850)
|
38
331
|
- Fixed issue with `_all` field in `searchable`
|
39
332
|
- Fixed `exclude` option with `word_start`
|
40
333
|
|
41
|
-
## 2.1.1
|
334
|
+
## 2.1.1 (2017-01-17)
|
42
335
|
|
43
336
|
- Fixed duplicate notifications
|
44
337
|
- Added support for `connection_pool`
|
45
338
|
- Added `exclude` option
|
46
339
|
|
47
|
-
## 2.1.0
|
340
|
+
## 2.1.0 (2017-01-15)
|
48
341
|
|
49
342
|
- Background reindexing and queues are officially supported
|
50
343
|
- Log updates and deletes
|
51
344
|
|
52
|
-
## 2.0.4
|
345
|
+
## 2.0.4 (2017-01-15)
|
53
346
|
|
54
347
|
- Added support for queuing updates [experimental]
|
55
348
|
- Added `refresh_interval` option to `reindex`
|
56
349
|
- Prefer `search_index` over `searchkick_index`
|
57
350
|
|
58
|
-
## 2.0.3
|
351
|
+
## 2.0.3 (2017-01-12)
|
59
352
|
|
60
353
|
- Added `async` option to `reindex` [experimental]
|
61
354
|
- Added `misspellings?` method to results
|
62
355
|
|
63
|
-
## 2.0.2
|
356
|
+
## 2.0.2 (2017-01-08)
|
64
357
|
|
65
358
|
- Added `retain` option to `reindex`
|
66
359
|
- Added support for attributes in highlight tags
|
67
360
|
- Fixed potentially silent errors in reindex job
|
68
361
|
- Improved syntax for `boost_by_distance`
|
69
362
|
|
70
|
-
## 2.0.1
|
363
|
+
## 2.0.1 (2016-12-30)
|
71
364
|
|
72
365
|
- Added `search_hit` and `search_highlights` methods to models
|
73
366
|
- Improved reindex performance
|
74
367
|
|
75
|
-
## 2.0.0
|
368
|
+
## 2.0.0 (2016-12-28)
|
76
369
|
|
77
370
|
- Added support for `reindex` on associations
|
78
371
|
|
@@ -91,75 +384,75 @@ Breaking changes
|
|
91
384
|
- The `unsearchable` and `only_analyzed` options have been removed in favor of `searchable` and `filterable`
|
92
385
|
- `load: false` no longer returns an array in Elasticsearch 2
|
93
386
|
|
94
|
-
## 1.5.1
|
387
|
+
## 1.5.1 (2016-12-28)
|
95
388
|
|
96
389
|
- Added `client_options`
|
97
390
|
- Added `refresh` option to `reindex` method
|
98
391
|
- Improved syntax for partial reindex
|
99
392
|
|
100
|
-
## 1.5.0
|
393
|
+
## 1.5.0 (2016-12-23)
|
101
394
|
|
102
395
|
- Added support for geo shape indexing and queries
|
103
396
|
- Added `_and`, `_or`, `_not` to `where` option
|
104
397
|
|
105
|
-
## 1.4.2
|
398
|
+
## 1.4.2 (2016-12-21)
|
106
399
|
|
107
400
|
- Added support for directional synonyms
|
108
401
|
- Easier AWS setup
|
109
402
|
- Fixed `total_docs` method for ES 5+
|
110
403
|
- Fixed exception on update errors
|
111
404
|
|
112
|
-
## 1.4.1
|
405
|
+
## 1.4.1 (2016-12-11)
|
113
406
|
|
114
407
|
- Added `partial_reindex` method
|
115
408
|
- Added `debug` option to `search` method
|
116
409
|
- Added `profile` option
|
117
410
|
|
118
|
-
## 1.4.0
|
411
|
+
## 1.4.0 (2016-10-26)
|
119
412
|
|
120
413
|
- Official support for Elasticsearch 5
|
121
414
|
- Boost exact matches for partial matching
|
122
415
|
- Added `searchkick_debug` method
|
123
416
|
- Added `geo_polygon` filter
|
124
417
|
|
125
|
-
## 1.3.6
|
418
|
+
## 1.3.6 (2016-10-08)
|
126
419
|
|
127
420
|
- Fixed `Job adapter not found` error
|
128
421
|
|
129
|
-
## 1.3.5
|
422
|
+
## 1.3.5 (2016-09-27)
|
130
423
|
|
131
424
|
- Added support for Elasticsearch 5.0 beta
|
132
425
|
- Added `request_params` option
|
133
426
|
- Added `filterable` option
|
134
427
|
|
135
|
-
## 1.3.4
|
428
|
+
## 1.3.4 (2016-08-23)
|
136
429
|
|
137
430
|
- Added `resume` option to reindex
|
138
431
|
- Added search timeout to payload
|
139
432
|
|
140
|
-
## 1.3.3
|
433
|
+
## 1.3.3 (2016-08-02)
|
141
434
|
|
142
435
|
- Fix for namespaced models (broken in 1.3.2)
|
143
436
|
|
144
|
-
## 1.3.2
|
437
|
+
## 1.3.2 (2016-08-01)
|
145
438
|
|
146
439
|
- Added `body_options` option
|
147
440
|
- Added `date_histogram` aggregation
|
148
441
|
- Added `indices_boost` option
|
149
442
|
- Added support for multiple conversions
|
150
443
|
|
151
|
-
## 1.3.1
|
444
|
+
## 1.3.1 (2016-07-10)
|
152
445
|
|
153
446
|
- Fixed error with Ruby 2.0
|
154
447
|
- Fixed error with indexing large fields
|
155
448
|
|
156
|
-
## 1.3.0
|
449
|
+
## 1.3.0 (2016-05-04)
|
157
450
|
|
158
451
|
- Added support for Elasticsearch 5.0 alpha
|
159
452
|
- Added support for phrase matches
|
160
453
|
- Added support for procs for `index_prefix` option
|
161
454
|
|
162
|
-
## 1.2.1
|
455
|
+
## 1.2.1 (2016-02-15)
|
163
456
|
|
164
457
|
- Added `multi_search` method
|
165
458
|
- Added support for routing for Elasticsearch 2
|
@@ -167,7 +460,7 @@ Breaking changes
|
|
167
460
|
- Fixed error with instrumentation for searching multiple models
|
168
461
|
- Fixed instrumentation for bulk updates
|
169
462
|
|
170
|
-
## 1.2.0
|
463
|
+
## 1.2.0 (2016-02-03)
|
171
464
|
|
172
465
|
- Fixed deprecation warnings with `alias_method_chain`
|
173
466
|
- Added `analyzed_only` option for large text fields
|
@@ -175,18 +468,18 @@ Breaking changes
|
|
175
468
|
- Fixed issue in `similar` method with `per_page` option
|
176
469
|
- Added basic support for multiple models
|
177
470
|
|
178
|
-
## 1.1.2
|
471
|
+
## 1.1.2 (2015-12-18)
|
179
472
|
|
180
473
|
- Added bulk updates with `callbacks` method
|
181
474
|
- Added `bulk_delete` method
|
182
475
|
- Added `search_timeout` option
|
183
476
|
- Fixed bug with new location format for `boost_by_distance`
|
184
477
|
|
185
|
-
## 1.1.1
|
478
|
+
## 1.1.1 (2015-12-14)
|
186
479
|
|
187
480
|
- Added support for `{lat: lat, lon: lon}` as preferred format for locations
|
188
481
|
|
189
|
-
## 1.1.0
|
482
|
+
## 1.1.0 (2015-12-08)
|
190
483
|
|
191
484
|
- Added `below` option to misspellings to improve performance
|
192
485
|
- Fixed synonyms for `word_*` partial matches
|
@@ -196,25 +489,25 @@ Breaking changes
|
|
196
489
|
- Added `word` option
|
197
490
|
- Added highlighted fields to `load: false`
|
198
491
|
|
199
|
-
## 1.0.3
|
492
|
+
## 1.0.3 (2015-11-27)
|
200
493
|
|
201
494
|
- Added support for Elasticsearch 2.1
|
202
495
|
|
203
|
-
## 1.0.2
|
496
|
+
## 1.0.2 (2015-11-15)
|
204
497
|
|
205
498
|
- Throw `Searchkick::ImportError` for errors when importing records
|
206
499
|
- Errors now inherit from `Searchkick::Error`
|
207
500
|
- Added `order` option to aggregations
|
208
501
|
- Added `mapping` method
|
209
502
|
|
210
|
-
## 1.0.1
|
503
|
+
## 1.0.1 (2015-11-05)
|
211
504
|
|
212
505
|
- Added aggregations method to get raw response
|
213
506
|
- Use `execute: false` for lazy loading
|
214
507
|
- Return nil when no aggs
|
215
508
|
- Added emoji search
|
216
509
|
|
217
|
-
## 1.0.0
|
510
|
+
## 1.0.0 (2015-10-30)
|
218
511
|
|
219
512
|
- Added support for Elasticsearch 2.0
|
220
513
|
- Added support for aggregations
|
@@ -228,7 +521,7 @@ Breaking changes
|
|
228
521
|
- Enabled misspellings by default for partial matches
|
229
522
|
- Enabled transpositions by default for misspellings
|
230
523
|
|
231
|
-
## 0.9.1
|
524
|
+
## 0.9.1 (2015-08-31)
|
232
525
|
|
233
526
|
- `and` now matches `&`
|
234
527
|
- Added `transpositions` option to misspellings
|
@@ -236,18 +529,18 @@ Breaking changes
|
|
236
529
|
- Added `prefix_length` option to `misspellings`
|
237
530
|
- Added ability to set env
|
238
531
|
|
239
|
-
## 0.9.0
|
532
|
+
## 0.9.0 (2015-06-07)
|
240
533
|
|
241
534
|
- Much better performance for where queries if no facets
|
242
535
|
- Added basic support for regex
|
243
536
|
- Added support for routing
|
244
537
|
- Made `Searchkick.disable_callbacks` thread-safe
|
245
538
|
|
246
|
-
## 0.8.7
|
539
|
+
## 0.8.7 (2015-02-14)
|
247
540
|
|
248
541
|
- Fixed Mongoid import
|
249
542
|
|
250
|
-
## 0.8.6
|
543
|
+
## 0.8.6 (2015-02-10)
|
251
544
|
|
252
545
|
- Added support for NoBrainer
|
253
546
|
- Added `stem_conversions: false` option
|
@@ -256,26 +549,26 @@ Breaking changes
|
|
256
549
|
- Fixed suggestions with partial match boost
|
257
550
|
- Fixed redefining existing instance methods in models
|
258
551
|
|
259
|
-
## 0.8.5
|
552
|
+
## 0.8.5 (2014-11-11)
|
260
553
|
|
261
554
|
- Added support for Elasticsearch 1.4
|
262
555
|
- Added `unsearchable` option
|
263
556
|
- Added `select: true` option
|
264
557
|
- Added `body` option
|
265
558
|
|
266
|
-
## 0.8.4
|
559
|
+
## 0.8.4 (2014-11-05)
|
267
560
|
|
268
561
|
- Added `boost_by_distance`
|
269
562
|
- More flexible highlight options
|
270
563
|
- Better `env` logic
|
271
564
|
|
272
|
-
## 0.8.3
|
565
|
+
## 0.8.3 (2014-09-20)
|
273
566
|
|
274
|
-
- Added support for
|
567
|
+
- Added support for Active Job
|
275
568
|
- Added `timeout` setting
|
276
569
|
- Fixed import with no records
|
277
570
|
|
278
|
-
## 0.8.2
|
571
|
+
## 0.8.2 (2014-08-18)
|
279
572
|
|
280
573
|
- Added `async` to `callbacks` option
|
281
574
|
- Added `wordnet` option
|
@@ -283,17 +576,17 @@ Breaking changes
|
|
283
576
|
- Catch misspelling of `misspellings` option
|
284
577
|
- Improved logging
|
285
578
|
|
286
|
-
## 0.8.1
|
579
|
+
## 0.8.1 (2014-08-16)
|
287
580
|
|
288
581
|
- Added `search_method_name` option
|
289
582
|
- Fixed `order` for array of hashes
|
290
583
|
- Added support for Mongoid 2
|
291
584
|
|
292
|
-
## 0.8.0
|
585
|
+
## 0.8.0 (2014-07-12)
|
293
586
|
|
294
587
|
- Added support for Elasticsearch 1.2
|
295
588
|
|
296
|
-
## 0.7.9
|
589
|
+
## 0.7.9 (2014-06-30)
|
297
590
|
|
298
591
|
- Added `tokens` method
|
299
592
|
- Added `json` option
|
@@ -301,86 +594,86 @@ Breaking changes
|
|
301
594
|
- Added `prev_page` for Kaminari pagination
|
302
595
|
- Added `import` option to reindex
|
303
596
|
|
304
|
-
## 0.7.8
|
597
|
+
## 0.7.8 (2014-06-22)
|
305
598
|
|
306
599
|
- Added `boost_by` and `boost_where` options
|
307
600
|
- Added ability to boost fields - `name^10`
|
308
601
|
- Added `select` option for `load: false`
|
309
602
|
|
310
|
-
## 0.7.7
|
603
|
+
## 0.7.7 (2014-06-10)
|
311
604
|
|
312
605
|
- Added support for automatic failover
|
313
606
|
- Fixed `operator` option (and default) for partial matches
|
314
607
|
|
315
|
-
## 0.7.6
|
608
|
+
## 0.7.6 (2014-05-20)
|
316
609
|
|
317
610
|
- Added `stats` option to facets
|
318
611
|
- Added `padding` option
|
319
612
|
|
320
|
-
## 0.7.5
|
613
|
+
## 0.7.5 (2014-05-13)
|
321
614
|
|
322
615
|
- Do not throw errors when index becomes out of sync with database
|
323
616
|
- Added custom exception types
|
324
617
|
- Fixed `offset` and `offset_value`
|
325
618
|
|
326
|
-
## 0.7.4
|
619
|
+
## 0.7.4 (2014-05-06)
|
327
620
|
|
328
621
|
- Fixed reindex with inheritance
|
329
622
|
|
330
|
-
## 0.7.3
|
623
|
+
## 0.7.3 (2014-04-30)
|
331
624
|
|
332
625
|
- Fixed multi-index searches
|
333
626
|
- Fixed suggestions for partial matches
|
334
627
|
- Added `offset` and `length` for improved pagination
|
335
628
|
|
336
|
-
## 0.7.2
|
629
|
+
## 0.7.2 (2014-04-24)
|
337
630
|
|
338
631
|
- Added smart facets
|
339
632
|
- Added more fields to `load: false` result
|
340
633
|
- Fixed logging for multi-index searches
|
341
634
|
- Added `first_page?` and `last_page?` for improved Kaminari support
|
342
635
|
|
343
|
-
## 0.7.1
|
636
|
+
## 0.7.1 (2014-04-12)
|
344
637
|
|
345
638
|
- Fixed huge issue w/ zero-downtime reindexing on 0.90
|
346
639
|
|
347
|
-
## 0.7.0
|
640
|
+
## 0.7.0 (2014-04-10)
|
348
641
|
|
349
642
|
- Added support for Elasticsearch 1.1
|
350
643
|
- Dropped support for Elasticsearch below 0.90.4 (unfortunate side effect of above)
|
351
644
|
|
352
|
-
## 0.6.3
|
645
|
+
## 0.6.3 (2014-04-08)
|
353
646
|
|
354
647
|
- Removed patron since no support for Windows
|
355
648
|
- Added error if `searchkick` is called multiple times
|
356
649
|
|
357
|
-
## 0.6.2
|
650
|
+
## 0.6.2 (2014-04-05)
|
358
651
|
|
359
652
|
- Added logging
|
360
653
|
- Fixed index_name option
|
361
654
|
- Added ability to use proc as the index name
|
362
655
|
|
363
|
-
## 0.6.1
|
656
|
+
## 0.6.1 (2014-03-24)
|
364
657
|
|
365
658
|
- Fixed huge issue w/ zero-downtime reindexing on 0.90 and elasticsearch-ruby 1.0
|
366
659
|
- Restore load: false behavior
|
367
660
|
- Restore total_entries method
|
368
661
|
|
369
|
-
## 0.6.0
|
662
|
+
## 0.6.0 (2014-03-22)
|
370
663
|
|
371
664
|
- Moved to elasticsearch-ruby
|
372
665
|
- Added support for modifying the query and viewing the response
|
373
666
|
- Added support for page_entries_info method
|
374
667
|
|
375
|
-
## 0.5.3
|
668
|
+
## 0.5.3 (2014-02-24)
|
376
669
|
|
377
670
|
- Fixed bug w/ word_* queries
|
378
671
|
|
379
|
-
## 0.5.2
|
672
|
+
## 0.5.2 (2014-02-12)
|
380
673
|
|
381
|
-
- Use after_commit hook for
|
674
|
+
- Use after_commit hook for Active Record to prevent data inconsistencies
|
382
675
|
|
383
|
-
## 0.5.1
|
676
|
+
## 0.5.1 (2014-02-12)
|
384
677
|
|
385
678
|
- Replaced stop words with common terms query
|
386
679
|
- Added language option
|
@@ -388,89 +681,89 @@ Breaking changes
|
|
388
681
|
- Fixed bug with MongoDB integer _id
|
389
682
|
- Fixed reindex bug when callbacks disabled
|
390
683
|
|
391
|
-
## 0.5.0
|
684
|
+
## 0.5.0 (2014-01-20)
|
392
685
|
|
393
686
|
- Better control over partial matches
|
394
687
|
- Added merge_mappings option
|
395
688
|
- Added batch_size option
|
396
689
|
- Fixed bug with nil where clauses
|
397
690
|
|
398
|
-
## 0.4.2
|
691
|
+
## 0.4.2 (2013-12-29)
|
399
692
|
|
400
693
|
- Added `should_index?` method to control which records are indexed
|
401
694
|
- Added ability to temporarily disable callbacks
|
402
695
|
- Added custom mappings
|
403
696
|
|
404
|
-
## 0.4.1
|
697
|
+
## 0.4.1 (2013-12-19)
|
405
698
|
|
406
699
|
- Fixed issue w/ inheritance mapping
|
407
700
|
|
408
|
-
## 0.4.0
|
701
|
+
## 0.4.0 (2013-12-11)
|
409
702
|
|
410
703
|
- Added support for Mongoid 4
|
411
704
|
- Added support for multiple locations
|
412
705
|
|
413
|
-
## 0.3.5
|
706
|
+
## 0.3.5 (2013-12-08)
|
414
707
|
|
415
708
|
- Added facet ranges
|
416
709
|
- Added all operator
|
417
710
|
|
418
|
-
## 0.3.4
|
711
|
+
## 0.3.4 (2013-11-22)
|
419
712
|
|
420
713
|
- Added highlighting
|
421
714
|
- Added :distance option to misspellings
|
422
715
|
- Fixed issue w/ BigDecimal serialization
|
423
716
|
|
424
|
-
## 0.3.3
|
717
|
+
## 0.3.3 (2013-11-04)
|
425
718
|
|
426
719
|
- Better error messages
|
427
720
|
- Added where: {field: nil} queries
|
428
721
|
|
429
|
-
## 0.3.2
|
722
|
+
## 0.3.2 (2013-11-02)
|
430
723
|
|
431
724
|
- Added support for single table inheritance
|
432
725
|
- Removed Tire::Model::Search
|
433
726
|
|
434
|
-
## 0.3.1
|
727
|
+
## 0.3.1 (2013-11-02)
|
435
728
|
|
436
729
|
- Added index_prefix option
|
437
730
|
- Fixed ES issue with incorrect facet counts
|
438
731
|
- Added option to turn off special characters
|
439
732
|
|
440
|
-
## 0.3.0
|
733
|
+
## 0.3.0 (2013-11-02)
|
441
734
|
|
442
735
|
- Fixed reversed coordinates
|
443
736
|
- Added bounded by a box queries
|
444
737
|
- Expanded `or` queries
|
445
738
|
|
446
|
-
## 0.2.8
|
739
|
+
## 0.2.8 (2013-09-30)
|
447
740
|
|
448
741
|
- Added option to disable callbacks
|
449
742
|
- Fixed bug with facets with Elasticsearch 0.90.5
|
450
743
|
|
451
|
-
## 0.2.7
|
744
|
+
## 0.2.7 (2013-09-23)
|
452
745
|
|
453
746
|
- Added limit to facet
|
454
747
|
- Improved similar items
|
455
748
|
|
456
|
-
## 0.2.6
|
749
|
+
## 0.2.6 (2013-09-10)
|
457
750
|
|
458
751
|
- Added option to disable misspellings
|
459
752
|
|
460
|
-
## 0.2.5
|
753
|
+
## 0.2.5 (2013-08-30)
|
461
754
|
|
462
755
|
- Added geospartial searches
|
463
756
|
- Create alias before importing document if no alias exists
|
464
757
|
- Fixed exception when :per_page option is a string
|
465
758
|
- Check `RAILS_ENV` if `RACK_ENV` is not set
|
466
759
|
|
467
|
-
## 0.2.4
|
760
|
+
## 0.2.4 (2013-08-20)
|
468
761
|
|
469
762
|
- Use `to_hash` instead of `as_json` for default `search_data` method
|
470
763
|
- Works for Mongoid 1.3
|
471
764
|
- Use one shard in test environment for consistent scores
|
472
765
|
|
473
|
-
## 0.2.3
|
766
|
+
## 0.2.3 (2013-08-16)
|
474
767
|
|
475
768
|
- Setup Travis
|
476
769
|
- Clean old indices before reindex
|
@@ -478,33 +771,33 @@ Breaking changes
|
|
478
771
|
- Fixed pagination
|
479
772
|
- Added `similar` method
|
480
773
|
|
481
|
-
## 0.2.2
|
774
|
+
## 0.2.2 (2013-08-11)
|
482
775
|
|
483
776
|
- Clean old indices after reindex
|
484
777
|
- More expansions for fuzzy queries
|
485
778
|
|
486
|
-
## 0.2.1
|
779
|
+
## 0.2.1 (2013-08-11)
|
487
780
|
|
488
781
|
- Added Rails logger
|
489
782
|
- Only fetch ids when `load: true`
|
490
783
|
|
491
|
-
## 0.2.0
|
784
|
+
## 0.2.0 (2013-08-10)
|
492
785
|
|
493
786
|
- Added autocomplete
|
494
787
|
- Added “Did you mean” suggestions
|
495
788
|
- Added personalized searches
|
496
789
|
|
497
|
-
## 0.1.4
|
790
|
+
## 0.1.4 (2013-08-03)
|
498
791
|
|
499
792
|
- Bug fix
|
500
793
|
|
501
|
-
## 0.1.3
|
794
|
+
## 0.1.3 (2013-08-03)
|
502
795
|
|
503
796
|
- Changed edit distance to one for misspellings
|
504
797
|
- Raise errors when indexing fails
|
505
798
|
- Fixed pagination
|
506
799
|
- Fixed :include option
|
507
800
|
|
508
|
-
## 0.1.2
|
801
|
+
## 0.1.2 (2013-07-30)
|
509
802
|
|
510
803
|
- Launch
|