redi_search 1.0.4 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/lint.yml +18 -0
  3. data/.github/workflows/tests.yml +45 -0
  4. data/.rubocop.yml +136 -193
  5. data/Appraisals +6 -6
  6. data/Gemfile +4 -4
  7. data/README.md +79 -92
  8. data/Rakefile +15 -3
  9. data/bin/console +29 -0
  10. data/gemfiles/{rails_51.gemfile → activerecord_51.gemfile} +3 -4
  11. data/gemfiles/{rails_52.gemfile → activerecord_52.gemfile} +3 -4
  12. data/gemfiles/{rails_6.gemfile → activerecord_61.gemfile} +3 -4
  13. data/lib/redi_search.rb +8 -7
  14. data/lib/redi_search/{alter.rb → add_field.rb} +13 -5
  15. data/lib/redi_search/client.rb +23 -11
  16. data/lib/redi_search/client/response.rb +5 -1
  17. data/lib/redi_search/configuration.rb +1 -11
  18. data/lib/redi_search/create.rb +7 -4
  19. data/lib/redi_search/document.rb +5 -13
  20. data/lib/redi_search/document/display.rb +9 -9
  21. data/lib/redi_search/document/finder.rb +12 -42
  22. data/lib/redi_search/hset.rb +28 -0
  23. data/lib/redi_search/index.rb +24 -22
  24. data/lib/redi_search/lazily_load.rb +6 -11
  25. data/lib/redi_search/log_subscriber.rb +25 -53
  26. data/lib/redi_search/model.rb +37 -39
  27. data/lib/redi_search/schema.rb +3 -3
  28. data/lib/redi_search/schema/field.rb +2 -3
  29. data/lib/redi_search/schema/tag_field.rb +1 -1
  30. data/lib/redi_search/schema/text_field.rb +1 -1
  31. data/lib/redi_search/search.rb +15 -25
  32. data/lib/redi_search/search/clauses.rb +6 -7
  33. data/lib/redi_search/search/clauses/application_clause.rb +20 -5
  34. data/lib/redi_search/search/clauses/boolean.rb +9 -9
  35. data/lib/redi_search/search/clauses/highlight.rb +18 -2
  36. data/lib/redi_search/search/clauses/limit.rb +7 -5
  37. data/lib/redi_search/search/clauses/or.rb +1 -1
  38. data/lib/redi_search/search/clauses/return.rb +1 -1
  39. data/lib/redi_search/search/clauses/slop.rb +1 -1
  40. data/lib/redi_search/search/clauses/sort_by.rb +1 -1
  41. data/lib/redi_search/search/clauses/where.rb +10 -2
  42. data/lib/redi_search/search/result.rb +10 -10
  43. data/lib/redi_search/search/term.rb +7 -6
  44. data/lib/redi_search/spellcheck.rb +3 -4
  45. data/lib/redi_search/spellcheck/result.rb +1 -1
  46. data/lib/redi_search/validatable.rb +49 -0
  47. data/lib/redi_search/validations/inclusion.rb +26 -0
  48. data/lib/redi_search/validations/numericality.rb +45 -0
  49. data/lib/redi_search/validations/presence.rb +29 -0
  50. data/lib/redi_search/version.rb +1 -1
  51. data/redi_search.gemspec +1 -3
  52. metadata +20 -50
  53. data/.travis.yml +0 -31
  54. data/bin/test +0 -7
  55. data/lib/redi_search/add.rb +0 -63
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3216a28eadb3691da0519e94c5fe4fe726e834f8c401adecb1fb4695289780c5
4
- data.tar.gz: 6982922d17c64ab29d16f4b67384c19981f2c5d9669742373b3ef30b285a6d20
3
+ metadata.gz: d3903d2f2ac5a8e6e8c82a507fbef8cad83d11b28a8e68dca6441844dc0b89cd
4
+ data.tar.gz: 6357b63845acdaea9df5d441154f77a3d5e353b2fed2c5e4cbbe58a5a6ad5071
5
5
  SHA512:
