chewy 0.10.1 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (162) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +240 -0
  3. data/.github/ISSUE_TEMPLATE/bug_report.md +39 -0
  4. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  5. data/.github/PULL_REQUEST_TEMPLATE.md +16 -0
  6. data/.rubocop.yml +25 -25
  7. data/Appraisals +12 -10
  8. data/CHANGELOG.md +312 -331
  9. data/CODE_OF_CONDUCT.md +14 -0
  10. data/CONTRIBUTING.md +63 -0
  11. data/Gemfile +5 -1
  12. data/LICENSE.txt +1 -1
  13. data/README.md +143 -77
  14. data/chewy.gemspec +10 -12
  15. data/gemfiles/{rails.4.2.mongoid.5.1.gemfile → rails.5.2.activerecord.gemfile} +6 -4
  16. data/gemfiles/{rails.4.2.activerecord.gemfile → rails.5.2.mongoid.6.4.gemfile} +6 -4
  17. data/gemfiles/{rails.4.0.activerecord.gemfile → rails.6.0.activerecord.gemfile} +6 -3
  18. data/gemfiles/rails.6.1.activerecord.gemfile +19 -0
  19. data/gemfiles/sequel.4.45.gemfile +2 -2
  20. data/lib/chewy.rb +2 -1
  21. data/lib/chewy/backports/duplicable.rb +1 -1
  22. data/lib/chewy/config.rb +10 -39
  23. data/lib/chewy/fields/base.rb +9 -3
  24. data/lib/chewy/fields/root.rb +13 -9
  25. data/lib/chewy/index.rb +3 -1
  26. data/lib/chewy/index/actions.rb +28 -16
  27. data/lib/chewy/index/aliases.rb +16 -5
  28. data/lib/chewy/index/settings.rb +2 -0
  29. data/lib/chewy/index/specification.rb +12 -10
  30. data/lib/chewy/minitest/helpers.rb +6 -6
  31. data/lib/chewy/minitest/search_index_receiver.rb +17 -17
  32. data/lib/chewy/multi_search.rb +62 -0
  33. data/lib/chewy/railtie.rb +3 -5
  34. data/lib/chewy/rake_helper.rb +5 -5
  35. data/lib/chewy/rspec/update_index.rb +3 -5
  36. data/lib/chewy/search.rb +4 -11
  37. data/lib/chewy/search/loader.rb +1 -1
  38. data/lib/chewy/search/pagination/will_paginate.rb +1 -1
  39. data/lib/chewy/search/parameters.rb +24 -6
  40. data/lib/chewy/search/parameters/allow_partial_search_results.rb +27 -0
  41. data/lib/chewy/search/parameters/concerns/query_storage.rb +4 -3
  42. data/lib/chewy/search/parameters/indices.rb +123 -0
  43. data/lib/chewy/search/parameters/none.rb +1 -3
  44. data/lib/chewy/search/request.rb +101 -74
  45. data/lib/chewy/search/scrolling.rb +7 -6
  46. data/lib/chewy/stash.rb +31 -22
  47. data/lib/chewy/strategy/active_job.rb +1 -1
  48. data/lib/chewy/strategy/atomic.rb +1 -1
  49. data/lib/chewy/strategy/sidekiq.rb +1 -1
  50. data/lib/chewy/type.rb +5 -2
  51. data/lib/chewy/type/adapter/active_record.rb +1 -1
  52. data/lib/chewy/type/adapter/base.rb +9 -9
  53. data/lib/chewy/type/adapter/mongoid.rb +2 -4
  54. data/lib/chewy/type/adapter/orm.rb +7 -4
  55. data/lib/chewy/type/adapter/sequel.rb +5 -7
  56. data/lib/chewy/type/crutch.rb +1 -1
  57. data/lib/chewy/type/import.rb +16 -5
  58. data/lib/chewy/type/import/bulk_builder.rb +1 -1
  59. data/lib/chewy/type/import/bulk_request.rb +4 -2
  60. data/lib/chewy/type/import/journal_builder.rb +3 -3
  61. data/lib/chewy/type/import/routine.rb +3 -3
  62. data/lib/chewy/type/mapping.rb +42 -36
  63. data/lib/chewy/type/observe.rb +16 -12
  64. data/lib/chewy/type/syncer.rb +6 -7
  65. data/lib/chewy/type/witchcraft.rb +5 -3
  66. data/lib/chewy/type/wrapper.rb +14 -4
  67. data/lib/chewy/version.rb +1 -1
  68. data/lib/sequel/plugins/chewy_observe.rb +4 -19
  69. data/migration_guide.md +34 -0
  70. data/spec/chewy/config_spec.rb +16 -21
  71. data/spec/chewy/fields/base_spec.rb +68 -70
  72. data/spec/chewy/fields/root_spec.rb +13 -13
  73. data/spec/chewy/index/actions_spec.rb +157 -38
  74. data/spec/chewy/index/aliases_spec.rb +3 -3
  75. data/spec/chewy/index/specification_spec.rb +25 -16
  76. data/spec/chewy/index_spec.rb +75 -45
  77. data/spec/chewy/journal_spec.rb +33 -29
  78. data/spec/chewy/minitest/search_index_receiver_spec.rb +11 -9
  79. data/spec/chewy/multi_search_spec.rb +85 -0
  80. data/spec/chewy/rake_helper_spec.rb +123 -95
  81. data/spec/chewy/rspec/update_index_spec.rb +47 -46
  82. data/spec/chewy/runtime_spec.rb +2 -2
  83. data/spec/chewy/search/parameters/indices_spec.rb +190 -0
  84. data/spec/chewy/search/parameters/none_spec.rb +1 -1
  85. data/spec/chewy/search/parameters_spec.rb +21 -4
  86. data/spec/chewy/search/request_spec.rb +103 -70
  87. data/spec/chewy/search/response_spec.rb +27 -17
  88. data/spec/chewy/search/scrolling_spec.rb +27 -17
  89. data/spec/chewy/search_spec.rb +49 -35
  90. data/spec/chewy/stash_spec.rb +15 -13
  91. data/spec/chewy/strategy/active_job_spec.rb +15 -2
  92. data/spec/chewy/strategy/shoryuken_spec.rb +8 -2
  93. data/spec/chewy/strategy/sidekiq_spec.rb +6 -2
  94. data/spec/chewy/type/adapter/active_record_spec.rb +16 -4
  95. data/spec/chewy/type/import/bulk_builder_spec.rb +9 -94
  96. data/spec/chewy/type/import/journal_builder_spec.rb +17 -15
  97. data/spec/chewy/type/import_spec.rb +15 -0
  98. data/spec/chewy/type/mapping_spec.rb +51 -18
  99. data/spec/chewy/type/observe_spec.rb +4 -4
  100. data/spec/chewy/type/witchcraft_spec.rb +15 -0
  101. data/spec/chewy/type/wrapper_spec.rb +3 -1
  102. data/spec/chewy_spec.rb +0 -7
  103. data/spec/spec_helper.rb +5 -1
  104. data/spec/support/active_record.rb +21 -0
  105. metadata +51 -116
  106. data/.travis.yml +0 -53
  107. data/LEGACY_DSL.md +0 -497
  108. data/gemfiles/rails.4.1.activerecord.gemfile +0 -14
  109. data/gemfiles/rails.5.0.activerecord.gemfile +0 -15
  110. data/gemfiles/rails.5.0.mongoid.6.0.gemfile +0 -15
  111. data/gemfiles/rails.5.1.activerecord.gemfile +0 -15
  112. data/gemfiles/rails.5.1.mongoid.6.1.gemfile +0 -15
  113. data/lib/chewy/query.rb +0 -1098
  114. data/lib/chewy/query/compose.rb +0 -68
  115. data/lib/chewy/query/criteria.rb +0 -191
  116. data/lib/chewy/query/filters.rb +0 -227
  117. data/lib/chewy/query/loading.rb +0 -111
  118. data/lib/chewy/query/nodes/and.rb +0 -25
  119. data/lib/chewy/query/nodes/base.rb +0 -17
  120. data/lib/chewy/query/nodes/bool.rb +0 -34
  121. data/lib/chewy/query/nodes/equal.rb +0 -34
  122. data/lib/chewy/query/nodes/exists.rb +0 -20
  123. data/lib/chewy/query/nodes/expr.rb +0 -28
  124. data/lib/chewy/query/nodes/field.rb +0 -110
  125. data/lib/chewy/query/nodes/has_child.rb +0 -15
  126. data/lib/chewy/query/nodes/has_parent.rb +0 -15
  127. data/lib/chewy/query/nodes/has_relation.rb +0 -59
  128. data/lib/chewy/query/nodes/match_all.rb +0 -11
  129. data/lib/chewy/query/nodes/missing.rb +0 -20
  130. data/lib/chewy/query/nodes/not.rb +0 -25
  131. data/lib/chewy/query/nodes/or.rb +0 -25
  132. data/lib/chewy/query/nodes/prefix.rb +0 -19
  133. data/lib/chewy/query/nodes/query.rb +0 -20
  134. data/lib/chewy/query/nodes/range.rb +0 -63
  135. data/lib/chewy/query/nodes/raw.rb +0 -15
  136. data/lib/chewy/query/nodes/regexp.rb +0 -35
  137. data/lib/chewy/query/nodes/script.rb +0 -20
  138. data/lib/chewy/query/pagination.rb +0 -25
  139. data/spec/chewy/query/criteria_spec.rb +0 -700
  140. data/spec/chewy/query/filters_spec.rb +0 -201
  141. data/spec/chewy/query/loading_spec.rb +0 -124
  142. data/spec/chewy/query/nodes/and_spec.rb +0 -12
  143. data/spec/chewy/query/nodes/bool_spec.rb +0 -14
  144. data/spec/chewy/query/nodes/equal_spec.rb +0 -32
  145. data/spec/chewy/query/nodes/exists_spec.rb +0 -18
  146. data/spec/chewy/query/nodes/has_child_spec.rb +0 -59
  147. data/spec/chewy/query/nodes/has_parent_spec.rb +0 -59
  148. data/spec/chewy/query/nodes/match_all_spec.rb +0 -11
  149. data/spec/chewy/query/nodes/missing_spec.rb +0 -16
  150. data/spec/chewy/query/nodes/not_spec.rb +0 -13
  151. data/spec/chewy/query/nodes/or_spec.rb +0 -12
  152. data/spec/chewy/query/nodes/prefix_spec.rb +0 -16
  153. data/spec/chewy/query/nodes/query_spec.rb +0 -12
  154. data/spec/chewy/query/nodes/range_spec.rb +0 -32
  155. data/spec/chewy/query/nodes/raw_spec.rb +0 -11
  156. data/spec/chewy/query/nodes/regexp_spec.rb +0 -43
  157. data/spec/chewy/query/nodes/script_spec.rb +0 -15
  158. data/spec/chewy/query/pagination/kaminari_spec.rb +0 -5
  159. data/spec/chewy/query/pagination/will_paginate_spec.rb +0 -5
  160. data/spec/chewy/query/pagination_spec.rb +0 -39
  161. data/spec/chewy/query_spec.rb +0 -636
  162. data/spec/chewy/search/parameters/indices_boost_spec.rb +0 -83
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: f9741190c8e67f2cf5a4ae0a7270eb7716884b70
4
- data.tar.gz: fc86af473569d271c43d3b39cd0f710234adae76
2
+ SHA256:
3
+ metadata.gz: c03ccd9ded0ee8f14a062ef7ed00604a2830b3a2d74ecc2dbdfacb6e2287ff69
4
+ data.tar.gz: 9d88e52adef73db5324a59d4f943cc8f870f7daac47fa23ace747f6bfd5e179a
5
5
  SHA512:
