algoliasearch-rails 1.20.1 → 1.20.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 92f616205addc3e9e48ab6a23139233080fc7b97
4
- data.tar.gz: cdb287198f237c25d22471c1a8d3d330ec13b210
3
+ metadata.gz: 4f68b4809609514c72b5c6b9cada34fb133283b5
4
+ data.tar.gz: 24eca8722672630c450d232b9f73af68505d0972
5
5
  SHA512:
6
- metadata.gz: 348f1d24568376ccc5f6dc7473ea35237ee240401fa51fa4891d2f52fb1a0f279b21b916c10e0ee468dfbb2d094cd0e369b03187e25c244986e950d043258154
7
- data.tar.gz: cacfa47e3db345ebefc78174fc8217e5acb6846ad279c44f926ab41191dd90ddd5b7a807b4cf01d1097e9ea1439e37c3f87c922710b07a781d2e83ad970a400e
6
+ metadata.gz: dd4c99dd108a20047b9d084c06af3dda1044fafd1b537ab9fbcf5164b0fc2d89c70be7526944159b2b51f121334a8004f2cb4600b721f7c1b7a7e90b88609c6a
7
+ data.tar.gz: eaa7f323256c42b7cc3d2c0e5188254db900881d52b593342a8d220dbacf767ae1fe08d42af55424b97b119459633a5fe13237de3d95f68c1422b38a15ceeb16
data/Gemfile CHANGED
@@ -1,7 +1,7 @@
1
1
  source "http://rubygems.org"
2
2
 
3
3
  gem 'json', '~> 1.8', '>= 1.8.6'
4
- gem 'algoliasearch', '~> 1.14.0'
4
+ gem 'algoliasearch', '~> 1.17.0'
5
5
 
6
6
  if defined?(RUBY_ENGINE) && RUBY_ENGINE == 'rbx'
7
7
  gem 'rubysl', '~> 2.0', :platform => :rbx
@@ -39,7 +39,7 @@ GEM
39
39
  minitest (~> 5.1)
40
40
  tzinfo (~> 1.1)
41
41
  addressable (2.4.0)
42
- algoliasearch (1.14.0)
42
+ algoliasearch (1.17.0)
43
43
  httpclient (~> 2.8.3)
44
44
  json (>= 1.5.1)
45
45
  arel (7.1.4)
@@ -175,7 +175,7 @@ PLATFORMS
175
175
  DEPENDENCIES
176
176
  activerecord-jdbc-adapter
177
177
  activerecord-jdbcsqlite3-adapter
178
- algoliasearch (~> 1.14.0)
178
+ algoliasearch (~> 1.17.0)
179
179
  jdbc-sqlite3
180
180
  json (~> 1.8, >= 1.8.6)
181
181
  kaminari
@@ -190,4 +190,4 @@ DEPENDENCIES
190
190
  will_paginate (>= 2.3.15)
191
191
 
192
192
  BUNDLED WITH