6
- metadata.gz: 1e52abfcecd94976223fe81cccf576b30d21dedc85fa0b3dbe88520524e351323670bfa057b55ddcafa06b73a1f8732b0622e2bbaba29bd9946fca23c7f1d718
7
- data.tar.gz: 6a0b070cfbcdf749b57661bb8219b772d28acd6b6a7e11c37978b1e9c85860e00eebd4b1fb8d865e592777a0b97db6ab7d8346d333cf0bb5e0a36a4cb8f7bdcc
6
+ metadata.gz: 94dc557ed0ee0ce1868ef92401928e68442eae74990595bfa26a26de4358f57526a8ef012203b67eae3ddbc6d576a2816b9715f41d140789d8fa3eed6ad09832
7
+ data.tar.gz: ae05dd2140a22dc5a73e9d90014eb580c0b3bc2276dc515d176efb767cb267a5ffa113cbabbf01fb1b7281e506dbf7798d26f9cbdad167b26afe550e608ecd8d
@@ -0,0 +1,18 @@
1
+ name: lint
2
+
3
+ on: [push,pull_request]
4
+
5
+ jobs:
6
+ lint:
7
+ runs-on: ubuntu-latest
8
+ steps:
9
+ - uses: actions/checkout@v2
10
+ - name: Set up Ruby 2.7
11
+ uses: ruby/setup-ruby@v1
12
+ with:
13
+ ruby-version: 2.7
14
+ - name: Install rubocop
15
+ run: |
16
+ gem install rubocop rubocop-performance rubocop-minitest
17
+ - name: Lint
18
+ run: rubocop --config=./.rubocop.yml --parallel
@@ -0,0 +1,45 @@
1
+ name: tests
2
+
3
+ on: [push,pull_request]
4
+
5
+ jobs:
6
+ unit:
7
+ runs-on: ubuntu-latest
8
+ strategy:
9
+ matrix:
10
+ ruby: [ '2.5', '2.6', '2.7' ]
11
+ gemfile: [ 'Gemfile', 'gemfiles/activerecord_51.gemfile', 'gemfiles/activerecord_52.gemfile', 'gemfiles/activerecord_61.gemfile' ]
12
+ steps:
13
+ - uses: actions/checkout@v2
14
+ - name: Set up Ruby ${{ matrix.ruby }}
15
+ uses: ruby/setup-ruby@v1
16
+ with:
17
+ ruby-version: ${{ matrix.ruby }}
18
+ bundler-cache: false
19
+ - name: Install dependencies
20
+ run: |
21
+ sudo apt-get install libsqlite3-dev -y
22
+ gem install bundler --no-document
23
+ BUNDLE_GEMFILE=${{ matrix.gemfile }} bundle install
24
+ - name: Run tests
25
+ run: BUNDLE_GEMFILE=${{ matrix.gemfile }} bundle exec rake test:unit
26
+ integration:
27
+ runs-on: ubuntu-latest
28
+ services:
29
+ redisearch:
30
+ image: redislabs/redisearch:2.0.2
31
+ ports:
32
+ - 6379:6379
33
+ steps:
34
+ - uses: actions/checkout@v2
35
+ - name: Set up Ruby 2.7
36
+ uses: ruby/setup-ruby@v1
37
+ with:
38
+ ruby-version: 2.7
39
+ - name: Install dependencies
40
+ run: |
41
+ sudo apt-get install libsqlite3-dev -y
42
+ bundle install
43
+ - name: Run tests
44
+ run: |
45
+ bundle exec rake test:integration
@@ -1,7 +1,8 @@
1
1
  require:
2
+ - rubocop-minitest
2
3
  - rubocop-performance
3
- - rubocop-rails
4
4
  AllCops:
5
+ NewCops: enable
5
6
  Exclude:
6
7
  - vendor/**/*
7
8
  - Gemfile.lock
@@ -10,6 +11,7 @@ AllCops:
10
11
  - tmp/**/*
11
12
  - test/dummy/db/schema.rb
12
13
  - gemfiles/**/*
14
+ - bin/**/*
13
15
  TargetRubyVersion: 2.5
14
16
 
15
17
  # Department Bundler
@@ -36,16 +38,16 @@ Layout/AccessModifierIndentation:
36
38
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#indent-public-private-protected
37
39
  Enabled: false
38
40
 
39
- Layout/AlignArray:
41
+ Layout/ArrayAlignment:
40
42
  Description: Align the elements of an array literal if they span more than one line.
