algolia 2.0.0.pre.beta.1 → 2.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +16 -0
- data/README.md +18 -10
- data/SECURITY.md +3 -0
- data/algolia.gemspec +6 -6
- data/lib/algolia/config/base_config.rb +7 -7
- data/lib/algolia/error.rb +1 -2
- data/lib/algolia/helpers.rb +5 -3
- data/lib/algolia/iterators/object_iterator.rb +5 -4
- data/lib/algolia/iterators/paginator_iterator.rb +5 -3
- data/lib/algolia/search_client.rb +3 -3
- data/lib/algolia/search_index.rb +2 -2
- data/lib/algolia/transport/request_options.rb +1 -1
- data/lib/algolia/transport/transport.rb +2 -5
- data/lib/algolia/version.rb +1 -1
- data/test/algolia/unit/algolia_config_test.rb +1 -1
- data/test/algolia/unit/helpers_test.rb +20 -1
- data/upgrade_guide.md +9 -3
- metadata +19 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b0246ce68c04f74cbc9e5556fc6ce0732168ae80854fad5bb3c16cc136c5313f
|
4
|
+
data.tar.gz: b8d46fda53509732a442547eda0b1b8087127380bf4b628461aee491e85736bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc78357744b82ccea9963df689b6bfce71125cde45c7605b348cb38210ca028a681c57ad9e422add37c33a1a0394681bec958e3a50a1690128b727a2d5406099
|
7
|
+
data.tar.gz: f56ffd3e67ca4072024f99e24447ecac30a34d252893cc585e467a6589f5ce7331f9e80cc98fe4188ea0a01d325c9f0b6cfac7a689565cbda785c5a077510692
|
data/.gitignore
CHANGED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# ChangeLog
|
2
|
+
|
3
|
+
## Unreleased
|
4
|
+
|
5
|
+
## [2.0.2](https://github.com/algolia/algoliasearch-client-ruby/releases/tag/2.0.2) (2020-11-09)
|
6
|
+
|
7
|
+
* Fix: don't mutate index name on stripping
|
8
|
+
|
9
|
+
## [2.0.1](https://github.com/algolia/algoliasearch-client-ruby/releases/tag/2.0.1) (2020-11-02)
|
10
|
+
|
11
|
+
* Fix: simplify merge of headers in `Transport` class
|
12
|
+
* Fix: `deserialize_settings` function to take into account `symbolize_keys` parameter
|
13
|
+
|
14
|
+
## [2.0.0](https://github.com/algolia/algoliasearch-client-ruby/releases/tag/2.0.0) (2020-10-27)
|
15
|
+
|
16
|
+
* Initial release of v2
|
data/README.md
CHANGED
@@ -6,9 +6,9 @@
|
|
6
6
|
<h4 align="center">The perfect starting point to integrate <a href="https://algolia.com" target="_blank">Algolia</a> within your Ruby project</h4>
|
7
7
|
|
8
8
|
<p align="center">
|
9
|
-
<a href="https://circleci.com/gh/algolia/algoliasearch-client-ruby
|
10
|
-
<a href="https://rubygems.org/gems/
|
11
|
-
<a href="https://rubygems.org/gems/
|
9
|
+
<a href="https://circleci.com/gh/algolia/algoliasearch-client-ruby"><img src="https://circleci.com/gh/algolia/algoliasearch-client-ruby.svg?style=shield" alt="CircleCI" /></a>
|
10
|
+
<a href="https://rubygems.org/gems/algolia"><img src="https://badge.fury.io/rb/algolia.svg" alt="Gem Version"></a>
|
11
|
+
<a href="https://rubygems.org/gems/algolia"><img src="https://img.shields.io/badge/licence-MIT-blue.svg" alt="License"></a>
|
12
12
|
</p>
|
13
13
|
</p>
|
14
14
|
|
@@ -18,39 +18,47 @@
|
|
18
18
|
<a href="https://discourse.algolia.com" target="_blank">Community Forum</a> •
|
19
19
|
<a href="http://stackoverflow.com/questions/tagged/algolia" target="_blank">Stack Overflow</a> •
|
20
20
|
<a href="https://github.com/algolia/algoliasearch-client-ruby/issues" target="_blank">Report a bug</a> •
|
21
|
+
<a href="https://www.algolia.com/doc/api-client/troubleshooting/faq/ruby/" target="_blank">FAQ</a> •
|
21
22
|
<a href="https://www.algolia.com/support" target="_blank">Support</a>
|
22
23
|
</p>
|
23
24
|
|
24
25
|
## ✨ Features
|
25
26
|
|
26
27
|
- Thin & minimal low-level HTTP client to interact with Algolia's API
|
27
|
-
- Supports Ruby `^
|
28
|
+
- Supports Ruby `^2.2`.
|
28
29
|
|
29
30
|
## 💡 Getting Started
|
30
31
|
|
31
32
|
First, install Algolia Ruby API Client via the [RubyGems](https://rubygems.org/) package manager:
|
32
33
|
```bash
|
33
|
-
gem install
|
34
|
+
gem install algolia
|
34
35
|
```
|
35
36
|
|
36
37
|
Then, create objects on your index:
|
37
38
|
|
38
39
|
|
39
40
|
```ruby
|
40
|
-
Algolia.
|
41
|
-
|
42
|
-
index = Algolia::Index.new('your_index_name')
|
41
|
+
client = Algolia::Search::Client.create('YourApplicationID', 'YourAPIKey')
|
42
|
+
index = client.init_index('your_index_name')
|
43
43
|
|
44
|
-
index.save_objects([objectID:
|
44
|
+
index.save_objects([objectID: 1, name: 'Foo'])
|
45
45
|
```
|
46
46
|
|
47
47
|
Finally, you may begin searching a object using the `search` method:
|
48
48
|
```ruby
|
49
|
-
objects = index.search('
|
49
|
+
objects = index.search('Foo')
|
50
50
|
```
|
51
51
|
|
52
52
|
For full documentation, visit the **[Algolia Ruby API Client](https://www.algolia.com/doc/api-client/getting-started/install/ruby/)**.
|
53
53
|
|
54
|
+
## ❓ Troubleshooting
|
55
|
+
|
56
|
+
Encountering an issue? Before reaching out to support, we recommend heading to our [FAQ](https://www.algolia.com/doc/api-client/troubleshooting/faq/ruby/) where you will find answers for the most common issues and gotchas with the client.
|
57
|
+
|
58
|
+
## Upgrade from V1 to V2
|
59
|
+
|
60
|
+
If you were using the v1 and wish to update to v2, please follow our [Upgrade Guide](upgrade_guide.md)
|
61
|
+
|
54
62
|
## 📄 License
|
55
63
|
|
56
64
|
Algolia Ruby API Client is an open-sourced software licensed under the [MIT license](LICENSE.md).
|
data/SECURITY.md
ADDED
data/algolia.gemspec
CHANGED
@@ -12,14 +12,14 @@ Gem::Specification.new do |spec|
|
|
12
12
|
|
13
13
|
spec.date = Date.today
|
14
14
|
spec.licenses = ['MIT']
|
15
|
-
spec.summary = 'A simple Ruby client for the algolia.com REST API
|
16
|
-
spec.description = '
|
17
|
-
spec.homepage = 'https://github.com/algolia/algoliasearch-client-ruby
|
15
|
+
spec.summary = 'A simple Ruby client for the algolia.com REST API'
|
16
|
+
spec.description = 'A simple Ruby client for the algolia.com REST API'
|
17
|
+
spec.homepage = 'https://github.com/algolia/algoliasearch-client-ruby'
|
18
18
|
|
19
19
|
spec.metadata = {
|
20
20
|
'bug_tracker_uri' => 'https://github.com/algolia/algoliasearch-client-ruby/issues',
|
21
|
-
'documentation_uri' => '
|
22
|
-
'source_code_uri' => 'https://github.com/algolia/algoliasearch-client-ruby
|
21
|
+
'documentation_uri' => 'https://www.algolia.com/doc/api-client/getting-started/install/ruby',
|
22
|
+
'source_code_uri' => 'https://github.com/algolia/algoliasearch-client-ruby'
|
23
23
|
}
|
24
24
|
|
25
25
|
# Specify which files should be added to the gem when it is released.
|
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.add_development_dependency 'rake'
|
36
36
|
spec.add_development_dependency 'rubocop', '<= 0.82.0'
|
37
37
|
|
38
|
-
spec.add_dependency 'faraday', '
|
38
|
+
spec.add_dependency 'faraday', ['>= 0.15', '< 2.0']
|
39
39
|
spec.add_dependency 'multi_json', '~> 1.0'
|
40
40
|
spec.add_dependency 'net-http-persistent'
|
41
41
|
|
@@ -3,7 +3,7 @@ require 'faraday'
|
|
3
3
|
module Algolia
|
4
4
|
class BaseConfig
|
5
5
|
attr_accessor :app_id, :api_key, :headers, :batch_size, :read_timeout, :write_timeout, :connect_timeout, :compression_type,
|
6
|
-
:symbolize_keys
|
6
|
+
:symbolize_keys, :use_latest_settings
|
7
7
|
|
8
8
|
#
|
9
9
|
# @option options [String] :application_id
|
@@ -28,12 +28,12 @@ module Algolia
|
|
28
28
|
'User-Agent' => UserAgent.value
|
29
29
|
}
|
30
30
|
|
31
|
-
@batch_size
|
32
|
-
@read_timeout
|
33
|
-
@write_timeout
|
34
|
-
@connect_timeout
|
35
|
-
@compression_type
|
36
|
-
@symbolize_keys
|
31
|
+
@batch_size = opts[:batch_size] || Defaults::BATCH_SIZE
|
32
|
+
@read_timeout = opts[:read_timeout] || Defaults::READ_TIMEOUT
|
33
|
+
@write_timeout = opts[:write_timeout] || Defaults::WRITE_TIMEOUT
|
34
|
+
@connect_timeout = opts[:connect_timeout] || Defaults::CONNECT_TIMEOUT
|
35
|
+
@compression_type = opts[:compression_type] || Defaults::NONE_ENCODING
|
36
|
+
@symbolize_keys = opts.has_key?(:symbolize_keys) ? opts[:symbolize_keys] : true
|
37
37
|
end
|
38
38
|
|
39
39
|
def set_extra_header(key, value)
|
data/lib/algolia/error.rb
CHANGED
data/lib/algolia/helpers.rb
CHANGED
@@ -52,8 +52,8 @@ module Helpers
|
|
52
52
|
|
53
53
|
# Support to convert old settings to their new names
|
54
54
|
#
|
55
|
-
def deserialize_settings(data)
|
56
|
-
settings =
|
55
|
+
def deserialize_settings(data, symbolize_keys)
|
56
|
+
settings = data
|
57
57
|
keys = {
|
58
58
|
attributesToIndex: 'searchableAttributes',
|
59
59
|
numericAttributesToIndex: 'numericAttributesForFiltering',
|
@@ -61,8 +61,10 @@ module Helpers
|
|
61
61
|
}
|
62
62
|
|
63
63
|
keys.each do |deprecated_key, current_key|
|
64
|
+
deprecated_key = symbolize_keys ? deprecated_key : deprecated_key.to_s
|
64
65
|
if settings.has_key?(deprecated_key)
|
65
|
-
|
66
|
+
key = symbolize_keys ? current_key.to_sym : current_key.to_s
|
67
|
+
settings[key] = settings.delete(deprecated_key)
|
66
68
|
end
|
67
69
|
end
|
68
70
|
|
@@ -7,16 +7,17 @@ module Algolia
|
|
7
7
|
data = {}
|
8
8
|
|
9
9
|
if @response
|
10
|
-
|
11
|
-
|
10
|
+
parsed_response = symbolize_hash(@response)
|
11
|
+
if parsed_response[:hits].length
|
12
|
+
parsed_response[:hits].each do |hit|
|
12
13
|
yield hit
|
13
14
|
end
|
14
15
|
|
15
|
-
if
|
16
|
+
if parsed_response[:cursor].nil?
|
16
17
|
@response = nil
|
17
18
|
raise StopIteration
|
18
19
|
else
|
19
|
-
data[:cursor] =
|
20
|
+
data[:cursor] = parsed_response[:cursor]
|
20
21
|
end
|
21
22
|
end
|
22
23
|
end
|
@@ -16,13 +16,15 @@ module Algolia
|
|
16
16
|
def each
|
17
17
|
loop do
|
18
18
|
if @response
|
19
|
-
|
20
|
-
|
19
|
+
parsed_response = symbolize_hash(@response)
|
20
|
+
parsed_data = symbolize_hash(@data)
|
21
|
+
if parsed_response[:hits].length
|
22
|
+
parsed_response[:hits].each do |hit|
|
21
23
|
hit.delete(:_highlightResult)
|
22
24
|
yield hit
|
23
25
|
end
|
24
26
|
|
25
|
-
if
|
27
|
+
if parsed_response[:nbHits] < parsed_data[:hitsPerPage]
|
26
28
|
@response = nil
|
27
29
|
@data = {
|
28
30
|
hitsPerPage: 1000,
|
@@ -90,11 +90,11 @@ module Algolia
|
|
90
90
|
# @return [Index] new Index instance
|
91
91
|
#
|
92
92
|
def init_index(index_name)
|
93
|
-
index_name.strip
|
94
|
-
if
|
93
|
+
stripped_index_name = index_name.strip
|
94
|
+
if stripped_index_name.empty?
|
95
95
|
raise AlgoliaError, 'Please provide a valid index name'
|
96
96
|
end
|
97
|
-
Index.new(
|
97
|
+
Index.new(stripped_index_name, @transporter, @config)
|
98
98
|
end
|
99
99
|
|
100
100
|
# List all indexes of the client
|
data/lib/algolia/search_index.rb
CHANGED
@@ -115,7 +115,7 @@ module Algolia
|
|
115
115
|
has_next_page = true
|
116
116
|
while has_next_page
|
117
117
|
request_options[:page] = page
|
118
|
-
res = search(query, request_options)
|
118
|
+
res = symbolize_hash(search(query, request_options))
|
119
119
|
|
120
120
|
res[:hits].each_with_index do |hit, i|
|
121
121
|
if callback.call(hit)
|
@@ -976,7 +976,7 @@ module Algolia
|
|
976
976
|
def get_settings(opts = {})
|
977
977
|
response = @transporter.read(:GET, path_encode('/1/indexes/%s/settings', @name) + handle_params({ getVersion: 2 }), {}, opts)
|
978
978
|
|
979
|
-
deserialize_settings(response)
|
979
|
+
deserialize_settings(response, @config.symbolize_keys)
|
980
980
|
end
|
981
981
|
|
982
982
|
# Update some index settings. Only specified settings are overridden
|
@@ -127,15 +127,12 @@ module Algolia
|
|
127
127
|
|
128
128
|
# Generates headers from config headers and optional parameters
|
129
129
|
#
|
130
|
-
# @
|
130
|
+
# @param request_options [RequestOptions]
|
131
131
|
#
|
132
132
|
# @return [Hash] merged headers
|
133
133
|
#
|
134
134
|
def generate_headers(request_options = {})
|
135
|
-
headers
|
136
|
-
extra_headers = request_options.headers || {}
|
137
|
-
@config.headers.each { |key, val| headers[key.to_s] = val }
|
138
|
-
extra_headers.each { |key, val| headers[key.to_s] = val }
|
135
|
+
headers = @config.headers.merge(request_options.headers)
|
139
136
|
if request_options.compression_type == Defaults::GZIP_ENCODING
|
140
137
|
headers['Accept-Encoding'] = Defaults::GZIP_ENCODING
|
141
138
|
end
|
data/lib/algolia/version.rb
CHANGED
@@ -4,7 +4,7 @@ require 'test_helper'
|
|
4
4
|
class AlgoliaConfigTest
|
5
5
|
describe 'set an extra header' do
|
6
6
|
def before_all
|
7
|
-
@config = Algolia::
|
7
|
+
@config = Algolia::BaseConfig.new(application_id: 'app_id', api_key: 'api_key')
|
8
8
|
end
|
9
9
|
|
10
10
|
def test_set_extra_header
|
@@ -18,7 +18,26 @@ class HelpersTest
|
|
18
18
|
replicas: %w(index1 index2)
|
19
19
|
}
|
20
20
|
|
21
|
-
deserialized_settings = deserialize_settings(old_settings)
|
21
|
+
deserialized_settings = deserialize_settings(old_settings, true)
|
22
|
+
assert_equal new_settings, deserialized_settings
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_deserialize_settings_with_string
|
26
|
+
old_settings = {
|
27
|
+
'attributesToIndex' => %w(attr1 attr2),
|
28
|
+
'numericAttributesToIndex' => %w(attr1 attr2),
|
29
|
+
'slaves' => %w(index1 index2),
|
30
|
+
'minWordSizefor1Typo' => 1
|
31
|
+
}
|
32
|
+
|
33
|
+
new_settings = {
|
34
|
+
'searchableAttributes' => %w(attr1 attr2),
|
35
|
+
'numericAttributesForFiltering' => %w(attr1 attr2),
|
36
|
+
'replicas' => %w(index1 index2),
|
37
|
+
'minWordSizefor1Typo' => 1
|
38
|
+
}
|
39
|
+
|
40
|
+
deserialized_settings = deserialize_settings(old_settings, false)
|
22
41
|
assert_equal new_settings, deserialized_settings
|
23
42
|
end
|
24
43
|
end
|
data/upgrade_guide.md
CHANGED
@@ -43,6 +43,12 @@ client = Algolia::Search::Client.create_with_config(search_config)
|
|
43
43
|
index = client.init_index('index_name')
|
44
44
|
```
|
45
45
|
|
46
|
+
By default the keys of the response hashes are symbols. If you wish to change that for strings, use the following configuration
|
47
|
+
```ruby
|
48
|
+
search_config = Algolia::Search::Config.new(application_id: app_id, api_key: api_key, symbolize_keys: false)
|
49
|
+
client = Algolia::Search::Client.create_with_config(search_config)
|
50
|
+
```
|
51
|
+
|
46
52
|
## Search parameters and request options
|
47
53
|
The search parameters and request options are still optional, but they are combined into a single hash instead of two.
|
48
54
|
For example:
|
@@ -66,13 +72,13 @@ index.search('query', opts)
|
|
66
72
|
### `Client`
|
67
73
|
|
68
74
|
#### `set_extra_header`
|
69
|
-
The `set_extra_header` method has been moved from the Client to the `Algolia::
|
75
|
+
The `set_extra_header` method has been moved from the Client to the `Algolia::BaseConfig` class. You have to define your extra headers on Client instantiation.
|
70
76
|
```ruby
|
71
77
|
# Before
|
72
78
|
client.set_extra_header('admin', 'admin-key')
|
73
79
|
|
74
80
|
# After
|
75
|
-
# `Algolia::Search::Config` inherits from `Algolia::
|
81
|
+
# `Algolia::Search::Config` inherits from `Algolia::BaseConfig`
|
76
82
|
config = Algolia::Search::Config.new(app_id: 'APP_ID', api_key: 'API_KEY')
|
77
83
|
config.set_extra_header('admin', 'admin-key')
|
78
84
|
|
@@ -223,7 +229,7 @@ client.search_user_ids('query', {clusterName: 'my-cluster', hitPerPage: 12, page
|
|
223
229
|
#### `pending_mappings`
|
224
230
|
New method to check the status of your clusters' migration or user creation.
|
225
231
|
```ruby
|
226
|
-
client.
|
232
|
+
client.pending_mappings?({ retrieveMappings: true })
|
227
233
|
```
|
228
234
|
|
229
235
|
#### `get_logs`
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: algolia
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Algolia
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-11-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -56,16 +56,22 @@ dependencies:
|
|
56
56
|
name: faraday
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0.15'
|
62
|
+
- - "<"
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: '2.0'
|
62
65
|
type: :runtime
|
63
66
|
prerelease: false
|
64
67
|
version_requirements: !ruby/object:Gem::Requirement
|
65
68
|
requirements:
|
66
|
-
- - "
|
69
|
+
- - ">="
|
67
70
|
- !ruby/object:Gem::Version
|
68
71
|
version: '0.15'
|
72
|
+
- - "<"
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '2.0'
|
69
75
|
- !ruby/object:Gem::Dependency
|
70
76
|
name: multi_json
|
71
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -178,8 +184,7 @@ dependencies:
|
|
178
184
|
- - ">="
|
179
185
|
- !ruby/object:Gem::Version
|
180
186
|
version: '0'
|
181
|
-
description:
|
182
|
-
Please keep on using the algoliasearch gem in the meantime.
|
187
|
+
description: A simple Ruby client for the algolia.com REST API
|
183
188
|
email:
|
184
189
|
- support@algolia.com
|
185
190
|
executables: []
|
@@ -192,11 +197,13 @@ files:
|
|
192
197
|
- ".gitignore"
|
193
198
|
- ".rubocop.yml"
|
194
199
|
- ".rubocop_todo.yml"
|
200
|
+
- CHANGELOG.md
|
195
201
|
- CODE_OF_CONDUCT.md
|
196
202
|
- Gemfile
|
197
203
|
- LICENSE
|
198
204
|
- README.md
|
199
205
|
- Rakefile
|
206
|
+
- SECURITY.md
|
200
207
|
- Steepfile
|
201
208
|
- algolia.gemspec
|
202
209
|
- bin/console
|
@@ -271,13 +278,13 @@ files:
|
|
271
278
|
- test/algolia/unit/user_agent_test.rb
|
272
279
|
- test/test_helper.rb
|
273
280
|
- upgrade_guide.md
|
274
|
-
homepage: https://github.com/algolia/algoliasearch-client-ruby
|
281
|
+
homepage: https://github.com/algolia/algoliasearch-client-ruby
|
275
282
|
licenses:
|
276
283
|
- MIT
|
277
284
|
metadata:
|
278
285
|
bug_tracker_uri: https://github.com/algolia/algoliasearch-client-ruby/issues
|
279
|
-
documentation_uri:
|
280
|
-
source_code_uri: https://github.com/algolia/algoliasearch-client-ruby
|
286
|
+
documentation_uri: https://www.algolia.com/doc/api-client/getting-started/install/ruby
|
287
|
+
source_code_uri: https://github.com/algolia/algoliasearch-client-ruby
|
281
288
|
post_install_message:
|
282
289
|
rdoc_options: []
|
283
290
|
require_paths:
|
@@ -289,14 +296,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
289
296
|
version: '0'
|
290
297
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
291
298
|
requirements:
|
292
|
-
- - "
|
299
|
+
- - ">="
|
293
300
|
- !ruby/object:Gem::Version
|
294
|
-
version:
|
301
|
+
version: '0'
|
295
302
|
requirements: []
|
296
303
|
rubygems_version: 3.0.3
|
297
304
|
signing_key:
|
298
305
|
specification_version: 4
|
299
|
-
summary: A simple Ruby client for the algolia.com REST API
|
306
|
+
summary: A simple Ruby client for the algolia.com REST API
|
300
307
|
test_files:
|
301
308
|
- test/algolia/integration/account_client_test.rb
|
302
309
|
- test/algolia/integration/analytics_client_test.rb
|