meilisearch 0.14.0 → 0.15.0
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/lib/meilisearch/client.rb +24 -12
- data/lib/meilisearch/index.rb +21 -9
- data/lib/meilisearch/version.rb +1 -1
- 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: e60c9c4ac5631947edf24d990c37fd06e09bbbb59b6eabd554fcacc7d8f231ed
|
4
|
+
data.tar.gz: 5373d86aacf0791fa30f068d97ba9f5b857fa75930c3580ddd20449cd2db8e7b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d7496a3f2ea08ed35ff277c0176c52fe8120290678a1594bd49637e96b03e825aad11bfd55370040fd3563577fea9fbc6a3a7df335bb400a78d2a46707072ff2
|
7
|
+
data.tar.gz: db46abc6f60ec202641480eb0ac2232b2892ea966590d955735f4ab7a5ce98cc52493c87da7bb1ccc5d4399f95b0b4c7639619ad0a30ed4caa4f21e3af7aabf3
|
data/lib/meilisearch/client.rb
CHANGED
@@ -10,26 +10,24 @@ module MeiliSearch
|
|
10
10
|
http_get '/indexes'
|
11
11
|
end
|
12
12
|
|
13
|
-
def show_index(index_uid)
|
14
|
-
index_object(index_uid).show
|
15
|
-
end
|
16
|
-
|
17
13
|
# Usage:
|
18
14
|
# client.create_index('indexUID')
|
19
15
|
# client.create_index('indexUID', primaryKey: 'id')
|
20
16
|
def create_index(index_uid, options = {})
|
21
17
|
body = options.merge(uid: index_uid)
|
22
|
-
|
23
|
-
index_object(
|
18
|
+
index_hash = http_post '/indexes', body
|
19
|
+
index_object(index_hash['uid'], index_hash['primaryKey'])
|
24
20
|
end
|
25
21
|
|
26
22
|
def get_or_create_index(index_uid, options = {})
|
27
23
|
begin
|
28
|
-
|
24
|
+
index_instance = fetch_index(index_uid)
|
29
25
|
rescue ApiError => e
|
30
|
-
raise e unless e.code == '
|
26
|
+
raise e unless e.code == 'index_not_found'
|
27
|
+
|
28
|
+
index_instance = create_index(index_uid, options)
|
31
29
|
end
|
32
|
-
|
30
|
+
index_instance
|
33
31
|
end
|
34
32
|
|
35
33
|
def delete_index(index_uid)
|
@@ -41,7 +39,10 @@ module MeiliSearch
|
|
41
39
|
def index(index_uid)
|
42
40
|
index_object(index_uid)
|
43
41
|
end
|
44
|
-
|
42
|
+
|
43
|
+
def fetch_index(index_uid)
|
44
|
+
index_object(index_uid).fetch_info
|
45
|
+
end
|
45
46
|
|
46
47
|
### KEYS
|
47
48
|
|
@@ -73,10 +74,21 @@ module MeiliSearch
|
|
73
74
|
http_get '/stats'
|
74
75
|
end
|
75
76
|
|
77
|
+
### DUMPS
|
78
|
+
|
79
|
+
def create_dump
|
80
|
+
http_post '/dumps'
|
81
|
+
end
|
82
|
+
|
83
|
+
def dump_status(dump_uid)
|
84
|
+
http_get "/dumps/#{dump_uid}/status"
|
85
|
+
end
|
86
|
+
alias get_dump_status dump_status
|
87
|
+
|
76
88
|
private
|
77
89
|
|
78
|
-
def index_object(uid)
|
79
|
-
Index.new(uid, @base_url, @api_key)
|
90
|
+
def index_object(uid, primary_key = nil)
|
91
|
+
Index.new(uid, @base_url, @api_key, primary_key)
|
80
92
|
end
|
81
93
|
end
|
82
94
|
end
|
data/lib/meilisearch/index.rb
CHANGED
@@ -5,20 +5,24 @@ require 'timeout'
|
|
5
5
|
|
6
6
|
module MeiliSearch
|
7
7
|
class Index < HTTPRequest
|
8
|
-
attr_reader :uid
|
8
|
+
attr_reader :uid, :primary_key
|
9
9
|
|
10
|
-
def initialize(index_uid, url, api_key = nil)
|
10
|
+
def initialize(index_uid, url, api_key = nil, primary_key = nil)
|
11
11
|
@uid = index_uid
|
12
|
+
@primary_key = primary_key
|
12
13
|
super(url, api_key)
|
13
14
|
end
|
14
15
|
|
15
|
-
def
|
16
|
-
http_get "/indexes/#{@uid}"
|
16
|
+
def fetch_info
|
17
|
+
index_hash = http_get "/indexes/#{@uid}"
|
18
|
+
@primary_key = index_hash['primaryKey']
|
19
|
+
self
|
17
20
|
end
|
18
|
-
alias show_index show
|
19
21
|
|
20
22
|
def update(body)
|
21
|
-
http_put "/indexes/#{@uid}", body
|
23
|
+
index_hash = http_put "/indexes/#{@uid}", body
|
24
|
+
@primary_key = index_hash['primaryKey']
|
25
|
+
self
|
22
26
|
end
|
23
27
|
alias update_index update
|
24
28
|
|
@@ -27,10 +31,10 @@ module MeiliSearch
|
|
27
31
|
end
|
28
32
|
alias delete_index delete
|
29
33
|
|
30
|
-
def
|
31
|
-
|
34
|
+
def fetch_primary_key
|
35
|
+
fetch_info.primary_key
|
32
36
|
end
|
33
|
-
alias get_primary_key
|
37
|
+
alias get_primary_key fetch_primary_key
|
34
38
|
|
35
39
|
### DOCUMENTS
|
36
40
|
|
@@ -140,6 +144,7 @@ module MeiliSearch
|
|
140
144
|
def update_settings(settings)
|
141
145
|
http_post "/indexes/#{@uid}/settings", settings
|
142
146
|
end
|
147
|
+
alias settings= update_settings
|
143
148
|
|
144
149
|
def reset_settings
|
145
150
|
http_delete "/indexes/#{@uid}/settings"
|
@@ -155,6 +160,7 @@ module MeiliSearch
|
|
155
160
|
def update_ranking_rules(ranking_rules)
|
156
161
|
http_post "/indexes/#{@uid}/settings/ranking-rules", ranking_rules
|
157
162
|
end
|
163
|
+
alias ranking_rules= update_ranking_rules
|
158
164
|
|
159
165
|
def reset_ranking_rules
|
160
166
|
http_delete "/indexes/#{@uid}/settings/ranking-rules"
|
@@ -170,6 +176,7 @@ module MeiliSearch
|
|
170
176
|
def update_synonyms(synonyms)
|
171
177
|
http_post "/indexes/#{@uid}/settings/synonyms", synonyms
|
172
178
|
end
|
179
|
+
alias synonyms= update_synonyms
|
173
180
|
|
174
181
|
def reset_synonyms
|
175
182
|
http_delete "/indexes/#{@uid}/settings/synonyms"
|
@@ -186,6 +193,7 @@ module MeiliSearch
|
|
186
193
|
body = stop_words.is_a?(Array) ? stop_words : [stop_words]
|
187
194
|
http_post "/indexes/#{@uid}/settings/stop-words", body
|
188
195
|
end
|
196
|
+
alias stop_words= update_stop_words
|
189
197
|
|
190
198
|
def reset_stop_words
|
191
199
|
http_delete "/indexes/#{@uid}/settings/stop-words"
|
@@ -201,6 +209,7 @@ module MeiliSearch
|
|
201
209
|
def update_distinct_attribute(distinct_attribute)
|
202
210
|
http_post "/indexes/#{@uid}/settings/distinct-attribute", distinct_attribute
|
203
211
|
end
|
212
|
+
alias distinct_attribute= update_distinct_attribute
|
204
213
|
|
205
214
|
def reset_distinct_attribute
|
206
215
|
http_delete "/indexes/#{@uid}/settings/distinct-attribute"
|
@@ -216,6 +225,7 @@ module MeiliSearch
|
|
216
225
|
def update_searchable_attributes(searchable_attributes)
|
217
226
|
http_post "/indexes/#{@uid}/settings/searchable-attributes", searchable_attributes
|
218
227
|
end
|
228
|
+
alias searchable_attributes= update_searchable_attributes
|
219
229
|
|
220
230
|
def reset_searchable_attributes
|
221
231
|
http_delete "/indexes/#{@uid}/settings/searchable-attributes"
|
@@ -231,6 +241,7 @@ module MeiliSearch
|
|
231
241
|
def update_displayed_attributes(displayed_attributes)
|
232
242
|
http_post "/indexes/#{@uid}/settings/displayed-attributes", displayed_attributes
|
233
243
|
end
|
244
|
+
alias displayed_attributes= update_displayed_attributes
|
234
245
|
|
235
246
|
def reset_displayed_attributes
|
236
247
|
http_delete "/indexes/#{@uid}/settings/displayed-attributes"
|
@@ -246,6 +257,7 @@ module MeiliSearch
|
|
246
257
|
def update_attributes_for_faceting(attributes_for_faceting)
|
247
258
|
http_post "/indexes/#{@uid}/settings/attributes-for-faceting", attributes_for_faceting
|
248
259
|
end
|
260
|
+
alias attributes_for_faceting= update_attributes_for_faceting
|
249
261
|
|
250
262
|
def reset_attributes_for_faceting
|
251
263
|
http_delete "/indexes/#{@uid}/settings/attributes-for-faceting"
|
data/lib/meilisearch/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: meilisearch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Meili
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-11-
|
11
|
+
date: 2020-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|