41
43
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#align-multiline-arrays
42
44
  Enabled: true
43
45
 
44
- Layout/AlignHash:
46
+ Layout/HashAlignment:
45
47
  Description: Align the elements of a hash literal if they span more than one line.
46
48
  Enabled: true
47
49
 
48
- Layout/AlignParameters:
50
+ Layout/ParameterAlignment:
49
51
  Description: Align the parameters of a method call if they span more than one line.
50
52
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-double-indent
51
53
  Enabled: true
@@ -151,7 +153,7 @@ Layout/InitialIndentation:
151
153
  Description: Checks the indentation of the first non-blank non-comment line in a file.
152
154
  Enabled: false
153
155
 
154
- Layout/IndentFirstArgument:
156
+ Layout/FirstArgumentIndentation:
155
157
  Description: Checks the indentation of the first parameter in a method call.
156
158
  Enabled: false
157
159
 
@@ -165,19 +167,19 @@ Layout/IndentationWidth:
165
167
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-indentation
166
168
  Enabled: true
167
169
 
168
- Layout/IndentFirstArrayElement:
170
+ Layout/FirstArrayElementIndentation:
169
171
  Description: Checks the indentation of the first element in an array literal.
170
172
  Enabled: false
171
173
 
172
- Layout/IndentAssignment:
174
+ Layout/AssignmentIndentation:
173
175
  Description: Checks the indentation of the first line of the right-hand-side of a multi-line assignment.
174
176
  Enabled: true
175
177
 
176
- Layout/IndentFirstHashElement:
178
+ Layout/FirstHashElementIndentation:
177
179
  Description: Checks the indentation of the first key in a hash literal.
178
180
  Enabled: false
179
181
 
180
- Layout/IndentHeredoc:
182
+ Layout/HeredocIndentation:
181
183
  Description: This cops checks the indentation of the here document bodies.
182
184
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#squiggly-heredocs
183
185
  Enabled: true
@@ -328,12 +330,15 @@ Layout/SpaceInsideStringInterpolation:
328
330
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#string-interpolation
329
331
  Enabled: false
330
332
 
331
- Layout/Tab:
333
+ Layout/IndentationStyle:
332
334
  Description: No hard tabs.
333
335
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-indentation
334
336
  Enabled: false
335
337
 
336
- Layout/TrailingBlankLines:
338
+ Layout/SpaceAroundMethodCallOperator:
339
+ Enabled: true
340
+
341
+ Layout/TrailingEmptyLines:
337
342
  Description: Checks trailing blank lines and final newline.
338
343
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#newline-eof
339
344
  Enabled: false
@@ -400,7 +405,7 @@ Lint/DuplicateMethods:
400
405
  Description: Check for duplicate method definitions.
401
406
  Enabled: true
402
407
 
403
- Lint/DuplicatedKey:
408
+ Lint/DuplicateHashKey:
404
409
  Description: Check for duplicate keys in hash literals.
405
410
  Enabled: true
406
411
 
@@ -433,10 +438,6 @@ Layout/EndAlignment:
433
438
  Description: Align ends correctly.
434
439
  Enabled: true
435
440
 
436
- Lint/EndInMethod:
437
- Description: END blocks should not be placed inside method definitions.
438
- Enabled: true
439
-
440
441
  Lint/EnsureReturn:
441
442
  Description: Do not use return in an ensure block.
442
443
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-return-ensure
@@ -450,7 +451,7 @@ Lint/FormatParameterMismatch:
450
451
  Description: The number of parameters to format/sprint must match the fields.
451
452
  Enabled: true
452
453
 
453
- Lint/HandleExceptions:
454
+ Lint/SuppressedException:
454
455
  Description: Don't suppress exception.
455
456
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions
456
457
  Enabled: true
@@ -484,7 +485,7 @@ Lint/Loop:
484
485
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#loop-with-break
485
486
  Enabled: true
486
487
 
487
- Lint/MultipleCompare:
488
+ Lint/MultipleComparison:
488
489
  Description: Use `&&` operator to compare multiple value.
489
490
  Enabled: true
490
491
 
@@ -559,7 +560,7 @@ Lint/ShadowingOuterLocalVariable:
559
560
  Description: Do not use the same name as outer local variable for block arguments or block local variables.