6
- metadata.gz: 50ee0a42f751e1aba5639b139e236056aa067f07524eb7d3d1c7bfc80f47b73ad8d7c9f5ae4df2cceda03d9b22d1896def3dc311c9f348e17bfec241bdb6102d
7
- data.tar.gz: bee6ca569f2568ab4c33f3fcc23ffca5e5cb121a1145a07e8dcb9f09a0d5333999e454f2ff220621b2aebaf14dc29a9ba4254e0e6cb0f195d8c83fd2d9a1a942
6
+ metadata.gz: 7f1b0e62272ebb745d544ebcaa35fe593874ddcbc56aac806907a0c72fa141a359af8f15887e9c4b7426dd92e289e66ded1e68963225ac0375c0009756d48ff3
7
+ data.tar.gz: d90b624d9cfddc6e3bdf2985e535e25471209ad40d203f6c29384ddcdfe36630d9a348ff3fa8b1cc37d93da194224905df179329765061e0d83a6b2ec4ed650c
@@ -0,0 +1,240 @@
1
+ # Check https://circleci.com/docs/2.0/language-ruby/ for more details
2
+ version: 2.1
3
+
4
+ es-env: &es-env
5
+ cluster.name: elasticsearch
6
+ transport.host: localhost
7
+ network.host: 127.0.0.1
8
+ http.port: 9250
9
+ discovery.type: single-node
10
+ xpack.security.enabled: false
11
+ xpack.monitoring.enabled: false
12
+
13
+ workflows:
14
+ build:
15
+ jobs:
16
+ - rubocop
17
+ - rspec-ruby-26-activerecord61
18
+ - rspec-ruby-26-activerecord60
19
+ - rspec-ruby-26-activerecord52
20
+ - rspec-ruby-26-mongoid
21
+ - rspec-ruby-27-activerecord61
22
+ - rspec-ruby-27-activerecord60
23
+ - rspec-ruby-27-activerecord52
24
+ - rspec-ruby-27-mongoid
25
+ - rspec-ruby-30-activerecord61
26
+ - rspec-ruby-27-activerecord61-es6
27
+ - rspec-ruby-30-activerecord61-es6
28
+
29
+ commands:
30
+ rspec-test:
31
+ description: Test rspec in current ruby
32
+ parameters:
33
+ pre-steps:
34
+ description: Necessary steps after checkout
35
+ type: steps
36
+ default: []
37
+ steps:
38
+ - checkout
39
+ - run:
40
+ name: ruby version
41
+ command: |
42
+ ruby -e "STDERR.puts RUBY_VERSION; puts RUBY_VERSION.gsub(/^(\d+)\.(\d+)\..*/, '\1_\2')" > .ruby.version
43
+ - run:
44
+ name: Gemfile.lock version
45
+ command: |
46
+ echo "$GEMFILE.lock" > .Gemfile.lock.path
47
+ - steps: << parameters.pre-steps >>
48
+ - restore_cache:
49
+ keys:
50
+ - dependencies-{{ checksum ".ruby.version" }}-{{ checksum ".Gemfile.lock.path" }}
51
+ - run:
52
+ name: install dependencies
53
+ command: |
54
+ bundle install --jobs=4 --retry=3 --path vendor/bundle --gemfile=$GEMFILE
55
+ - save_cache:
56
+ paths:
57
+ - ./vendor/bundle
58
+ key: dependencies-{{ checksum ".ruby.version" }}-{{ checksum ".Gemfile.lock.path" }}
59
+ - run:
60
+ name: Disable replication of elastic indices
61
+ command: |
62
+ curl -XPUT 'http://localhost:9250/_all/_settings?preserve_existing=true' -d '{
63
+ "index.number_of_replicas":"0"
64
+ }'
65
+ - run:
66
+ name: run tests
67
+ command: |
68
+ ruby -v
69
+ git config --global user.email "you@example.com"
70
+ git config --global user.name "Your Name"
71
+ mkdir /tmp/test-results
72
+ TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)"
73
+ BUNDLE_GEMFILE=$GEMFILE bundle exec rspec --format progress --format RspecJunitFormatter --out /tmp/test-results/rspec.xml $TEST_FILES
74
+ - store_test_results:
75
+ path: /tmp/test-results
76
+
77
+ jobs:
78
+ rubocop:
79
+ docker:
80
+ - image: circleci/ruby:2.6
81
+ working_directory: ~/repo
82
+ steps:
83
+ - checkout
84
+ - run:
85
+ name: ruby version
86
+ command: |
87
+ ruby -e "STDERR.puts RUBY_VERSION; puts RUBY_VERSION.gsub(/^(\d+)\.(\d+)\..*/, '\1_\2')" > .ruby.version
88
+ - run:
89
+ name: Gemfile.lock version
90
+ command: |
91
+ echo "$GEMFILE.lock" > .Gemfile.lock.path
92
+ - restore_cache:
93
+ keys:
94
+ - dependencies-{{ checksum ".ruby.version" }}-{{ checksum ".Gemfile.lock.path" }}
95
+ - run:
96
+ name: install dependencies
97
+ command: |
98
+ bundle install --jobs=4 --retry=3 --path vendor/bundle --binstubs=/usr/local/bundle/bin
99
+ - save_cache:
100
+ paths:
101
+ - ./vendor/bundle
102
+ key: dependencies-{{ checksum ".ruby.version" }}-{{ checksum ".Gemfile.lock.path" }}
103
+ - run:
104
+ name: run rubocop
105
+ command: |
106
+ bundle exec rubocop --format simple
107
+
108
+ rspec-ruby-26-activerecord52:
109
+ docker:
110
+ - image: circleci/ruby:2.6
111
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
112
+ environment:
113
+ <<: *es-env
114
+ working_directory: ~/repo
115
+ environment:
116
+ GEMFILE: gemfiles/rails.5.2.activerecord.gemfile
117
+ steps:
118
+ - rspec-test
119
+
120
+ rspec-ruby-26-activerecord60:
121
+ docker:
122
+ - image: circleci/ruby:2.6
123
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
124
+ environment:
125
+ <<: *es-env
126
+ working_directory: ~/repo
127
+ environment:
128
+ GEMFILE: gemfiles/rails.6.0.activerecord.gemfile
129
+ steps:
130
+ - rspec-test
131
+
132
+ rspec-ruby-26-activerecord61:
133
+ docker:
134
+ - image: circleci/ruby:2.6
135
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
136
+ environment:
137
+ <<: *es-env
138
+ working_directory: ~/repo
139
+ environment:
140
+ GEMFILE: gemfiles/rails.6.1.activerecord.gemfile
141
+ steps:
142
+ - rspec-test
143
+
144
+ rspec-ruby-26-mongoid:
145
+ docker:
146
+ - image: circleci/ruby:2.6
147
+ - image: circleci/mongo:4.2.5
148
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
149
+ environment:
150
+ <<: *es-env
151
+ working_directory: ~/repo
152
+ environment:
153
+ GEMFILE: gemfiles/rails.5.2.mongoid.6.4.gemfile
154
+ steps:
155
+ - rspec-test
156
+
157
+ rspec-ruby-27-activerecord52:
158
+ docker:
159
+ - image: circleci/ruby:2.7
160
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
161
+ environment:
162
+ <<: *es-env
163
+ working_directory: ~/repo
164
+ environment:
165
+ GEMFILE: gemfiles/rails.5.2.activerecord.gemfile
166
+ steps:
167
+ - rspec-test
168
+
169
+ rspec-ruby-27-activerecord60:
170
+ docker:
171
+ - image: circleci/ruby:2.7
172
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
173
+ environment:
174
+ <<: *es-env
175
+ working_directory: ~/repo
176
+ environment:
177
+ GEMFILE: gemfiles/rails.6.0.activerecord.gemfile
178
+ steps:
179
+ - rspec-test
180
+
181
+ rspec-ruby-27-activerecord61:
182
+ docker:
183
+ - image: circleci/ruby:2.7
184
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
185
+ environment:
186
+ <<: *es-env
187
+ working_directory: ~/repo
188
+ environment:
189
+ GEMFILE: gemfiles/rails.6.1.activerecord.gemfile
190
+ steps:
191
+ - rspec-test
192
+
193
+ rspec-ruby-27-mongoid:
194
+ docker:
195
+ - image: circleci/ruby:2.7
196
+ - image: circleci/mongo:4.2.5
197
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
198
+ environment:
199
+ <<: *es-env
200
+ working_directory: ~/repo
201
+ environment:
202
+ GEMFILE: gemfiles/rails.5.2.mongoid.6.4.gemfile
203
+ steps:
204
+ - rspec-test
205
+
206
+ rspec-ruby-30-activerecord61:
207
+ docker:
208
+ - image: circleci/ruby:3.0
209
+ - image: docker.elastic.co/elasticsearch/elasticsearch:7.10.1
210
+ environment:
211
+ <<: *es-env
212
+ working_directory: ~/repo
213
+ environment:
214
+ GEMFILE: gemfiles/rails.6.1.activerecord.gemfile
215
+ steps:
216
+ - rspec-test
217
+
218
+ rspec-ruby-27-activerecord61-es6:
219
+ docker:
220
+ - image: circleci/ruby:2.7
221
+ - image: docker.elastic.co/elasticsearch/elasticsearch:6.8.13
222
+ environment:
223
+ <<: *es-env
224
+ working_directory: ~/repo
225
+ environment:
226
+ GEMFILE: gemfiles/rails.6.1.activerecord.gemfile
227
+ steps:
228
+ - rspec-test
229
+
230
+ rspec-ruby-30-activerecord61-es6:
231
+ docker:
232
+ - image: circleci/ruby:3.0
233
+ - image: docker.elastic.co/elasticsearch/elasticsearch:6.8.13
234
+ environment:
235
+ <<: *es-env
236
+ working_directory: ~/repo
237
+ environment:
238
+ GEMFILE: gemfiles/rails.6.1.activerecord.gemfile
239
+ steps:
240
+ - rspec-test
@@ -0,0 +1,39 @@
1
+ ---
2
+ name: Bug Report
3
+ about: Report an issue with Chewy you've discovered.
4
+ ---
5
+
6
+ *Be clear, concise and precise in your description of the problem.
7
+ Open an issue with a descriptive title and a summary in grammatically correct,
8
+ complete sentences.*
9
+
10
+ *Use the template below when reporting bugs. Please, make sure that
11
+ you're running the latest stable Chewy and that the problem you're reporting
12
+ hasn't been reported (and potentially fixed) already.*
13
+
14
+ *Before filing the ticket you should replace all text above the horizontal
15
+ rule with your own words.*
16
+
17
+ --------
18
+
19
+ ## Expected behavior
20
+
21
+ Describe here how you expected Chewy to behave in this particular situation.
22
+
23
+ ## Actual behavior
24
+
25
+ Describe here what actually happened.
26
+
27
+ ## Steps to reproduce the problem
28
+
29
+ This is extremely important! Providing us with a reliable way to reproduce
30
+ a problem will expedite its solution.
31
+
32
+ ## Version Information
33
+
34
+ Share here essential version information such as:
35
+
36
+ * Chewy version
37
+ * Elasticsearch version
38
+ * Ruby version
39
+ * Rails version
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: Feature Request
3
+ about: Suggest new Chewy features or improvements to existing features.
4
+ ---
5
+
6
+ ## Is your feature request related to a problem? Please describe.
7
+
8
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
9
+
10
+ ## Describe the solution you'd like
11
+
12
+ A clear and concise description of what you want to happen.
13
+
14
+ ## Describe alternatives you've considered
15
+
16
+ A clear and concise description of any alternative solutions or features you've considered.
17
+
18
+ ## Additional context
19
+
20
+ Add any other context or screenshots about the feature request here.
@@ -0,0 +1,16 @@
1
+ **Replace this text with a summary of the changes in your PR.
2
+ The more detailed you are, the better.**
3
+
4
+ -----------------
5
+
6
+ Before submitting the PR make sure the following are checked:
7
+
8
+ * [ ] The PR relates to *only* one subject with a clear title and description in grammatically correct, complete sentences.
9
+ * [ ] Wrote [good commit messages][1].
10
+ * [ ] Commit message starts with `[Fix #issue-number]` (if the related issue exists).
11
+ * [ ] Feature branch is up-to-date with `master` (if not - rebase it).
12
+ * [ ] Squashed related commits together.
13
+ * [ ] Added tests.
14
+ * [ ] Added an entry to the changelog if the new code introduces user-observable changes. See [changelog entry format](https://github.com/toptal/chewy/blob/master/CONTRIBUTING.md#changelog-entry-format) for details.
15
+
16
+ [1]: https://chris.beams.io/posts/git-commit/
data/.rubocop.yml CHANGED
@@ -1,50 +1,50 @@
1
1
  inherit_from: .rubocop_todo.yml
2
2
 
3
- Lint/AmbiguousBlockAssociation:
4
- Enabled: false
5
-
6
- Lint/EndAlignment:
7
- EnforcedStyleAlignWith: variable
8
-
9
- Style/AccessModifierIndentation:
3
+ Layout/AccessModifierIndentation:
10
4
  EnforcedStyle: outdent
11
5
 
12
- Style/Alias:
13
- EnforcedStyle: prefer_alias_method
14
-
15
- Style/AlignHash:
6
+ Layout/AlignHash:
16
7
  EnforcedLastArgumentHashStyle: always_ignore
17
8
 
18
- Style/AlignParameters:
9
+ Layout/AlignParameters:
19
10
  EnforcedStyle: with_fixed_indentation
20
11
 
21
- Style/AndOr:
22
- EnforcedStyle: conditionals
23
-
24
- Style/CaseIndentation:
12
+ Layout/CaseIndentation:
25
13
  EnforcedStyle: end
26
14
 
27
- Style/DoubleNegation:
28
- Enabled: false
29
-
30
- Style/IndentArray:
15
+ Layout/IndentArray:
31
16
  EnforcedStyle: consistent
32
17
 
33
- Style/IndentHash:
18
+ Layout/IndentHash:
34
19
  EnforcedStyle: consistent
35
20
 
36
- Style/IndentHeredoc:
21
+ Layout/IndentHeredoc:
37
22
  Enabled: false
38
23
 
39
- Style/MultilineMethodCallIndentation:
24
+ Layout/MultilineMethodCallIndentation:
40
25
  EnforcedStyle: indented
41
26
 
42
- Style/MultilineOperationIndentation:
27
+ Layout/MultilineOperationIndentation:
43
28
  EnforcedStyle: indented
44
29
 
45
- Style/SpaceInsideHashLiteralBraces:
30
+ Layout/SpaceInsideHashLiteralBraces:
46
31
  EnforcedStyle: no_space
47
32
 
33
+ Lint/AmbiguousBlockAssociation:
34
+ Enabled: false
35
+
36
+ Lint/EndAlignment:
37
+ EnforcedStyleAlignWith: variable
38
+
39
+ Style/Alias:
40
+ EnforcedStyle: prefer_alias_method
41
+
42
+ Style/AndOr:
43
+ EnforcedStyle: conditionals
44
+
45
+ Style/DoubleNegation:
46
+ Enabled: false
47
+
48
48
  Metrics/BlockLength:
49
49
  Exclude:
50
50
  - '**/*_spec.rb'
data/Appraisals CHANGED
@@ -1,5 +1,3 @@
1
- # rubocop:disable Style/FileName
2
-
3
1
  %w[4.0 4.1 4.2].each do |activesupport|
4
2
  appraise "rails.#{activesupport}.activerecord" do
5
3
  gem 'activerecord', "~> #{activesupport}.0"
@@ -8,6 +6,7 @@
8
6
  gem 'activejob', "~> #{activesupport}.0" if activesupport >= '4.2'
9
7
  gem 'resque', require: false
10
8
  gem 'shoryuken', require: false
9
+ gem 'aws-sdk-sqs', require: false
11
10
  gem 'sidekiq', require: false
12
11
 
13
12
  gem 'kaminari', '~> 0.17.0', require: false
@@ -17,7 +16,7 @@
17
16
  end
18
17
  end
19
18
 
20
- %w[5.0 5.1].each do |activesupport|
19
+ %w[5.0 5.1 5.2].each do |activesupport|
21
20
  appraise "rails.#{activesupport}.activerecord" do
22
21
  gem 'activerecord', "~> #{activesupport}.0"
23
22
  gem 'activesupport', "~> #{activesupport}.0"
@@ -25,22 +24,24 @@ end
25
24
  gem 'activejob', "~> #{activesupport}.0"
26
25
  gem 'resque', require: false
27
26
  gem 'shoryuken', require: false
27
+ gem 'aws-sdk-sqs', require: false
28
28
  gem 'sidekiq', require: false
29
29
 
30
- gem 'kaminari-core', '~> 1.0.0', require: false
30
+ gem 'kaminari-core', '~> 1.1.0', require: false
31
31
  gem 'will_paginate', require: false
32
32
 
33
33
  gem 'parallel', require: false
34
34
  end
35
35
  end
36
36
 
37
- appraise 'rails.4.2.mongoid.5.1' do
38
- gem 'mongoid', '~> 5.1.0'
37
+ appraise 'rails.4.2.mongoid.5.2' do
38
+ gem 'mongoid', '~> 5.2.0'
39
39
  gem 'activesupport', '~> 4.2.0'
40
40
 
41
41
  gem 'activejob', '~> 4.2.0'
42
42
  gem 'resque', require: false
43
43
  gem 'shoryuken', require: false
44
+ gem 'aws-sdk-sqs', require: false
44
45
  gem 'sidekiq', require: false
45
46
 
46
47
  gem 'kaminari', '~> 0.17.0', require: false
@@ -49,7 +50,7 @@ appraise 'rails.4.2.mongoid.5.1' do
49
50
  gem 'parallel', require: false
50
51
  end
51
52
 
52
- {'5.0' => '6.0', '5.1' => '6.1'}.each do |activesupport, mongoid|
53
+ {'5.0' => '6.1', '5.1' => '6.3'}.each do |activesupport, mongoid|
53
54
  appraise "rails.#{activesupport}.mongoid.#{mongoid}" do
54
55
  gem 'mongoid', "~> #{mongoid}.0"
55
56
  gem 'activesupport', "~> #{activesupport}.0"
@@ -57,9 +58,10 @@ end
57
58
  gem 'activejob', "~> #{activesupport}.0"
58
59
  gem 'resque', require: false
59
60
  gem 'shoryuken', require: false
61
+ gem 'aws-sdk-sqs', require: false
60
62
  gem 'sidekiq', require: false
61
63
 
62
- gem 'kaminari-core', '~> 1.0.0', require: false
64
+ gem 'kaminari-core', '~> 1.1.0', require: false
63
65
  gem 'will_paginate', require: false
64
66
 
65
67
  gem 'parallel', require: false
@@ -69,9 +71,9 @@ end
69
71
  %w[4.45].each do |sequel|
70
72
  appraise "sequel.#{sequel}" do
71
73
  gem 'sequel', "~> #{sequel}.0"
72
- gem 'activesupport', '~> 5.0.0'
74
+ gem 'activesupport', '~> 5.1.0'
73
75
 
74
- gem 'kaminari-core', '~> 1.0.0', require: false
76
+ gem 'kaminari-core', '~> 1.1.0', require: false
75
77
  gem 'will_paginate', require: false
76
78
 
77
79
  gem 'parallel', require: false