rubocop 1.13.0 → 1.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -1
- data/config/default.yml +68 -8
- data/lib/rubocop.rb +9 -0
- data/lib/rubocop/cop/bundler/gem_comment.rb +1 -3
- data/lib/rubocop/cop/bundler/gem_version.rb +99 -0
- data/lib/rubocop/cop/internal_affairs/example_description.rb +1 -1
- data/lib/rubocop/cop/layout/argument_alignment.rb +29 -11
- data/lib/rubocop/cop/layout/case_indentation.rb +57 -9
- data/lib/rubocop/cop/layout/dot_position.rb +7 -1
- data/lib/rubocop/cop/layout/empty_line_after_guard_clause.rb +13 -15
- data/lib/rubocop/cop/layout/first_hash_element_indentation.rb +12 -0
- data/lib/rubocop/cop/layout/hash_alignment.rb +34 -9
- data/lib/rubocop/cop/layout/indentation_width.rb +13 -2
- data/lib/rubocop/cop/layout/redundant_line_break.rb +24 -10
- data/lib/rubocop/cop/layout/single_line_block_chain.rb +53 -0
- data/lib/rubocop/cop/layout/space_around_keyword.rb +28 -0
- data/lib/rubocop/cop/layout/space_around_operators.rb +6 -0
- data/lib/rubocop/cop/lint/deprecated_class_methods.rb +83 -39
- data/lib/rubocop/cop/lint/empty_block.rb +18 -2
- data/lib/rubocop/cop/lint/empty_in_pattern.rb +62 -0
- data/lib/rubocop/cop/lint/literal_as_condition.rb +13 -1
- data/lib/rubocop/cop/lint/missing_cop_enable_directive.rb +32 -17
- data/lib/rubocop/cop/lint/number_conversion.rb +1 -1
- data/lib/rubocop/cop/lint/redundant_cop_disable_directive.rb +105 -74
- data/lib/rubocop/cop/lint/redundant_cop_enable_directive.rb +5 -0
- data/lib/rubocop/cop/lint/symbol_conversion.rb +2 -12
- data/lib/rubocop/cop/lint/unreachable_loop.rb +12 -2
- data/lib/rubocop/cop/lint/unused_block_argument.rb +7 -1
- data/lib/rubocop/cop/lint/void.rb +1 -1
- data/lib/rubocop/cop/migration/department_name.rb +3 -1
- data/lib/rubocop/cop/mixin/check_line_breakable.rb +19 -3
- data/lib/rubocop/cop/mixin/frozen_string_literal.rb +6 -0
- data/lib/rubocop/cop/mixin/gem_declaration.rb +13 -0
- data/lib/rubocop/cop/mixin/hash_alignment_styles.rb +14 -3
- data/lib/rubocop/cop/mixin/string_literals_help.rb +3 -5
- data/lib/rubocop/cop/mixin/symbol_help.rb +13 -0
- data/lib/rubocop/cop/style/class_and_module_children.rb +17 -5
- data/lib/rubocop/cop/style/empty_literal.rb +8 -1
- data/lib/rubocop/cop/style/hash_each_methods.rb +18 -1
- data/lib/rubocop/cop/style/identical_conditional_branches.rb +58 -8
- data/lib/rubocop/cop/style/if_unless_modifier.rb +3 -4
- data/lib/rubocop/cop/style/in_pattern_then.rb +56 -0
- data/lib/rubocop/cop/style/method_call_with_args_parentheses/omit_parentheses.rb +2 -1
- data/lib/rubocop/cop/style/multiline_in_pattern_then.rb +62 -0
- data/lib/rubocop/cop/style/multiline_when_then.rb +2 -11
- data/lib/rubocop/cop/style/negated_if_else_condition.rb +17 -9
- data/lib/rubocop/cop/style/nil_lambda.rb +29 -12
- data/lib/rubocop/cop/style/quoted_symbols.rb +110 -0
- data/lib/rubocop/cop/style/raise_args.rb +2 -0
- data/lib/rubocop/cop/style/redundant_begin.rb +1 -1
- data/lib/rubocop/cop/style/redundant_self.rb +24 -2
- data/lib/rubocop/cop/style/regexp_literal.rb +9 -1
- data/lib/rubocop/cop/style/single_line_methods.rb +8 -3
- data/lib/rubocop/cop/style/sole_nested_conditional.rb +14 -5
- data/lib/rubocop/cop/style/string_literals.rb +1 -0
- data/lib/rubocop/cop/style/string_literals_in_interpolation.rb +1 -0
- data/lib/rubocop/cop/style/top_level_method_definition.rb +83 -0
- data/lib/rubocop/cop/style/trivial_accessors.rb +65 -0
- data/lib/rubocop/cop/style/when_then.rb +6 -2
- data/lib/rubocop/cop/variable_force/branch.rb +15 -0
- data/lib/rubocop/directive_comment.rb +58 -6
- data/lib/rubocop/formatter/junit_formatter.rb +21 -6
- data/lib/rubocop/options.rb +14 -20
- data/lib/rubocop/rake_task.rb +1 -1
- data/lib/rubocop/remote_config.rb +10 -2
- data/lib/rubocop/rspec/shared_contexts.rb +4 -0
- data/lib/rubocop/target_finder.rb +9 -2
- data/lib/rubocop/target_ruby.rb +1 -1
- data/lib/rubocop/version.rb +1 -1
- metadata +18 -9
@@ -100,12 +100,19 @@ module RuboCop
|
|
100
100
|
next true if dir.end_with?('/./', '/../')
|
101
101
|
next true if File.fnmatch?(exclude_pattern, dir, flags)
|
102
102
|
|
103
|
-
|
104
|
-
"#{File.realpath(dir)}/", flags)
|
103
|
+
symlink_excluded_or_infinite_loop?(base_dir, dir, exclude_pattern, flags)
|
105
104
|
end
|
106
105
|
dirs.flat_map { |dir| wanted_dir_patterns(dir, exclude_pattern, flags) }.unshift(base_dir)
|
107
106
|
end
|
108
107
|
|
108
|
+
def symlink_excluded_or_infinite_loop?(base_dir, current_dir, exclude_pattern, flags)
|
109
|
+
dir_realpath = File.realpath(current_dir)
|
110
|
+
File.symlink?(current_dir.chomp('/')) && (
|
111
|
+
File.fnmatch?(exclude_pattern, "#{dir_realpath}/", flags) ||
|
112
|
+
File.realpath(base_dir).start_with?(dir_realpath)
|
113
|
+
)
|
114
|
+
end
|
115
|
+
|
109
116
|
def combined_exclude_glob_patterns(base_dir)
|
110
117
|
exclude = @config_store.for(base_dir).for_all_cops['Exclude']
|
111
118
|
patterns = exclude.select { |pattern| pattern.is_a?(String) && pattern.end_with?('/**/*') }
|
data/lib/rubocop/target_ruby.rb
CHANGED
@@ -4,7 +4,7 @@ module RuboCop
|
|
4
4
|
# The kind of Ruby that code inspected by RuboCop is written in.
|
5
5
|
# @api private
|
6
6
|
class TargetRuby
|
7
|
-
KNOWN_RUBIES = [2.5, 2.6, 2.7, 3.0].freeze
|
7
|
+
KNOWN_RUBIES = [2.5, 2.6, 2.7, 3.0, 3.1].freeze
|
8
8
|
DEFAULT_VERSION = KNOWN_RUBIES.first
|
9
9
|
|
10
10
|
OBSOLETE_RUBIES = {
|
data/lib/rubocop/version.rb
CHANGED
metadata
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubocop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bozhidar Batsov
|
8
8
|
- Jonas Arvidsson
|
9
9
|
- Yuji Nakayama
|
10
|
-
autorequire:
|
10
|
+
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-
|
13
|
+
date: 2021-06-15 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: parallel
|
@@ -100,7 +100,7 @@ dependencies:
|
|
100
100
|
requirements:
|
101
101
|
- - ">="
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 1.
|
103
|
+
version: 1.7.0
|
104
104
|
- - "<"
|
105
105
|
- !ruby/object:Gem::Version
|
106
106
|
version: '2.0'
|
@@ -110,7 +110,7 @@ dependencies:
|
|
110
110
|
requirements:
|
111
111
|
- - ">="
|
112
112
|
- !ruby/object:Gem::Version
|
113
|
-
version: 1.
|
113
|
+
version: 1.7.0
|
114
114
|
- - "<"
|
115
115
|
- !ruby/object:Gem::Version
|
116
116
|
version: '2.0'
|
@@ -221,6 +221,7 @@ files:
|
|
221
221
|
- lib/rubocop/cop/base.rb
|
222
222
|
- lib/rubocop/cop/bundler/duplicated_gem.rb
|
223
223
|
- lib/rubocop/cop/bundler/gem_comment.rb
|
224
|
+
- lib/rubocop/cop/bundler/gem_version.rb
|
224
225
|
- lib/rubocop/cop/bundler/insecure_protocol_source.rb
|
225
226
|
- lib/rubocop/cop/bundler/ordered_gems.rb
|
226
227
|
- lib/rubocop/cop/commissioner.rb
|
@@ -333,6 +334,7 @@ files:
|
|
333
334
|
- lib/rubocop/cop/layout/parameter_alignment.rb
|
334
335
|
- lib/rubocop/cop/layout/redundant_line_break.rb
|
335
336
|
- lib/rubocop/cop/layout/rescue_ensure_alignment.rb
|
337
|
+
- lib/rubocop/cop/layout/single_line_block_chain.rb
|
336
338
|
- lib/rubocop/cop/layout/space_after_colon.rb
|
337
339
|
- lib/rubocop/cop/layout/space_after_comma.rb
|
338
340
|
- lib/rubocop/cop/layout/space_after_method_name.rb
|
@@ -395,6 +397,7 @@ files:
|
|
395
397
|
- lib/rubocop/cop/lint/empty_ensure.rb
|
396
398
|
- lib/rubocop/cop/lint/empty_expression.rb
|
397
399
|
- lib/rubocop/cop/lint/empty_file.rb
|
400
|
+
- lib/rubocop/cop/lint/empty_in_pattern.rb
|
398
401
|
- lib/rubocop/cop/lint/empty_interpolation.rb
|
399
402
|
- lib/rubocop/cop/lint/empty_when.rb
|
400
403
|
- lib/rubocop/cop/lint/ensure_return.rb
|
@@ -524,6 +527,7 @@ files:
|
|
524
527
|
- lib/rubocop/cop/mixin/enforce_superclass.rb
|
525
528
|
- lib/rubocop/cop/mixin/first_element_line_break.rb
|
526
529
|
- lib/rubocop/cop/mixin/frozen_string_literal.rb
|
530
|
+
- lib/rubocop/cop/mixin/gem_declaration.rb
|
527
531
|
- lib/rubocop/cop/mixin/hash_alignment_styles.rb
|
528
532
|
- lib/rubocop/cop/mixin/hash_transform_method.rb
|
529
533
|
- lib/rubocop/cop/mixin/heredoc.rb
|
@@ -559,6 +563,7 @@ files:
|
|
559
563
|
- lib/rubocop/cop/mixin/string_help.rb
|
560
564
|
- lib/rubocop/cop/mixin/string_literals_help.rb
|
561
565
|
- lib/rubocop/cop/mixin/surrounding_space.rb
|
566
|
+
- lib/rubocop/cop/mixin/symbol_help.rb
|
562
567
|
- lib/rubocop/cop/mixin/target_ruby_version.rb
|
563
568
|
- lib/rubocop/cop/mixin/trailing_body.rb
|
564
569
|
- lib/rubocop/cop/mixin/trailing_comma.rb
|
@@ -673,6 +678,7 @@ files:
|
|
673
678
|
- lib/rubocop/cop/style/if_with_boolean_literal_branches.rb
|
674
679
|
- lib/rubocop/cop/style/if_with_semicolon.rb
|
675
680
|
- lib/rubocop/cop/style/implicit_runtime_error.rb
|
681
|
+
- lib/rubocop/cop/style/in_pattern_then.rb
|
676
682
|
- lib/rubocop/cop/style/infinite_loop.rb
|
677
683
|
- lib/rubocop/cop/style/inline_comment.rb
|
678
684
|
- lib/rubocop/cop/style/inverse_methods.rb
|
@@ -696,6 +702,7 @@ files:
|
|
696
702
|
- lib/rubocop/cop/style/multiline_block_chain.rb
|
697
703
|
- lib/rubocop/cop/style/multiline_if_modifier.rb
|
698
704
|
- lib/rubocop/cop/style/multiline_if_then.rb
|
705
|
+
- lib/rubocop/cop/style/multiline_in_pattern_then.rb
|
699
706
|
- lib/rubocop/cop/style/multiline_memoization.rb
|
700
707
|
- lib/rubocop/cop/style/multiline_method_signature.rb
|
701
708
|
- lib/rubocop/cop/style/multiline_ternary_operator.rb
|
@@ -729,6 +736,7 @@ files:
|
|
729
736
|
- lib/rubocop/cop/style/perl_backrefs.rb
|
730
737
|
- lib/rubocop/cop/style/preferred_hash_methods.rb
|
731
738
|
- lib/rubocop/cop/style/proc.rb
|
739
|
+
- lib/rubocop/cop/style/quoted_symbols.rb
|
732
740
|
- lib/rubocop/cop/style/raise_args.rb
|
733
741
|
- lib/rubocop/cop/style/random_with_offset.rb
|
734
742
|
- lib/rubocop/cop/style/redundant_argument.rb
|
@@ -783,6 +791,7 @@ files:
|
|
783
791
|
- lib/rubocop/cop/style/symbol_literal.rb
|
784
792
|
- lib/rubocop/cop/style/symbol_proc.rb
|
785
793
|
- lib/rubocop/cop/style/ternary_parentheses.rb
|
794
|
+
- lib/rubocop/cop/style/top_level_method_definition.rb
|
786
795
|
- lib/rubocop/cop/style/trailing_body_on_class.rb
|
787
796
|
- lib/rubocop/cop/style/trailing_body_on_method_definition.rb
|
788
797
|
- lib/rubocop/cop/style/trailing_body_on_module.rb
|
@@ -872,9 +881,9 @@ metadata:
|
|
872
881
|
homepage_uri: https://rubocop.org/
|
873
882
|
changelog_uri: https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md
|
874
883
|
source_code_uri: https://github.com/rubocop/rubocop/
|
875
|
-
documentation_uri: https://docs.rubocop.org/rubocop/1.
|
884
|
+
documentation_uri: https://docs.rubocop.org/rubocop/1.17/
|
876
885
|
bug_tracker_uri: https://github.com/rubocop/rubocop/issues
|
877
|
-
post_install_message:
|
886
|
+
post_install_message:
|
878
887
|
rdoc_options: []
|
879
888
|
require_paths:
|
880
889
|
- lib
|
@@ -889,8 +898,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
889
898
|
- !ruby/object:Gem::Version
|
890
899
|
version: '0'
|
891
900
|
requirements: []
|
892
|
-
rubygems_version: 3.
|
893
|
-
signing_key:
|
901
|
+
rubygems_version: 3.2.18
|
902
|
+
signing_key:
|
894
903
|
specification_version: 4
|
895
904
|
summary: Automatic Ruby code style checking tool.
|
896
905
|
test_files: []
|