560
561
  Enabled: true
561
562
 
562
- Lint/StringConversionInInterpolation:
563
+ Lint/RedundantStringCoercion:
563
564
  Description: Checks for Object#to_s usage in string interpolation.
564
565
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-to-s
565
566
  Enabled: true
@@ -572,11 +573,11 @@ Lint/UnifiedInteger:
572
573
  Description: Use Integer instead of Fixnum or Bignum
573
574
  Enabled: true
574
575
 
575
- Lint/UnneededRequireStatement:
576
+ Lint/RedundantRequireStatement:
576
577
  Description: Checks for unnecessary `require` statement.
577
578
  Enabled: true
578
579
 
579
- Lint/UnneededSplatExpansion:
580
+ Lint/RedundantSplatExpansion:
580
581
  Description: Checks for splat unnecessarily being called on literals
581
582
  Enabled: true
582
583
 
@@ -613,7 +614,7 @@ Lint/UselessAssignment:
613
614
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#underscore-unused-vars
614
615
  Enabled: true
615
616
 
616
- Lint/UselessComparison:
617
+ Lint/BinaryOperatorWithIdenticalOperands:
617
618
  Description: Checks for comparison of something with itself.
618
619
  Enabled: true
619
620
 
@@ -647,7 +648,6 @@ Metrics/BlockLength:
647
648
  - Rakefile
648
649
  - "**/*.rake"
649
650
  - spec/**/*.rb
650
- - 'config/routes.rb'
651
651
  - 'config/environments/*.rb'
652
652
 
653
653
  Metrics/BlockNesting:
@@ -665,12 +665,15 @@ Metrics/CyclomaticComplexity:
665
665
  Description: A complexity metric that is strongly correlated to the number of test cases needed to validate a method.
666
666
  Enabled: true
667
667
 
668
- Metrics/LineLength:
668
+ Layout/LineLength:
669
669
  Description: Limit lines to 80 characters.
670
670
  StyleGuide: '#80-character-limits'
671
671
  Enabled: true
672
+ Max: 80
672
673
  Exclude:
673
674
  - 'db/**/*'
675
+ - 'config/initializers/**/*'
676
+ - 'config/environments/**/*'
674
677
 
675
678
  Metrics/MethodLength:
676
679
  Description: Avoid methods longer than 10 lines of code.
@@ -774,13 +777,13 @@ Performance/CaseWhenSplat:
774
777
 
775
778
  Performance/Count:
776
779
  Description: Use `count` instead of `select...size`, `reject...size`, `select...count`, `reject...count`, `select...length`, and `reject...length`.
777
- SafeMode: true
780
+ SafeAutoCorrect: true
778
781
  Enabled: true
779
782
 
780
783
  Performance/Detect:
781
784
  Description: Use `detect` instead of `select.first`, `find_all.first`, `select.last`, and `find_all.last`.
782
785
  Reference: 'https://github.com/JuanitoFatas/fast-ruby#enumerabledetect-vs-enumerableselectfirst-code'
783
- SafeMode: true
786
+ SafeAutoCorrect: true
784
787
  Enabled: true
785
788
 
786
789
  Performance/DoubleStartEndWith:
@@ -822,6 +825,9 @@ Performance/RedundantMerge:
822
825
  Reference: https://github.com/JuanitoFatas/fast-ruby#hashmerge-vs-hash-code
823
826
  Enabled: true
824
827
 
828
+ Style/ExponentialNotation:
829
+ Enabled: true
830
+
825
831
  Style/RedundantSortBy:
826
832
  Description: Use `sort` instead of `sort_by { |x| x }`.
827
833
  Enabled: true
@@ -873,161 +879,6 @@ Performance/UriDefaultParser:
873
879
  Description: Use `URI::DEFAULT_PARSER` instead of `URI::Parser.new`.
874
880
  Enabled: true
875
881
 
