chewy 0.8.4 → 5.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +1 -0
- data/.rubocop.yml +56 -0
- data/.rubocop_todo.yml +44 -0
- data/.travis.yml +36 -67
- data/.yardopts +5 -0
- data/Appraisals +63 -58
- data/CHANGELOG.md +168 -11
- data/Gemfile +16 -9
- data/Guardfile +5 -5
- data/LEGACY_DSL.md +497 -0
- data/README.md +403 -470
- data/Rakefile +11 -1
- data/chewy.gemspec +12 -15
- data/gemfiles/rails.4.0.activerecord.gemfile +9 -9
- data/gemfiles/rails.4.1.activerecord.gemfile +9 -9
- data/gemfiles/rails.4.2.activerecord.gemfile +8 -8
- data/gemfiles/rails.4.2.mongoid.5.2.gemfile +16 -0
- data/gemfiles/rails.5.0.activerecord.gemfile +16 -0
- data/gemfiles/rails.5.0.mongoid.6.1.gemfile +16 -0
- data/gemfiles/rails.5.1.activerecord.gemfile +16 -0
- data/gemfiles/rails.5.1.mongoid.6.3.gemfile +16 -0
- data/gemfiles/rails.5.2.activerecord.gemfile +16 -0
- data/gemfiles/sequel.4.45.gemfile +11 -0
- data/lib/chewy/backports/deep_dup.rb +1 -1
- data/lib/chewy/backports/duplicable.rb +1 -0
- data/lib/chewy/config.rb +53 -21
- data/lib/chewy/errors.rb +6 -6
- data/lib/chewy/fields/base.rb +59 -29
- data/lib/chewy/fields/root.rb +49 -14
- data/lib/chewy/index/actions.rb +95 -36
- data/lib/chewy/index/aliases.rb +2 -1
- data/lib/chewy/index/settings.rb +10 -5
- data/lib/chewy/index/specification.rb +60 -0
- data/lib/chewy/index.rb +239 -138
- data/lib/chewy/journal.rb +55 -0
- data/lib/chewy/log_subscriber.rb +8 -8
- data/lib/chewy/minitest/helpers.rb +77 -0
- data/lib/chewy/minitest/search_index_receiver.rb +80 -0
- data/lib/chewy/minitest.rb +1 -0
- data/lib/chewy/query/compose.rb +18 -19
- data/lib/chewy/query/criteria.rb +34 -24
- data/lib/chewy/query/filters.rb +28 -11
- data/lib/chewy/query/loading.rb +3 -4
- data/lib/chewy/query/nodes/and.rb +1 -1
- data/lib/chewy/query/nodes/base.rb +1 -1
- data/lib/chewy/query/nodes/bool.rb +6 -4
- data/lib/chewy/query/nodes/equal.rb +4 -4
- data/lib/chewy/query/nodes/exists.rb +1 -1
- data/lib/chewy/query/nodes/expr.rb +2 -2
- data/lib/chewy/query/nodes/field.rb +35 -31
- data/lib/chewy/query/nodes/has_child.rb +1 -0
- data/lib/chewy/query/nodes/has_parent.rb +1 -0
- data/lib/chewy/query/nodes/has_relation.rb +10 -12
- data/lib/chewy/query/nodes/missing.rb +1 -1
- data/lib/chewy/query/nodes/not.rb +1 -1
- data/lib/chewy/query/nodes/or.rb +1 -1
- data/lib/chewy/query/nodes/prefix.rb +3 -2
- data/lib/chewy/query/nodes/query.rb +1 -1
- data/lib/chewy/query/nodes/range.rb +9 -9
- data/lib/chewy/query/nodes/raw.rb +1 -1
- data/lib/chewy/query/nodes/regexp.rb +13 -9
- data/lib/chewy/query/nodes/script.rb +4 -4
- data/lib/chewy/query/pagination.rb +10 -1
- data/lib/chewy/query.rb +286 -170
- data/lib/chewy/railtie.rb +7 -6
- data/lib/chewy/rake_helper.rb +275 -37
- data/lib/chewy/repository.rb +2 -2
- data/lib/chewy/rspec/update_index.rb +70 -65
- data/lib/chewy/rspec.rb +1 -1
- data/lib/chewy/runtime/version.rb +4 -4
- data/lib/chewy/search/loader.rb +83 -0
- data/lib/chewy/{query → search}/pagination/kaminari.rb +13 -5
- data/lib/chewy/search/pagination/will_paginate.rb +43 -0
- data/lib/chewy/search/parameters/aggs.rb +16 -0
- data/lib/chewy/search/parameters/allow_partial_search_results.rb +27 -0
- data/lib/chewy/search/parameters/concerns/bool_storage.rb +24 -0
- data/lib/chewy/search/parameters/concerns/hash_storage.rb +23 -0
- data/lib/chewy/search/parameters/concerns/integer_storage.rb +14 -0
- data/lib/chewy/search/parameters/concerns/query_storage.rb +238 -0
- data/lib/chewy/search/parameters/concerns/string_array_storage.rb +23 -0
- data/lib/chewy/search/parameters/concerns/string_storage.rb +14 -0
- data/lib/chewy/search/parameters/docvalue_fields.rb +12 -0
- data/lib/chewy/search/parameters/explain.rb +16 -0
- data/lib/chewy/search/parameters/filter.rb +47 -0
- data/lib/chewy/search/parameters/highlight.rb +16 -0
- data/lib/chewy/search/parameters/indices.rb +123 -0
- data/lib/chewy/search/parameters/indices_boost.rb +52 -0
- data/lib/chewy/search/parameters/limit.rb +17 -0
- data/lib/chewy/search/parameters/load.rb +32 -0
- data/lib/chewy/search/parameters/min_score.rb +16 -0
- data/lib/chewy/search/parameters/none.rb +27 -0
- data/lib/chewy/search/parameters/offset.rb +17 -0
- data/lib/chewy/search/parameters/order.rb +64 -0
- data/lib/chewy/search/parameters/post_filter.rb +19 -0
- data/lib/chewy/search/parameters/preference.rb +16 -0
- data/lib/chewy/search/parameters/profile.rb +16 -0
- data/lib/chewy/search/parameters/query.rb +19 -0
- data/lib/chewy/search/parameters/request_cache.rb +27 -0
- data/lib/chewy/search/parameters/rescore.rb +29 -0
- data/lib/chewy/search/parameters/script_fields.rb +16 -0
- data/lib/chewy/search/parameters/search_after.rb +20 -0
- data/lib/chewy/search/parameters/search_type.rb +16 -0
- data/lib/chewy/search/parameters/source.rb +73 -0
- data/lib/chewy/search/parameters/storage.rb +95 -0
- data/lib/chewy/search/parameters/stored_fields.rb +63 -0
- data/lib/chewy/search/parameters/suggest.rb +16 -0
- data/lib/chewy/search/parameters/terminate_after.rb +16 -0
- data/lib/chewy/search/parameters/timeout.rb +16 -0
- data/lib/chewy/search/parameters/track_scores.rb +16 -0
- data/lib/chewy/search/parameters/types.rb +20 -0
- data/lib/chewy/search/parameters/version.rb +16 -0
- data/lib/chewy/search/parameters.rb +167 -0
- data/lib/chewy/search/query_proxy.rb +257 -0
- data/lib/chewy/search/request.rb +1045 -0
- data/lib/chewy/search/response.rb +119 -0
- data/lib/chewy/search/scoping.rb +50 -0
- data/lib/chewy/search/scrolling.rb +134 -0
- data/lib/chewy/search.rb +81 -26
- data/lib/chewy/stash.rb +79 -0
- data/lib/chewy/strategy/active_job.rb +1 -0
- data/lib/chewy/strategy/atomic.rb +2 -4
- data/lib/chewy/strategy/base.rb +4 -4
- data/lib/chewy/strategy/bypass.rb +1 -2
- data/lib/chewy/strategy/resque.rb +1 -0
- data/lib/chewy/strategy/shoryuken.rb +40 -0
- data/lib/chewy/strategy/sidekiq.rb +13 -1
- data/lib/chewy/strategy/urgent.rb +1 -1
- data/lib/chewy/strategy.rb +19 -10
- data/lib/chewy/type/actions.rb +26 -2
- data/lib/chewy/type/adapter/active_record.rb +50 -24
- data/lib/chewy/type/adapter/base.rb +29 -9
- data/lib/chewy/type/adapter/mongoid.rb +19 -10
- data/lib/chewy/type/adapter/object.rb +195 -31
- data/lib/chewy/type/adapter/orm.rb +69 -33
- data/lib/chewy/type/adapter/sequel.rb +37 -19
- data/lib/chewy/type/crutch.rb +5 -4
- data/lib/chewy/type/import/bulk_builder.rb +122 -0
- data/lib/chewy/type/import/bulk_request.rb +78 -0
- data/lib/chewy/type/import/journal_builder.rb +45 -0
- data/lib/chewy/type/import/routine.rb +138 -0
- data/lib/chewy/type/import.rb +150 -176
- data/lib/chewy/type/mapping.rb +58 -42
- data/lib/chewy/type/observe.rb +21 -15
- data/lib/chewy/type/syncer.rb +222 -0
- data/lib/chewy/type/witchcraft.rb +89 -34
- data/lib/chewy/type/wrapper.rb +48 -16
- data/lib/chewy/type.rb +77 -49
- data/lib/chewy/version.rb +1 -1
- data/lib/chewy.rb +95 -52
- data/lib/generators/chewy/install_generator.rb +3 -3
- data/lib/sequel/plugins/chewy_observe.rb +4 -19
- data/lib/tasks/chewy.rake +91 -28
- data/spec/chewy/config_spec.rb +130 -12
- data/spec/chewy/fields/base_spec.rb +194 -172
- data/spec/chewy/fields/root_spec.rb +123 -17
- data/spec/chewy/fields/time_fields_spec.rb +10 -9
- data/spec/chewy/index/actions_spec.rb +228 -43
- data/spec/chewy/index/aliases_spec.rb +2 -2
- data/spec/chewy/index/settings_spec.rb +100 -49
- data/spec/chewy/index/specification_spec.rb +169 -0
- data/spec/chewy/index_spec.rb +159 -63
- data/spec/chewy/journal_spec.rb +268 -0
- data/spec/chewy/minitest/helpers_spec.rb +90 -0
- data/spec/chewy/minitest/search_index_receiver_spec.rb +120 -0
- data/spec/chewy/query/criteria_spec.rb +503 -236
- data/spec/chewy/query/filters_spec.rb +96 -68
- data/spec/chewy/query/loading_spec.rb +80 -42
- data/spec/chewy/query/nodes/and_spec.rb +3 -7
- data/spec/chewy/query/nodes/bool_spec.rb +5 -13
- data/spec/chewy/query/nodes/equal_spec.rb +20 -20
- data/spec/chewy/query/nodes/exists_spec.rb +7 -7
- data/spec/chewy/query/nodes/has_child_spec.rb +42 -23
- data/spec/chewy/query/nodes/has_parent_spec.rb +42 -23
- data/spec/chewy/query/nodes/match_all_spec.rb +2 -2
- data/spec/chewy/query/nodes/missing_spec.rb +6 -5
- data/spec/chewy/query/nodes/not_spec.rb +5 -7
- data/spec/chewy/query/nodes/or_spec.rb +3 -7
- data/spec/chewy/query/nodes/prefix_spec.rb +6 -6
- data/spec/chewy/query/nodes/query_spec.rb +3 -3
- data/spec/chewy/query/nodes/range_spec.rb +19 -19
- data/spec/chewy/query/nodes/raw_spec.rb +2 -2
- data/spec/chewy/query/nodes/regexp_spec.rb +31 -19
- data/spec/chewy/query/nodes/script_spec.rb +5 -5
- data/spec/chewy/query/pagination/kaminari_spec.rb +3 -55
- data/spec/chewy/query/pagination/will_paginate_spec.rb +5 -0
- data/spec/chewy/query/pagination_spec.rb +25 -22
- data/spec/chewy/query_spec.rb +510 -505
- data/spec/chewy/rake_helper_spec.rb +381 -0
- data/spec/chewy/repository_spec.rb +8 -8
- data/spec/chewy/rspec/update_index_spec.rb +215 -113
- data/spec/chewy/runtime_spec.rb +2 -2
- data/spec/chewy/search/loader_spec.rb +117 -0
- data/spec/chewy/search/pagination/kaminari_examples.rb +71 -0
- data/spec/chewy/search/pagination/kaminari_spec.rb +21 -0
- data/spec/chewy/search/pagination/will_paginate_examples.rb +63 -0
- data/spec/chewy/search/pagination/will_paginate_spec.rb +23 -0
- data/spec/chewy/search/parameters/aggs_spec.rb +5 -0
- data/spec/chewy/search/parameters/bool_storage_examples.rb +53 -0
- data/spec/chewy/search/parameters/docvalue_fields_spec.rb +5 -0
- data/spec/chewy/search/parameters/explain_spec.rb +5 -0
- data/spec/chewy/search/parameters/filter_spec.rb +5 -0
- data/spec/chewy/search/parameters/hash_storage_examples.rb +59 -0
- data/spec/chewy/search/parameters/highlight_spec.rb +5 -0
- data/spec/chewy/search/parameters/indices_spec.rb +191 -0
- data/spec/chewy/search/parameters/integer_storage_examples.rb +32 -0
- data/spec/chewy/search/parameters/limit_spec.rb +5 -0
- data/spec/chewy/search/parameters/load_spec.rb +60 -0
- data/spec/chewy/search/parameters/min_score_spec.rb +32 -0
- data/spec/chewy/search/parameters/none_spec.rb +5 -0
- data/spec/chewy/search/parameters/offset_spec.rb +5 -0
- data/spec/chewy/search/parameters/order_spec.rb +65 -0
- data/spec/chewy/search/parameters/post_filter_spec.rb +5 -0
- data/spec/chewy/search/parameters/preference_spec.rb +5 -0
- data/spec/chewy/search/parameters/profile_spec.rb +5 -0
- data/spec/chewy/search/parameters/query_spec.rb +5 -0
- data/spec/chewy/search/parameters/query_storage_examples.rb +388 -0
- data/spec/chewy/search/parameters/request_cache_spec.rb +67 -0
- data/spec/chewy/search/parameters/rescore_spec.rb +62 -0
- data/spec/chewy/search/parameters/script_fields_spec.rb +5 -0
- data/spec/chewy/search/parameters/search_after_spec.rb +32 -0
- data/spec/chewy/search/parameters/search_type_spec.rb +5 -0
- data/spec/chewy/search/parameters/source_spec.rb +156 -0
- data/spec/chewy/search/parameters/storage_spec.rb +60 -0
- data/spec/chewy/search/parameters/stored_fields_spec.rb +126 -0
- data/spec/chewy/search/parameters/string_array_storage_examples.rb +63 -0
- data/spec/chewy/search/parameters/string_storage_examples.rb +32 -0
- data/spec/chewy/search/parameters/suggest_spec.rb +5 -0
- data/spec/chewy/search/parameters/terminate_after_spec.rb +5 -0
- data/spec/chewy/search/parameters/timeout_spec.rb +5 -0
- data/spec/chewy/search/parameters/track_scores_spec.rb +5 -0
- data/spec/chewy/search/parameters/types_spec.rb +5 -0
- data/spec/chewy/search/parameters/version_spec.rb +5 -0
- data/spec/chewy/search/parameters_spec.rb +145 -0
- data/spec/chewy/search/query_proxy_spec.rb +68 -0
- data/spec/chewy/search/request_spec.rb +685 -0
- data/spec/chewy/search/response_spec.rb +192 -0
- data/spec/chewy/search/scrolling_spec.rb +169 -0
- data/spec/chewy/search_spec.rb +37 -20
- data/spec/chewy/stash_spec.rb +95 -0
- data/spec/chewy/strategy/active_job_spec.rb +8 -2
- data/spec/chewy/strategy/atomic_spec.rb +4 -1
- data/spec/chewy/strategy/resque_spec.rb +8 -2
- data/spec/chewy/strategy/shoryuken_spec.rb +66 -0
- data/spec/chewy/strategy/sidekiq_spec.rb +10 -2
- data/spec/chewy/strategy_spec.rb +6 -6
- data/spec/chewy/type/actions_spec.rb +29 -10
- data/spec/chewy/type/adapter/active_record_spec.rb +357 -139
- data/spec/chewy/type/adapter/mongoid_spec.rb +220 -101
- data/spec/chewy/type/adapter/object_spec.rb +129 -40
- data/spec/chewy/type/adapter/sequel_spec.rb +304 -152
- data/spec/chewy/type/import/bulk_builder_spec.rb +279 -0
- data/spec/chewy/type/import/bulk_request_spec.rb +102 -0
- data/spec/chewy/type/import/journal_builder_spec.rb +95 -0
- data/spec/chewy/type/import/routine_spec.rb +110 -0
- data/spec/chewy/type/import_spec.rb +360 -244
- data/spec/chewy/type/mapping_spec.rb +96 -29
- data/spec/chewy/type/observe_spec.rb +25 -15
- data/spec/chewy/type/syncer_spec.rb +123 -0
- data/spec/chewy/type/witchcraft_spec.rb +122 -44
- data/spec/chewy/type/wrapper_spec.rb +63 -23
- data/spec/chewy/type_spec.rb +32 -10
- data/spec/chewy_spec.rb +82 -12
- data/spec/spec_helper.rb +16 -2
- data/spec/support/active_record.rb +6 -2
- data/spec/support/class_helpers.rb +4 -19
- data/spec/support/mongoid.rb +17 -5
- data/spec/support/sequel.rb +6 -1
- metadata +250 -57
- data/gemfiles/rails.3.2.activerecord.gemfile +0 -15
- data/gemfiles/rails.3.2.activerecord.kaminari.gemfile +0 -14
- data/gemfiles/rails.3.2.activerecord.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.0.activerecord.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.0.activerecord.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.0.mongoid.4.0.0.gemfile +0 -15
- data/gemfiles/rails.4.0.mongoid.4.0.0.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.0.mongoid.4.0.0.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.0.mongoid.5.1.0.gemfile +0 -15
- data/gemfiles/rails.4.0.mongoid.5.1.0.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.0.mongoid.5.1.0.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.1.activerecord.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.1.activerecord.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.1.mongoid.4.0.0.gemfile +0 -15
- data/gemfiles/rails.4.1.mongoid.4.0.0.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.1.mongoid.4.0.0.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.1.mongoid.5.1.0.gemfile +0 -15
- data/gemfiles/rails.4.1.mongoid.5.1.0.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.1.mongoid.5.1.0.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.2.activerecord.kaminari.gemfile +0 -15
- data/gemfiles/rails.4.2.activerecord.will_paginate.gemfile +0 -15
- data/gemfiles/rails.4.2.mongoid.4.0.0.gemfile +0 -15
- data/gemfiles/rails.4.2.mongoid.4.0.0.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.2.mongoid.4.0.0.will_paginate.gemfile +0 -14
- data/gemfiles/rails.4.2.mongoid.5.1.0.gemfile +0 -15
- data/gemfiles/rails.4.2.mongoid.5.1.0.kaminari.gemfile +0 -14
- data/gemfiles/rails.4.2.mongoid.5.1.0.will_paginate.gemfile +0 -14
- data/gemfiles/rails.5.0.0.beta3.activerecord.gemfile +0 -16
- data/gemfiles/rails.5.0.0.beta3.activerecord.kaminari.gemfile +0 -16
- data/gemfiles/rails.5.0.0.beta3.activerecord.will_paginate.gemfile +0 -15
- data/gemfiles/sequel.4.31.gemfile +0 -13
- data/lib/chewy/query/pagination/will_paginate.rb +0 -27
- data/lib/chewy/query/scoping.rb +0 -20
- data/spec/chewy/query/pagination/will_paginage_spec.rb +0 -60
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 55ee493bcdd9f0f001572ffade6a8fef187fd9fd0a87176dd52f07b18db6ec39
|
4
|
+
data.tar.gz: 1ed5e0e4d39c7e8b2202051322c7c312078ba644c62f49c320153d6bd2054ee7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9fe7425716df8484306cee104f3b3365a9ae36d2e6496b0653b88dd9a13f8e78f48a6d4f579f0e9a2887fb2d36632a1bd970c901d3ba10c87f9fd6405b56327d
|
7
|
+
data.tar.gz: f1c81281f0343256c47b20e52bf9363df6bc1c86f3c53e031f4facdb93d223fe6685e74ea3b048b5869a8d0c09ba0a0672c100a303d8b6cabd358e71de141c03
|
data/.gitignore
CHANGED
data/.rubocop.yml
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
inherit_from: .rubocop_todo.yml
|
2
|
+
|
3
|
+
Layout/AccessModifierIndentation:
|
4
|
+
EnforcedStyle: outdent
|
5
|
+
|
6
|
+
Layout/AlignHash:
|
7
|
+
EnforcedLastArgumentHashStyle: always_ignore
|
8
|
+
|
9
|
+
Layout/AlignParameters:
|
10
|
+
EnforcedStyle: with_fixed_indentation
|
11
|
+
|
12
|
+
Layout/CaseIndentation:
|
13
|
+
EnforcedStyle: end
|
14
|
+
|
15
|
+
Layout/IndentArray:
|
16
|
+
EnforcedStyle: consistent
|
17
|
+
|
18
|
+
Layout/IndentHash:
|
19
|
+
EnforcedStyle: consistent
|
20
|
+
|
21
|
+
Layout/IndentHeredoc:
|
22
|
+
Enabled: false
|
23
|
+
|
24
|
+
Layout/MultilineMethodCallIndentation:
|
25
|
+
EnforcedStyle: indented
|
26
|
+
|
27
|
+
Layout/MultilineOperationIndentation:
|
28
|
+
EnforcedStyle: indented
|
29
|
+
|
30
|
+
Layout/SpaceInsideHashLiteralBraces:
|
31
|
+
EnforcedStyle: no_space
|
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
|
+
Metrics/BlockLength:
|
49
|
+
Exclude:
|
50
|
+
- '**/*_spec.rb'
|
51
|
+
- '**/*_examples.rb'
|
52
|
+
- '**/*.rake'
|
53
|
+
|
54
|
+
Metrics/ModuleLength:
|
55
|
+
Exclude:
|
56
|
+
- '**/*_spec.rb'
|
data/.rubocop_todo.yml
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
# This configuration was generated by
|
2
|
+
# `rubocop --auto-gen-config`
|
3
|
+
# on 2016-09-09 17:05:47 +0700 using RuboCop version 0.42.0.
|
4
|
+
# The point is for the user to remove these configuration records
|
5
|
+
# one by one as the offenses are removed from the code base.
|
6
|
+
# Note that changes in the inspected code, or installation of new
|
7
|
+
# versions of RuboCop, may require this file to be generated again.
|
8
|
+
|
9
|
+
# Offense count: 42
|
10
|
+
Metrics/AbcSize:
|
11
|
+
Max: 48
|
12
|
+
|
13
|
+
# Offense count: 4
|
14
|
+
# Configuration parameters: CountComments.
|
15
|
+
Metrics/ClassLength:
|
16
|
+
Max: 300
|
17
|
+
|
18
|
+
# Offense count: 14
|
19
|
+
Metrics/CyclomaticComplexity:
|
20
|
+
Max: 13
|
21
|
+
|
22
|
+
# Offense count: 1450
|
23
|
+
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes.
|
24
|
+
# URISchemes: http, https
|
25
|
+
Metrics/LineLength:
|
26
|
+
Max: 198
|
27
|
+
|
28
|
+
# Offense count: 38
|
29
|
+
# Configuration parameters: CountComments.
|
30
|
+
Metrics/MethodLength:
|
31
|
+
Max: 33
|
32
|
+
|
33
|
+
# Offense count: 1
|
34
|
+
# Configuration parameters: CountComments.
|
35
|
+
Metrics/ModuleLength:
|
36
|
+
Max: 180
|
37
|
+
|
38
|
+
# Offense count: 14
|
39
|
+
Metrics/PerceivedComplexity:
|
40
|
+
Max: 15
|
41
|
+
|
42
|
+
# Offense count: 93
|
43
|
+
Style/Documentation:
|
44
|
+
Enabled: false
|
data/.travis.yml
CHANGED
@@ -2,75 +2,44 @@ language: ruby
|
|
2
2
|
sudo: false
|
3
3
|
services:
|
4
4
|
- mongodb
|
5
|
+
jdk:
|
6
|
+
- oraclejdk8
|
5
7
|
rvm:
|
6
|
-
- 2.
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
- 2.4.3
|
9
|
+
env:
|
10
|
+
global:
|
11
|
+
- TEST_CLUSTER_NODES=1
|
12
|
+
matrix:
|
13
|
+
- ES_VERSION=5.6.7
|
11
14
|
gemfile:
|
12
|
-
- gemfiles/rails.
|
13
|
-
- gemfiles/rails.
|
14
|
-
- gemfiles/rails.
|
15
|
-
- gemfiles/rails.
|
16
|
-
- gemfiles/
|
17
|
-
- gemfiles/rails.4.0.activerecord.will_paginate.gemfile
|
18
|
-
- gemfiles/rails.4.1.activerecord.gemfile
|
19
|
-
- gemfiles/rails.4.1.activerecord.kaminari.gemfile
|
20
|
-
- gemfiles/rails.4.1.activerecord.will_paginate.gemfile
|
21
|
-
- gemfiles/rails.4.2.activerecord.gemfile
|
22
|
-
- gemfiles/rails.4.2.activerecord.kaminari.gemfile
|
23
|
-
- gemfiles/rails.4.2.activerecord.will_paginate.gemfile
|
24
|
-
- gemfiles/rails.5.0.0.beta3.activerecord.gemfile
|
25
|
-
- gemfiles/rails.5.0.0.beta3.activerecord.kaminari.gemfile
|
26
|
-
- gemfiles/rails.5.0.0.beta3.activerecord.will_paginate.gemfile
|
27
|
-
- gemfiles/rails.4.0.mongoid.4.0.0.gemfile
|
28
|
-
- gemfiles/rails.4.0.mongoid.4.0.0.kaminari.gemfile
|
29
|
-
- gemfiles/rails.4.0.mongoid.4.0.0.will_paginate.gemfile
|
30
|
-
- gemfiles/rails.4.0.mongoid.5.1.0.gemfile
|
31
|
-
- gemfiles/rails.4.0.mongoid.5.1.0.kaminari.gemfile
|
32
|
-
- gemfiles/rails.4.0.mongoid.5.1.0.will_paginate.gemfile
|
33
|
-
- gemfiles/rails.4.1.mongoid.4.0.0.gemfile
|
34
|
-
- gemfiles/rails.4.1.mongoid.4.0.0.kaminari.gemfile
|
35
|
-
- gemfiles/rails.4.1.mongoid.4.0.0.will_paginate.gemfile
|
36
|
-
- gemfiles/rails.4.1.mongoid.5.1.0.gemfile
|
37
|
-
- gemfiles/rails.4.1.mongoid.5.1.0.kaminari.gemfile
|
38
|
-
- gemfiles/rails.4.1.mongoid.5.1.0.will_paginate.gemfile
|
39
|
-
- gemfiles/rails.4.2.mongoid.4.0.0.gemfile
|
40
|
-
- gemfiles/rails.4.2.mongoid.4.0.0.kaminari.gemfile
|
41
|
-
- gemfiles/rails.4.2.mongoid.4.0.0.will_paginate.gemfile
|
42
|
-
- gemfiles/rails.4.2.mongoid.5.1.0.gemfile
|
43
|
-
- gemfiles/rails.4.2.mongoid.5.1.0.kaminari.gemfile
|
44
|
-
- gemfiles/rails.4.2.mongoid.5.1.0.will_paginate.gemfile
|
45
|
-
- gemfiles/sequel.4.31.gemfile
|
46
|
-
|
15
|
+
- gemfiles/rails.5.0.activerecord.gemfile
|
16
|
+
- gemfiles/rails.5.1.activerecord.gemfile
|
17
|
+
- gemfiles/rails.5.0.mongoid.6.1.gemfile
|
18
|
+
- gemfiles/rails.5.1.mongoid.6.3.gemfile
|
19
|
+
- gemfiles/sequel.4.45.gemfile
|
47
20
|
matrix:
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
gemfile: gemfiles/rails.3.2.activerecord.kaminari.gemfile
|
65
|
-
- rvm: 2.2
|
66
|
-
gemfile: gemfiles/rails.3.2.activerecord.will_paginate.gemfile
|
67
|
-
- rvm: 2.3
|
68
|
-
gemfile: gemfiles/rails.3.2.activerecord.gemfile
|
69
|
-
- rvm: 2.3
|
70
|
-
gemfile: gemfiles/rails.3.2.activerecord.kaminari.gemfile
|
71
|
-
- rvm: 2.3
|
72
|
-
gemfile: gemfiles/rails.3.2.activerecord.will_paginate.gemfile
|
21
|
+
include:
|
22
|
+
- rvm: 2.2.9
|
23
|
+
gemfile: gemfiles/rails.4.0.activerecord.gemfile
|
24
|
+
env: ES_VERSION=2.4.6
|
25
|
+
- rvm: 2.2.9
|
26
|
+
gemfile: gemfiles/rails.4.1.activerecord.gemfile
|
27
|
+
env: ES_VERSION=2.4.6
|
28
|
+
- rvm: 2.3.6
|
29
|
+
gemfile: gemfiles/rails.4.2.activerecord.gemfile
|
30
|
+
env: ES_VERSION=2.4.6
|
31
|
+
- rvm: 2.3.6
|
32
|
+
gemfile: gemfiles/rails.4.2.mongoid.5.2.gemfile
|
33
|
+
env: ES_VERSION=2.4.6
|
34
|
+
- rvm: 2.5.1
|
35
|
+
gemfile: gemfiles/rails.5.2.activerecord.gemfile
|
36
|
+
env: ES_VERSION=5.6.7
|
73
37
|
before_install:
|
74
|
-
- curl
|
38
|
+
- curl -s https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.4.6/elasticsearch-2.4.6.tar.gz | tar xz -C /tmp
|
39
|
+
- curl -s https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.7.tar.gz | tar xz -C /tmp
|
75
40
|
before_script:
|
76
|
-
-
|
41
|
+
- /tmp/elasticsearch-2.4.6/bin/plugin install delete-by-query
|
42
|
+
- TEST_CLUSTER_COMMAND=/tmp/elasticsearch-$ES_VERSION/bin/elasticsearch TEST_CLUSTER_LOGS=/tmp/log rake es:start
|
43
|
+
script:
|
44
|
+
- bundle exec rspec
|
45
|
+
- bundle exec rubocop
|
data/.yardopts
ADDED
data/Appraisals
CHANGED
@@ -1,76 +1,81 @@
|
|
1
|
-
%w
|
2
|
-
appraise "rails.#{
|
3
|
-
gem 'activerecord', "~> #{
|
4
|
-
gem 'activesupport', "~> #{
|
5
|
-
|
1
|
+
%w[4.0 4.1 4.2].each do |activesupport|
|
2
|
+
appraise "rails.#{activesupport}.activerecord" do
|
3
|
+
gem 'activerecord', "~> #{activesupport}.0"
|
4
|
+
gem 'activesupport', "~> #{activesupport}.0"
|
5
|
+
|
6
|
+
gem 'activejob', "~> #{activesupport}.0" if activesupport >= '4.2'
|
6
7
|
gem 'resque', require: false
|
8
|
+
gem 'shoryuken', require: false
|
9
|
+
gem 'aws-sdk-sqs', require: false
|
7
10
|
gem 'sidekiq', require: false
|
8
|
-
end
|
9
|
-
|
10
|
-
appraise "rails.#{version}.activerecord.kaminari" do
|
11
|
-
gem 'activerecord', "~> #{version}.0"
|
12
|
-
gem 'activesupport', "~> #{version}.0"
|
13
|
-
gem 'activejob', "~> #{version}.0" if version >= '4.2'
|
14
|
-
gem 'kaminari', '0.16.3', require: false
|
15
|
-
end
|
16
11
|
|
17
|
-
|
18
|
-
gem 'activerecord', "~> #{version}.0"
|
19
|
-
gem 'activesupport', "~> #{version}.0"
|
20
|
-
gem 'activejob', "~> #{version}.0" if version >= '4.2'
|
12
|
+
gem 'kaminari', '~> 0.17.0', require: false
|
21
13
|
gem 'will_paginate', require: false
|
14
|
+
|
15
|
+
gem 'parallel', require: false
|
22
16
|
end
|
23
17
|
end
|
24
18
|
|
25
|
-
|
26
|
-
appraise "rails.#{
|
27
|
-
gem 'activerecord', "~> #{
|
28
|
-
gem 'activesupport', "~> #{
|
29
|
-
|
19
|
+
%w[5.0 5.1 5.2].each do |activesupport|
|
20
|
+
appraise "rails.#{activesupport}.activerecord" do
|
21
|
+
gem 'activerecord', "~> #{activesupport}.0"
|
22
|
+
gem 'activesupport', "~> #{activesupport}.0"
|
23
|
+
|
24
|
+
gem 'activejob', "~> #{activesupport}.0"
|
30
25
|
gem 'resque', require: false
|
26
|
+
gem 'shoryuken', require: false
|
27
|
+
gem 'aws-sdk-sqs', require: false
|
31
28
|
gem 'sidekiq', require: false
|
32
|
-
end
|
33
29
|
|
34
|
-
|
35
|
-
gem 'activerecord', "~> #{version}"
|
36
|
-
gem 'activesupport', "~> #{version}"
|
37
|
-
gem 'activejob', "~> #{version}"
|
38
|
-
gem 'actionpack', "~> #{version}"
|
39
|
-
gem 'kaminari', '0.16.3', require: false
|
40
|
-
end
|
41
|
-
|
42
|
-
appraise "rails.#{version}.activerecord.will_paginate" do
|
43
|
-
gem 'activerecord', "~> #{version}"
|
44
|
-
gem 'activesupport', "~> #{version}"
|
45
|
-
gem 'activejob', "~> #{version}" if version >= '4.2'
|
30
|
+
gem 'kaminari-core', '~> 1.1.0', require: false
|
46
31
|
gem 'will_paginate', require: false
|
32
|
+
|
33
|
+
gem 'parallel', require: false
|
47
34
|
end
|
48
35
|
end
|
49
36
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
37
|
+
appraise 'rails.4.2.mongoid.5.2' do
|
38
|
+
gem 'mongoid', '~> 5.2.0'
|
39
|
+
gem 'activesupport', '~> 4.2.0'
|
40
|
+
|
41
|
+
gem 'activejob', '~> 4.2.0'
|
42
|
+
gem 'resque', require: false
|
43
|
+
gem 'shoryuken', require: false
|
44
|
+
gem 'aws-sdk-sqs', require: false
|
45
|
+
gem 'sidekiq', require: false
|
46
|
+
|
47
|
+
gem 'kaminari', '~> 0.17.0', require: false
|
48
|
+
gem 'will_paginate', require: false
|
49
|
+
|
50
|
+
gem 'parallel', require: false
|
51
|
+
end
|
52
|
+
|
53
|
+
{'5.0' => '6.1', '5.1' => '6.3'}.each do |activesupport, mongoid|
|
54
|
+
appraise "rails.#{activesupport}.mongoid.#{mongoid}" do
|
55
|
+
gem 'mongoid', "~> #{mongoid}.0"
|
56
|
+
gem 'activesupport', "~> #{activesupport}.0"
|
57
|
+
|
58
|
+
gem 'activejob', "~> #{activesupport}.0"
|
59
|
+
gem 'resque', require: false
|
60
|
+
gem 'shoryuken', require: false
|
61
|
+
gem 'aws-sdk-sqs', require: false
|
62
|
+
gem 'sidekiq', require: false
|
63
|
+
|
64
|
+
gem 'kaminari-core', '~> 1.1.0', require: false
|
65
|
+
gem 'will_paginate', require: false
|
66
|
+
|
67
|
+
gem 'parallel', require: false
|
70
68
|
end
|
71
69
|
end
|
72
70
|
|
73
|
-
|
74
|
-
|
75
|
-
|
71
|
+
%w[4.45].each do |sequel|
|
72
|
+
appraise "sequel.#{sequel}" do
|
73
|
+
gem 'sequel', "~> #{sequel}.0"
|
74
|
+
gem 'activesupport', '~> 5.1.0'
|
75
|
+
|
76
|
+
gem 'kaminari-core', '~> 1.1.0', require: false
|
77
|
+
gem 'will_paginate', require: false
|
78
|
+
|
79
|
+
gem 'parallel', require: false
|
80
|
+
end
|
76
81
|
end
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,162 @@
|
|
1
1
|
# master
|
2
2
|
|
3
|
+
# Version 5.1.0
|
4
|
+
|
5
|
+
## Breaking changes
|
6
|
+
|
7
|
+
* Add support for multiple indices in request (@pyromaniac, #657)
|
8
|
+
|
9
|
+
* Support `search_type`, `request_cache`, and `allow_partial_search_results` as query string parameters (@mattzollinhofer, #647)
|
10
|
+
|
11
|
+
## Changes
|
12
|
+
|
13
|
+
* Speed up imports when `bulk_size` is specified (@yahooguntu, #606)
|
14
|
+
|
15
|
+
* Insert `RequestStrategy` middleware before `ActionDispatch::ShowExceptions` (@dck, #682)
|
16
|
+
|
17
|
+
# Version 5.0.0
|
18
|
+
|
19
|
+
## Breaking changes
|
20
|
+
|
21
|
+
* Try to align the gem version with the ElasticSearch version we support
|
22
|
+
|
23
|
+
* `Chewy.default_field_type` is `text` now.
|
24
|
+
|
25
|
+
* `Chewy::Stash` was split onto two indexes - `Chewy::Stash::Specification` and `Chewy::Stash::Journal`
|
26
|
+
|
27
|
+
* Data for journal and specification is stored in binary fields base64-encoded to bypass the limits of other fields.
|
28
|
+
|
29
|
+
* Don't underscore suggested index name (@dm1try, #626)
|
30
|
+
|
31
|
+
## Changes
|
32
|
+
|
33
|
+
* `pipeline` import option support (@eManPrague, #598)
|
34
|
+
|
35
|
+
* Proper Rails check (@nattfodd, #625)
|
36
|
+
|
37
|
+
* Bypass strategy performance improvements (@DNNX, #623)
|
38
|
+
|
39
|
+
* Avoid index update calls for empty data (@robertasg, #620)
|
40
|
+
|
41
|
+
* Do not underscore suggested index name on `Chewy::Index.index_name` call.
|
42
|
+
|
43
|
+
* It is possible now to call `root` method several times inside a single type definition, the options will be merged. Also, the block isn't required anymore.
|
44
|
+
|
45
|
+
* Fixed some Sequel deprecation warnings (@arturtr - #565, @matchbookmac - #577)
|
46
|
+
|
47
|
+
## Bugfixes
|
48
|
+
|
49
|
+
* Fixed index settings logic error (@yahooguntu, #593)
|
50
|
+
|
51
|
+
* Missed check in higlight method (@heartfulbird, #567)
|
52
|
+
|
53
|
+
# Version 0.10.1
|
54
|
+
|
55
|
+
## Changes
|
56
|
+
|
57
|
+
* Improved parallel worker titles (#558)
|
58
|
+
|
59
|
+
## Bugfixes
|
60
|
+
|
61
|
+
* Fixed request strategy initial debug message (#557)
|
62
|
+
|
63
|
+
* Fixed will objects paginated array initialization when pagination was not used (#556)
|
64
|
+
|
65
|
+
* Fixed fields symbol/string value (#555)
|
66
|
+
|
67
|
+
* Fixed root field value proc (#554)
|
68
|
+
|
69
|
+
# Version 0.10.0
|
70
|
+
|
71
|
+
## Breaking changes
|
72
|
+
|
73
|
+
* Changed behavior of `Chewy::Index.index_name`, it doesn't cache the values anymore.
|
74
|
+
|
75
|
+
* Journal interfaces, related code and rake tasks were completely refactored and are not compatible with the previous version.
|
76
|
+
|
77
|
+
## Changes
|
78
|
+
|
79
|
+
* Less noisy strategies logging (@Borzik, #543)
|
80
|
+
|
81
|
+
* Parallel import and the corresponding rake tasks.
|
82
|
+
|
83
|
+
* `:shoryuken` async strategy (@josephchoe, #532)
|
84
|
+
|
85
|
+
* Deprecate `Chewy::Index.build_index_name`.
|
86
|
+
|
87
|
+
* Rename `Chewy::Index.default_prefix` to `Chewy::Index.prefix`. The old one is deprecated.
|
88
|
+
|
89
|
+
* Add `Chewy::Type.derivable_name` for consistency.
|
90
|
+
|
91
|
+
* Rename `Chewy::Index.derivable_index_name` to `Chewy::Index.derivable_name`.
|
92
|
+
`Chewy::Index.derivable_index_name` and `Chewy::Type.derivable_index_name` are deprecated.
|
93
|
+
|
94
|
+
* Use normal YAML loading, for the config, we don't need the safe one.
|
95
|
+
|
96
|
+
* `default_root_options` option (@barthez, #526)
|
97
|
+
|
98
|
+
* Partial indexing ability: it is possible to update only specified fields.
|
99
|
+
|
100
|
+
* New cool `rake chewy:deploy` task.
|
101
|
+
|
102
|
+
* Selective reset (resets only if necessary): `rake chewy:upgrade`.
|
103
|
+
|
104
|
+
* Consistency checks and synchronization: `rake chewy:sync`.
|
105
|
+
|
106
|
+
* Brand new request DSL. Supports ElasticSearch 2 and 5, better usability, architecture and docs.
|
107
|
+
|
108
|
+
* Add Kaminari 1.0 support.
|
109
|
+
|
110
|
+
* `skip_index_creation_on_import` option (@sergey-kintsel, #483)
|
111
|
+
|
112
|
+
* Ability to use procs for settings (@parallel588, #481)
|
113
|
+
|
114
|
+
* Bulk indexing optimizations with new additional options (@eproulx-petalmd, #467)
|
115
|
+
|
116
|
+
* Configurable sidekiq options (@averell23, #438)
|
117
|
+
|
118
|
+
# Version 0.9.0
|
119
|
+
|
120
|
+
## Changes
|
121
|
+
|
122
|
+
* Add `preference` param to Query (@menglewis, #443)
|
123
|
+
|
124
|
+
* Add the `track_scores` option to the query; `_score` to be computed and tracked even when there are no `_score` in sort. (@dmitry, #417)
|
125
|
+
|
126
|
+
* Confugurable `Chewy.indices_path` (@robacarp, #414, #433, #439)
|
127
|
+
|
128
|
+
* [Journaling](https://github.com/toptal/chewy/#journaling) implementation (@sergey-kintsel, #409, #425, #428, #432, #434, #463)
|
129
|
+
|
130
|
+
* Minitest helpers (@robacarp, #396)
|
131
|
+
|
132
|
+
* `Chewy::Query#unlimited` to fetch all the documents (@sergey-kintsel, #393)
|
133
|
+
|
134
|
+
* `Chewy::Query#exists?` (@sergey-kintsel, #386)
|
135
|
+
|
136
|
+
* Import otimizations (#381, #376)
|
137
|
+
|
138
|
+
* Additional import optimization technique - [raw import](https://github.com/toptal/chewy/#raw-import) (@DNNX, #375)
|
139
|
+
|
140
|
+
* `weight` scoring dunction was added to the search DSL (@sevab, #380)
|
141
|
+
|
142
|
+
* Rake tasks support multiple indexes and exceptions: `rake chewy:reset[users,projects]`, `rake chewy:update[-projects]`
|
143
|
+
|
144
|
+
* Witchcraft™ supports dynamically generated procs with variables from closure.
|
145
|
+
|
146
|
+
* Added `Query#preference` for specifying shard replicas to query against. (@menglewis)
|
147
|
+
|
148
|
+
## Bugfixes
|
149
|
+
|
150
|
+
* `.script_fields` method in the Index class (@dmitry, #415)
|
151
|
+
|
152
|
+
* Fix routing_missing_exception on delete with parent missing (@guigs, #398)
|
153
|
+
|
154
|
+
* Sequesl custom primary keys handling fix (@okliv, #385)
|
155
|
+
|
156
|
+
* Bulk import fixes (@0x0badc0de, #374)
|
157
|
+
|
158
|
+
# Version 0.8.4
|
159
|
+
|
3
160
|
## Changes
|
4
161
|
|
5
162
|
* Brand new import `:bulk_size` option, set desired ElasticSearch bulk size in bytes
|
@@ -42,6 +199,12 @@
|
|
42
199
|
|
43
200
|
# Version 0.8.3
|
44
201
|
|
202
|
+
## Breaking changes:
|
203
|
+
|
204
|
+
* `Chewy.atomic` and `Chewy.urgent_update=` methods was removed from the codebase, use `Chewy.strategy` block instead.
|
205
|
+
|
206
|
+
* `delete_from_index?` hook is removed from the codebase.
|
207
|
+
|
45
208
|
## Changes
|
46
209
|
|
47
210
|
* Sequel support completely reworked to use common ORM implementations + better sequel specs covarage.
|
@@ -58,12 +221,6 @@
|
|
58
221
|
|
59
222
|
* Correct custom assets path silencer (@davekaro)
|
60
223
|
|
61
|
-
## Incompatible changes:
|
62
|
-
|
63
|
-
* `Chewy.atomic` and `Chewy.urgent_update=` methods was removed from the codebase, use `Chewy.strategy` block instead.
|
64
|
-
|
65
|
-
* `delete_from_index?` hook is removed from the codebase.
|
66
|
-
|
67
224
|
# Version 0.8.2
|
68
225
|
|
69
226
|
## Changes
|
@@ -99,7 +256,7 @@
|
|
99
256
|
|
100
257
|
# Version 0.8.0
|
101
258
|
|
102
|
-
##
|
259
|
+
## Breaking changes:
|
103
260
|
|
104
261
|
* `:atomic` and `:urgent` strategies are using `import!` method raising exceptions
|
105
262
|
|
@@ -125,7 +282,7 @@
|
|
125
282
|
|
126
283
|
# Version 0.7.0
|
127
284
|
|
128
|
-
##
|
285
|
+
## Breaking changes:
|
129
286
|
|
130
287
|
* `Chewy.use_after_commit_callbacks = false` returns previous RDBMS behavior
|
131
288
|
in tests
|
@@ -254,7 +411,7 @@
|
|
254
411
|
|
255
412
|
* `min_score` query option support (@jshirley)
|
256
413
|
|
257
|
-
* `Chewy::Query#find` method for finding
|
414
|
+
* `Chewy::Query#find` method for finding documents by id
|
258
415
|
|
259
416
|
# Version 0.6.0
|
260
417
|
|
@@ -274,7 +431,7 @@
|
|
274
431
|
|
275
432
|
# Version 0.5.2
|
276
433
|
|
277
|
-
##
|
434
|
+
## Breaking changes:
|
278
435
|
|
279
436
|
* `Chewy::Type::Base` removed in favour of using `Chewy::Type` as a base class for all types
|
280
437
|
|
@@ -314,7 +471,7 @@
|
|
314
471
|
|
315
472
|
# Version 0.5.0
|
316
473
|
|
317
|
-
##
|
474
|
+
## Breaking changes:
|
318
475
|
|
319
476
|
* 404 exception (IndexMissingException) while query is swallowed and treated like an empty result set.
|
320
477
|
|
data/Gemfile
CHANGED
@@ -6,14 +6,21 @@ gem 'activerecord'
|
|
6
6
|
# gem 'mongoid'
|
7
7
|
# gem 'sequel'
|
8
8
|
|
9
|
-
|
10
|
-
|
9
|
+
gem 'activejob', require: false
|
10
|
+
gem 'resque', require: false
|
11
|
+
gem 'sidekiq', require: false
|
11
12
|
|
12
|
-
|
13
|
-
|
14
|
-
# gem 'activejob', require: false
|
13
|
+
gem 'aws-sdk-sqs', require: false
|
14
|
+
gem 'shoryuken', require: false
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
16
|
+
gem 'kaminari-core', require: false
|
17
|
+
gem 'will_paginate', require: false
|
18
|
+
|
19
|
+
gem 'parallel', require: false
|
20
|
+
gem 'ruby-progressbar', require: false
|
21
|
+
|
22
|
+
gem 'guard'
|
23
|
+
gem 'guard-rspec'
|
24
|
+
|
25
|
+
gem 'redcarpet'
|
26
|
+
gem 'yard'
|
data/Guardfile
CHANGED
@@ -4,20 +4,20 @@
|
|
4
4
|
guard :rspec, cmd: 'rspec' do
|
5
5
|
watch(%r{^spec/.+_spec\.rb$})
|
6
6
|
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
7
|
-
watch('spec/spec_helper.rb') {
|
7
|
+
watch('spec/spec_helper.rb') { 'spec' }
|
8
8
|
|
9
9
|
# Rails example
|
10
10
|
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
11
11
|
watch(%r{^app/(.*)(\.erb|\.haml|\.slim)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
12
12
|
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
|
13
|
-
watch(%r{^spec/support/(.+)\.rb$}) {
|
14
|
-
watch('config/routes.rb') {
|
15
|
-
watch('app/controllers/application_controller.rb') {
|
13
|
+
watch(%r{^spec/support/(.+)\.rb$}) { 'spec' }
|
14
|
+
watch('config/routes.rb') { 'spec/routing' }
|
15
|
+
watch('app/controllers/application_controller.rb') { 'spec/controllers' }
|
16
16
|
|
17
17
|
# Capybara features specs
|
18
18
|
watch(%r{^app/views/(.+)/.*\.(erb|haml|slim)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
|
19
19
|
|
20
20
|
# Turnip features and steps
|
21
21
|
watch(%r{^spec/acceptance/(.+)\.feature$})
|
22
|
-
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$})
|
22
|
+
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
|
23
23
|
end
|