search_flip 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +7 -0
- data/.travis.yml +1 -1
- data/CHANGELOG.md +4 -0
- data/README.md +4 -1
- data/lib/search_flip.rb +2 -0
- data/lib/search_flip/aggregation.rb +2 -2
- data/lib/search_flip/criteria.rb +1 -1
- data/lib/search_flip/highlightable.rb +3 -2
- data/lib/search_flip/result.rb +1 -1
- data/lib/search_flip/version.rb +1 -1
- data/spec/search_flip/connection_spec.rb +4 -4
- data/spec/search_flip/result_spec.rb +6 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fb8e67eac92f6f39f78dcc6770ea46d397ab7ec26b1e461b76634367a558f734
|
|
4
|
+
data.tar.gz: 04e8445e8039e72eac4344cb67de22c04107020b63112f01c9ed76512942c314
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 429bacd5e7d64f922bb2c20d82d8e2ead32340f8e85abacfd55f0034791cc13c7557a5973dadf7fb19681364f56f899830aecefd7ddedab58b06c9cb8c8a13bd
|
|
7
|
+
data.tar.gz: f60dfa7d6396971dadd0d960442074a1702493e8149ba885fb84a09f77031b4450603a9ece5391e55d5e747a917b95a4708a0bad3232610c4d4a75ddebc88cd0
|
data/.rubocop.yml
CHANGED
data/.travis.yml
CHANGED
|
@@ -5,7 +5,7 @@ env:
|
|
|
5
5
|
- ES_IMAGE=elasticsearch:5.4
|
|
6
6
|
- ES_IMAGE=docker.elastic.co/elasticsearch/elasticsearch:6.7.0
|
|
7
7
|
- ES_IMAGE=docker.elastic.co/elasticsearch/elasticsearch:7.0.0
|
|
8
|
-
- ES_IMAGE=docker.elastic.co/elasticsearch/elasticsearch:7.
|
|
8
|
+
- ES_IMAGE=docker.elastic.co/elasticsearch/elasticsearch:7.8.0
|
|
9
9
|
rvm:
|
|
10
10
|
- ruby-2.5.3
|
|
11
11
|
- ruby-2.6.2
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
|
@@ -949,6 +949,10 @@ It uses `after_commit` (if applicable, `after_save`, `after_destroy` and
|
|
|
949
949
|
`after_touch` otherwise) hooks to synchronously update the index when your
|
|
950
950
|
model changes.
|
|
951
951
|
|
|
952
|
+
## Semantic Versioning
|
|
953
|
+
|
|
954
|
+
SearchFlip is using Semantic Versioning: [SemVer](http://semver.org/)
|
|
955
|
+
|
|
952
956
|
## Links
|
|
953
957
|
|
|
954
958
|
* Elasticsearch: [https://www.elastic.co/](https://www.elastic.co/)
|
|
@@ -980,5 +984,4 @@ $ rspec
|
|
|
980
984
|
|
|
981
985
|
That's it.
|
|
982
986
|
|
|
983
|
-
|
|
984
987
|
[Bulk API]: https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html
|
data/lib/search_flip.rb
CHANGED
|
@@ -40,7 +40,7 @@ module SearchFlip
|
|
|
40
40
|
else
|
|
41
41
|
filters = (filter_values || []) + (must_not_values || []).map { |must_not_value| { not: must_not_value } }
|
|
42
42
|
queries = must_values ? { must: must_values } : {}
|
|
43
|
-
filters_and_queries = filters + (queries.size > 0 ? [bool: queries] : [])
|
|
43
|
+
filters_and_queries = filters + (queries.size > 0 ? [{ bool: queries }] : [])
|
|
44
44
|
|
|
45
45
|
res[:filter] = filters_and_queries.size > 1 ? { and: filters_and_queries } : filters_and_queries.first
|
|
46
46
|
end
|
|
@@ -101,7 +101,7 @@ module SearchFlip
|
|
|
101
101
|
end
|
|
102
102
|
|
|
103
103
|
def respond_to_missing?(name, *args)
|
|
104
|
-
target.respond_to?(name, *args)
|
|
104
|
+
target.respond_to?(name, *args) || super
|
|
105
105
|
end
|
|
106
106
|
|
|
107
107
|
def method_missing(name, *args, &block)
|
data/lib/search_flip/criteria.rb
CHANGED
|
@@ -34,9 +34,10 @@ module SearchFlip
|
|
|
34
34
|
criteria.highlight_values = (criteria.highlight_values || {}).merge(options)
|
|
35
35
|
|
|
36
36
|
hash =
|
|
37
|
-
|
|
37
|
+
case fields
|
|
38
|
+
when Hash
|
|
38
39
|
fields
|
|
39
|
-
|
|
40
|
+
when Array
|
|
40
41
|
fields.each_with_object({}) { |field, h| h[field] = {} }
|
|
41
42
|
else
|
|
42
43
|
{ fields => {} }
|
data/lib/search_flip/result.rb
CHANGED
|
@@ -17,7 +17,7 @@ module SearchFlip
|
|
|
17
17
|
# SearchFlip::Result.from_hit(top_sales_hits.first)
|
|
18
18
|
|
|
19
19
|
def self.from_hit(hit)
|
|
20
|
-
raw_result = hit["_source"].dup
|
|
20
|
+
raw_result = (hit["_source"] || {}).dup
|
|
21
21
|
|
|
22
22
|
raw_result["_hit"] = hit.each_with_object({}) do |(key, value), hash|
|
|
23
23
|
hash[key] = value if key != "_source"
|
data/lib/search_flip/version.rb
CHANGED
|
@@ -36,10 +36,10 @@ RSpec.describe SearchFlip::Connection do
|
|
|
36
36
|
it "changes the aliases" do
|
|
37
37
|
connection = SearchFlip::Connection.new
|
|
38
38
|
|
|
39
|
-
connection.update_aliases(actions: [add: { index: "products", alias: "alias1" }])
|
|
39
|
+
connection.update_aliases(actions: [{ add: { index: "products", alias: "alias1" } }])
|
|
40
40
|
expect(connection.get_aliases(alias_name: "alias1").keys).to eq(["products"])
|
|
41
41
|
|
|
42
|
-
connection.update_aliases(actions: [remove: { index: "products", alias: "alias1" }])
|
|
42
|
+
connection.update_aliases(actions: [{ remove: { index: "products", alias: "alias1" } }])
|
|
43
43
|
expect(connection.alias_exists?("alias1")).to eq(false)
|
|
44
44
|
end
|
|
45
45
|
end
|
|
@@ -79,11 +79,11 @@ RSpec.describe SearchFlip::Connection do
|
|
|
79
79
|
|
|
80
80
|
expect(connection.alias_exists?(:some_alias)).to eq(false)
|
|
81
81
|
|
|
82
|
-
connection.update_aliases(actions: [add: { index: "products", alias: "some_alias" }])
|
|
82
|
+
connection.update_aliases(actions: [{ add: { index: "products", alias: "some_alias" } }])
|
|
83
83
|
|
|
84
84
|
expect(connection.alias_exists?(:some_alias)).to eq(true)
|
|
85
85
|
ensure
|
|
86
|
-
connection.update_aliases(actions: [remove: { index: "products", alias: "some_alias" }])
|
|
86
|
+
connection.update_aliases(actions: [{ remove: { index: "products", alias: "some_alias" } }])
|
|
87
87
|
end
|
|
88
88
|
end
|
|
89
89
|
end
|
|
@@ -13,5 +13,11 @@ RSpec.describe SearchFlip::Result do
|
|
|
13
13
|
|
|
14
14
|
expect(result.key1[0].key2).to eq("value")
|
|
15
15
|
end
|
|
16
|
+
|
|
17
|
+
it "works with the _source being disabled" do
|
|
18
|
+
result = SearchFlip::Result.from_hit("_id" => 1)
|
|
19
|
+
|
|
20
|
+
expect(result._hit._id).to eq(1)
|
|
21
|
+
end
|
|
16
22
|
end
|
|
17
23
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: search_flip
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.1.
|
|
4
|
+
version: 3.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Benjamin Vetter
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-
|
|
11
|
+
date: 2020-08-21 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|