876
- # Department Rails
877
- Rails/ActionFilter:
878
- Description: Enforces consistent use of action filter methods.
879
- Enabled: false
880
-
881
- Rails/ApplicationJob:
882
- Description: Check that jobs subclass ApplicationJob.
883
- Enabled: true
884
-
885
- Rails/ApplicationRecord:
886
- Description: Check that models subclass ApplicationRecord.
887
- Enabled: true
888
-
889
- Rails/ActiveSupportAliases:
890
- Description: 'Avoid ActiveSupport aliases of standard ruby methods: `String#starts_with?`, `String#ends_with?`, `Array#append`, `Array#prepend`.'
891
- Enabled: true
892
-
893
- Rails/Blank:
894
- Description: Enforce using `blank?` and `present?`.
895
- Enabled: true
896
- NilOrEmpty: true
897
- NotPresent: true
898
- UnlessPresent: true
899
-
900
- Rails/Date:
901
- Description: Checks the correct usage of date aware methods, such as Date.today, Date.current etc.
902
- Enabled: true
903
-
904
- Rails/Delegate:
905
- Description: Prefer delegate method for delegations.
906
- Enabled: true
907
-
908
- Rails/DelegateAllowBlank:
909
- Description: Do not use allow_blank as an option to delegate.
910
- Enabled: true
911
-
912
- Rails/DynamicFindBy:
913
- Description: Use `find_by` instead of dynamic `find_by_*`.
914
- StyleGuide: https://github.com/bbatsov/rails-style-guide#find_by
915
- Enabled: true
916
-
917
- Rails/EnumUniqueness:
918
- Description: Avoid duplicate integers in hash-syntax `enum` declaration.
919
- Enabled: true
920
-
921
- Rails/Exit:
922
- Description: Favor `fail`, `break`, `return`, etc. over `exit` in application or library code outside of Rake files to avoid exits during unit testing or running in production.
923
- Enabled: true
924
-
925
- Rails/FilePath:
926
- Description: Use `Rails.root.join` for file path joining.
927
- Enabled: true
928
-
929
- Rails/FindBy:
930
- Description: Prefer find_by over where.first.
931
- StyleGuide: https://github.com/bbatsov/rails-style-guide#find_by
932
- Enabled: true
933
-
934
- Rails/FindEach:
935
- Description: Prefer all.find_each over all.find.
936
- StyleGuide: https://github.com/bbatsov/rails-style-guide#find-each
937
- Enabled: true
938
-
939
- Rails/HasAndBelongsToMany:
940
- Description: Prefer has_many :through to has_and_belongs_to_many.
941
- StyleGuide: https://github.com/bbatsov/rails-style-guide#has-many-through
942
- Enabled: true
943
-
944
- Rails/HasManyOrHasOneDependent:
945
- Description: Define the dependent option to the has_many and has_one associations.
946
- StyleGuide: https://github.com/bbatsov/rails-style-guide#has_many-has_one-dependent-option
947
- Enabled: true
948
-
949
- Rails/HttpPositionalArguments:
950
- Description: Use keyword arguments instead of positional arguments in http method calls.
951
- Enabled: true
952
-
953
- Rails/NotNullColumn:
954
- Description: Do not add a NOT NULL column without a default value
955
- Enabled: true
956
-
957
- Rails/Output:
958
- Description: Checks for calls to puts, print, etc.
959
- Enabled: true
960
-
961
- Rails/OutputSafety:
962
- Description: The use of `html_safe` or `raw` may be a security risk.
963
- Enabled: true
964
-
965
- Rails/PluralizationGrammar:
966
- Description: Checks for incorrect grammar when using methods like `3.day.ago`.
967
- Enabled: true
968
-
969
- Rails/Present:
970
- Description: Enforce using `blank?` and `present?`.
971
- Enabled: true
972
- NotNilAndNotEmpty: true
973
- NotBlank: true
974
- UnlessBlank: true
975
-
976
- Rails/ReadWriteAttribute:
977
- Description: Checks for read_attribute(:attr) and write_attribute(:attr, val).
978
- StyleGuide: https://github.com/bbatsov/rails-style-guide#read-attribute
979
- Enabled: false
980
-
981
- Rails/RelativeDateConstant:
982
- Description: Do not assign relative date to constants.
983
- Enabled: true
984
-
985
- Rails/RequestReferer:
986
- Description: Use consistent syntax for request.referer.
987
- Enabled: true
988
-
989
- Rails/ReversibleMigration:
990
- Description: Checks whether the change method of the migration file is reversible.
991
- StyleGuide: https://github.com/bbatsov/rails-style-guide#reversible-migration
992
- Reference: http://api.rubyonrails.org/classes/ActiveRecord/Migration/CommandRecorder.html
993
- Enabled: true
994
-
995
- Rails/SafeNavigation:
996
- Description: Use Ruby's safe navigation operator (`&.`) instead of `try!`
997
- Enabled: true
998
-
999
- Rails/SaveBang:
1000
- Description: Identifies possible cases where Active Record save! or related should be used.
1001
- StyleGuide: https://github.com/bbatsov/rails-style-guide#save-bang
1002
- Enabled: false
1003
-
1004
- Rails/ScopeArgs:
1005
- Description: Checks the arguments of ActiveRecord scopes.
1006
- Enabled: true
1007
-
1008
- Rails/TimeZone:
1009
- Description: Checks the correct usage of time zone aware methods.
1010
- StyleGuide: https://github.com/bbatsov/rails-style-guide#time
1011
- Reference: http://danilenko.org/2012/7/6/rails_timezones
1012
- Enabled: true
1013
-
1014
- Rails/UniqBeforePluck:
1015
- Description: Prefer the use of uniq or distinct before pluck.
1016
- Enabled: true
1017
-
1018
- Rails/UnknownEnv:
1019
- Description: Use correct environment name.
1020
- Enabled: true
1021
-
1022
- Rails/SkipsModelValidations:
1023
- Description: Use methods that skips model validations with caution. See reference for more information.
1024
- Reference: http://guides.rubyonrails.org/active_record_validations.html#skipping-validations
1025
- Enabled: true
1026
-
1027
- Rails/Validation:
1028
- Description: Use validates :attribute, hash of validations.
1029
- Enabled: true
1030
-
1031
882
  # Department Security