193
- 1.15.3
193
+ 1.16.0
data/README.md CHANGED
@@ -21,6 +21,7 @@ You can find the full reference on [Algolia's website](https://www.algolia.com/d
21
21
  ## Table of Contents
22
22
 
23
23
 
24
+
24
25
  1. **[Setup](#setup)**
25
26
 
26
27
  * [Install](#install)
@@ -74,6 +75,9 @@ You can find the full reference on [Algolia's website](https://www.algolia.com/d
74
75
 
75
76
 
76
77
 
78
+
79
+
80
+
77
81
  # Setup
78
82
 
79
83
 
@@ -113,7 +117,7 @@ You can configure a various timeout thresholds by setting the following options
113
117
  ```ruby
114
118
  AlgoliaSearch.configuration = {
115
119
  application_id: 'YourApplicationID',
116
- api_key: 'YourAPIKey'
120
+ api_key: 'YourAPIKey',
117
121
  connect_timeout: 2,
118
122
  receive_timeout: 30,
119
123
  send_timeout: 30,
@@ -124,7 +128,7 @@ AlgoliaSearch.configuration = {
124
128
 
125
129
  ## Notes
126
130
 
127
- This gem makes intensive use of Rails' callbacks to trigger the indexing tasks. If you're using methods bypassing `after_validation`, `before_save` or `after_commit` callbacks, it will not index your changes. For example: `update_attribute` doesn't perform validations checks, to perform validations when updating use `update_attributes`.
131
+ This gem makes extensive use of Rails' callbacks to trigger the indexing tasks. If you're using methods bypassing `after_validation`, `before_save` or `after_commit` callbacks, it will not index your changes. For example: `update_attribute` doesn't perform validations checks, to perform validations when updating use `update_attributes`.
128
132
 
129
133
  All methods injected by the `AlgoliaSearch` module are prefixed by `algolia_` and aliased to the associated short names if they aren't already defined.
130
134
 
@@ -135,6 +139,7 @@ Contact.algolia_search("jon doe") # <=> Contact.search("jon doe")
135
139
  ```
136
140
 
137
141
 
142
+
138
143
  # Usage
139
144
 
140
145
 
@@ -300,7 +305,7 @@ end
300
305
 
301
306
  ```ruby
302
307
  # dynamical search parameters
303
- p Contact.raw_search("jon doe", { :hitsPerPage => 5, :page => 2 })
308
+ p Contact.raw_search('jon doe', { hitsPerPage: 5, page: 2 })
304
309
  ```
305
310
 
306
311
  ## Backend Pagination
@@ -375,7 +380,7 @@ end
375
380
  ```
376
381
 
377
382
  ```ruby
378
- hits = Contact.search("jon doe", { :facets => '*' })
383
+ hits = Contact.search('jon doe', { facets: '*' })
379
384
  p hits # ORM-compliant array of objects
380
385
  p hits.facets # extra method added to retrieve facets
381
386
  p hits.facets['company'] # facet values+count of facet 'company'
@@ -383,7 +388,7 @@ p hits.facets['zip_code'] # facet values+count of facet 'zip_code'
383
388
  ```
384
389
 
385
390
  ```ruby
386
- raw_json = Contact.raw_search("jon doe", { :facets => '*' })
391
+ raw_json = Contact.raw_search('jon doe', { facets: '*' })
387
392
  p raw_json['facets']
388
393
  ```
389
394
 
@@ -409,7 +414,7 @@ Product.search_for_facet_values('category', 'phone', {
409
414
  ## Group by
410
415
 
411
416
  More info on distinct for grouping can be found
412
- [here](https://www.algolia.com/doc/guides/search/distinct#distinct-for-grouping).
417
+ [here](https://www.algolia.com/doc/guides/ranking/distinct/).
413
418
 
414
419
  ```ruby
415
420
  class Contact < ActiveRecord::Base
@@ -442,6 +447,7 @@ end
442
447
  At query time, specify <code>{ aroundLatLng: "37.33, -121.89", aroundRadius: 50000 }</code> as search parameters to restrict the result set to 50KM around San Jose.
443
448
 
444
449
 
450
+
445
451
  # Options
446
452
 
447
453
 
@@ -857,6 +863,7 @@ end
857
863
  ```
858
864
 
859
865
 
866
+
860
867
  # Indices
861
868
 
862
869
 
@@ -893,6 +900,8 @@ Contact.reindex
893
900
 
894
901
  **Notes**: if you're using an index-specific API key, ensure you're allowing both `<INDEX_NAME>` and `<INDEX_NAME>.tmp`.
895
902
 
903
+ **Warning:** You should not use such an atomic reindexing operation while scoping/filtering the model because this operation **replaces the entire index**, keeping the filtered objects only. ie: Don't do `MyModel.where(...).reindex` but do `MyModel.where(...).reindex!` (with the trailing `!`)!!!
904
+
896
905
  ### Regular reindexing
897
906
 
898
907
  To reindex all your objects in place (without temporary index and therefore without deleting removed objects), use the `reindex!` class method:
@@ -1036,13 +1045,14 @@ Book.search 'foo bar', index: 'Book_by_editor'
1036
1045
  ```
1037
1046
 
1038
1047
 
1048
+
1039
1049
  # Testing
1040
1050
 
1041
1051
 
1042
1052
 
1043
1053
  ## Notes
1044
1054
 
1045
- To run the specs, please set the <code>ALGOLIA_APPLICATION_ID</code> and <code>ALGOLIA_API_KEY</code> environment variables. Since the tests are creating and removing indexes, DO NOT use your production account.
1055
+ To run the specs, please set the <code>ALGOLIA_APPLICATION_ID</code> and <code>ALGOLIA_API_KEY</code> environment variables. Since the tests are creating and removing indices, DO NOT use your production account.
1046
1056
 
1047
1057
  You may want to disable all indexing (add, update & delete operations) API calls, you can set the `disable_indexing` option:
1048
1058
 
@@ -1050,14 +1060,14 @@ You may want to disable all indexing (add, update & delete operations) API calls
1050
1060
  class User < ActiveRecord::Base
1051
1061
  include AlgoliaSearch
1052
1062
 
1053
- algoliasearch :per_environment => true, :disable_indexing => Rails.env.test? do
1063
+ algoliasearch per_environment: true, disable_indexing: Rails.env.test? do
1054
1064
  end
1055
1065
  end
1056
1066
 
1057
1067
  class User < ActiveRecord::Base
1058
1068
  include AlgoliaSearch
1059
1069
 
1060
- algoliasearch :per_environment => true, :disable_indexing => Proc.new { Rails.env.test? || more_complex_condition } do
1070
+ algoliasearch per_environment: true, disable_indexing: Proc.new { Rails.env.test? || more_complex_condition } do
1061
1071
  end
1062
1072
  end
1063
1073
  ```
@@ -1086,4 +1096,3 @@ end
1086
1096
  ```
1087
1097
 
1088
1098
 
1089
-
@@ -77,7 +77,7 @@ Gem::Specification.new do |s|
77
77
 
78
78
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
79
79
  s.add_runtime_dependency(%q<json>, [">= 1.5.1"])
80
- s.add_runtime_dependency(%q<algoliasearch>, ["~> 1.14.0"])
80
+ s.add_runtime_dependency(%q<algoliasearch>, ["~> 1.17.0"])
81
81
  s.add_development_dependency(%q<will_paginate>, [">= 2.3.15"])
82
82
  s.add_development_dependency(%q<kaminari>, [">= 0"])
83
83
  s.add_development_dependency "travis"
@@ -85,11 +85,11 @@ Gem::Specification.new do |s|
85
85
  s.add_development_dependency "rdoc"
86
86
  else
87
87
  s.add_dependency(%q<json>, [">= 1.5.1"])
88
- s.add_dependency(%q<algoliasearch>, ["~> 1.14.0"])
88
+ s.add_dependency(%q<algoliasearch>, ["~> 1.17.0"])
89
89
  end
90
90
  else
91
91
  s.add_dependency(%q<json>, [">= 1.5.1"])
92
- s.add_dependency(%q<algoliasearch>, ["~> 1.14.0"])
92
+ s.add_dependency(%q<algoliasearch>, ["~> 1.17.0"])
93
93
  end
94
94
  end
95
95
 
@@ -745,12 +745,12 @@ module AlgoliaSearch
745
745
 
746
746
  @algolia_indexes[settings] = SafeIndex.new(algolia_index_name(options), algoliasearch_options[:raise_on_failure])
747
747
 
748
- current_settings = @algolia_indexes[settings].get_settings rescue nil # if the index doesn't exist
748
+ current_settings = @algolia_indexes[settings].get_settings(:getVersion => 1) rescue nil # if the index doesn't exist
749
749
 
750
750
  index_settings ||= settings.to_settings
751
751
  index_settings = options[:primary_settings].to_settings.merge(index_settings) if options[:inherit]
752
752
 
753
- if !algolia_indexing_disabled?(options) && (index_settings || algoliasearch_settings_changed?(current_settings, index_settings))
753
+ if !algolia_indexing_disabled?(options) && algoliasearch_settings_changed?(current_settings, index_settings)
754
754
  used_slaves = !current_settings.nil? && !current_settings['slaves'].nil?
755
755
  replicas = index_settings.delete(:replicas) ||
756
756
  index_settings.delete('replicas') ||
@@ -1,3 +1,3 @@
1
1
  module AlgoliaSearch
2
- VERSION = '1.20.1'
2
+ VERSION = '1.20.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: algoliasearch-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.20.1
4
+ version: 1.20.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Algolia
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-04 00:00:00.000000000 Z
11
+ date: 2017-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.14.0
33
+ version: 1.17.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.14.0
40
+ version: 1.17.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: will_paginate
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -183,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
183
183
  version: '0'
184
184
  requirements: []
185
185
  rubyforge_project:
186
- rubygems_version: 2.6.8
186
+ rubygems_version: 2.6.13
187
187
  signing_key:
188
188
  specification_version: 4
189
189
  summary: AlgoliaSearch integration to your favorite ORM