1032
883
  Security/Eval:
1033
884
  Description: The use of eval represents a serious security risk.
@@ -1102,10 +953,6 @@ Style/BlockDelimiters:
1102
953
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#single-line-blocks
1103
954
  Enabled: true
1104
955
 
1105
- Style/BracesAroundHashParameters:
1106
- Description: Enforce braces style around hash parameters.
1107
- Enabled: false
1108
-
1109
956
  Style/CaseEquality:
1110
957
  Description: Avoid explicit use of the case equality operator(===).
1111
958
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-case-equality
@@ -1229,7 +1076,7 @@ Style/EmptyMethod:
1229
1076
  Style/EndBlock:
1230
1077
  Description: Avoid the use of END blocks.
1231
1078
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-END-blocks
1232
- Enabled: false
1079
+ Enabled: true
1233
1080
 
1234
1081
  Style/Encoding:
1235
1082
  Description: Use UTF-8 as the source file encoding.
@@ -1353,9 +1200,6 @@ Style/MethodDefParentheses:
1353
1200
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#method-parens
1354
1201
  Enabled: true
1355
1202
 
1356
- Style/MethodMissingSuper:
1357
- Enabled: true
1358
-
1359
1203
  Style/MissingRespondToMissing:
1360
1204
  Enabled: true
1361
1205
 
@@ -1412,7 +1256,7 @@ Style/MultipleComparison:
1412
1256
 
1413
1257
  Style/MutableConstant:
1414
1258
  Description: Do not assign mutable objects to constants.
1415
- Enabled: true
1259
+ Enabled: false
1416
1260
 
1417
1261
  Style/NegatedIf:
1418
1262
  Description: Favor unless over if for negative conditions (or control flow or).
@@ -1703,15 +1547,15 @@ Style/UnlessElse:
1703
1547
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-else-with-unless
1704
1548
  Enabled: true
1705
1549
 
1706
- Style/UnneededCapitalW:
1550
+ Style/RedundantCapitalW:
1707
1551
  Description: Checks for %W when interpolation is not needed.
1708
1552
  Enabled: false
1709
1553
 
1710
- Style/UnneededInterpolation:
1554
+ Style/RedundantInterpolation:
1711
1555
  Description: Checks for strings that are just an interpolated expression.
1712
1556
  Enabled: true
1713
1557
 
1714
- Style/UnneededPercentQ:
1558
+ Style/RedundantPercentQ:
1715
1559
  Description: Checks for %q/%Q when single quotes or double quotes would do.
1716
1560
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-q
1717
1561
  Enabled: false
@@ -1754,3 +1598,102 @@ Style/YodaCondition:
1754
1598
  Style/ZeroLengthPredicate:
1755
1599
  Description: Use #empty? when testing for objects of length 0.
1756
1600
  Enabled: true
1601
+
1602
+ Lint/RaiseException:
1603
+ Description: Checks for `raise` or `fail` statements which are raising `Exception` class.
1604
+ Enabled: true
1605
+ Lint/StructNewOverride:
1606
+ Description: 'Disallow overriding the `Struct` built-in methods via `Struct.new`.'
1607
+ Enabled: true
1608
+ Style/HashEachMethods:
1609
+ Description: 'Use Hash#each_key and Hash#each_value.'
1610
+ Enabled: true
1611
+ Safe: false
1612
+ Style/HashTransformKeys:
1613
+ Description: 'Prefer `transform_keys` over `each_with_object` and `map`.'
1614
+ Enabled: true
1615
+ Safe: false
1616
+ Style/HashTransformValues:
1617
+ Description: 'Prefer `transform_values` over `each_with_object` and `map`.'
1618
+ Enabled: true
1619
+ Safe: false
1620
+
1621
+ Layout/EmptyLinesAroundAttributeAccessor:
1622
+ Enabled: true
1623
+ Lint/DeprecatedOpenSSLConstant:
1624
+ Enabled: true
1625
+ Style/SlicingWithRange:
1626
+ Enabled: true
1627
+ Lint/MixedRegexpCaptureTypes:
1628
+ Enabled: true
1629
+ Style/RedundantRegexpCharacterClass:
1630
+ Enabled: true
1631
+ Style/RedundantRegexpEscape:
1632
+ Enabled: true
1633
+ Lint/MissingSuper:
1634
+ Enabled: false
1635
+
1636
+
1637
+
1638
+ Lint/DuplicateElsifCondition:
1639
+ Enabled: true
1640
+ Lint/DuplicateRescueException:
1641
+ Enabled: true
1642
+ Lint/EmptyConditionalBody:
1643
+ Enabled: true
1644
+ Lint/FloatComparison:
1645
+ Enabled: true
1646
+ Lint/OutOfRangeRegexpRef:
1647
+ Enabled: true
1648
+ Lint/SelfAssignment:
1649
+ Enabled: true
1650
+ Lint/TopLevelReturnWithArgument:
1651
+ Enabled: true
1652
+ Lint/UnreachableLoop:
1653
+ Enabled: true
1654
+ Style/AccessorGrouping:
1655
+ Enabled: true
1656
+ Style/ArrayCoercion:
1657
+ Enabled: true
1658
+ Style/BisectedAttrAccessor:
1659
+ Enabled: true
1660
+ Style/CaseLikeIf:
1661
+ Enabled: true
1662
+ Style/ExplicitBlockArgument:
1663
+ Enabled: false
1664
+ Style/GlobalStdStream:
1665
+ Enabled: true
1666
+ Style/HashAsLastArrayItem:
1667
+ Enabled: false
1668
+ Style/HashLikeCase:
1669
+ Enabled: true
1670
+ Style/OptionalBooleanParameter:
1671
+ Enabled: true
1672
+ Style/RedundantAssignment:
1673
+ Enabled: true
1674
+ Style/RedundantFetchBlock:
1675
+ Enabled: true
1676
+ Style/RedundantFileExtensionInRequire:
1677
+ Enabled: true
1678
+ Style/SingleArgumentDig:
1679
+ Enabled: true
1680
+ Style/StringConcatenation:
1681
+ Enabled: true
1682
+ Performance/AncestorsInclude:
1683
+ Enabled: true
1684
+ Performance/BigDecimalWithNumericArgument:
1685
+ Enabled: true
1686
+ Performance/RedundantSortBlock:
1687
+ Enabled: true
1688
+ Performance/RedundantStringChars:
1689
+ Enabled: true
1690
+ Performance/ReverseFirst:
1691
+ Enabled: true
1692
+ Performance/SortReverse:
1693
+ Enabled: true
1694
+ Performance/Squeeze:
1695
+ Enabled: true
1696
+ Performance/StringInclude:
1697
+ Enabled: true
1698
+ Minitest/AssertionInLifecycleHook:
1699
+ Enabled: false