rubocop 0.54.0 → 0.55.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.
- checksums.yaml +4 -4
- data/README.md +5 -1
- data/config/default.yml +17 -2
- data/config/enabled.yml +13 -0
- data/lib/rubocop.rb +4 -0
- data/lib/rubocop/ast/node/mixin/binary_operator_node.rb +20 -0
- data/lib/rubocop/cli.rb +6 -2
- data/lib/rubocop/cop/commissioner.rb +21 -25
- data/lib/rubocop/cop/layout/end_of_line.rb +33 -0
- data/lib/rubocop/cop/layout/space_inside_parens.rb +64 -5
- data/lib/rubocop/cop/layout/trailing_whitespace.rb +20 -0
- data/lib/rubocop/cop/lint/safe_navigation_consistency.rb +80 -0
- data/lib/rubocop/cop/lint/shadowed_argument.rb +3 -0
- data/lib/rubocop/cop/lint/void.rb +20 -9
- data/lib/rubocop/cop/metrics/block_length.rb +17 -1
- data/lib/rubocop/cop/metrics/line_length.rb +2 -3
- data/lib/rubocop/cop/mixin/percent_literal.rb +9 -8
- data/lib/rubocop/cop/performance/end_with.rb +2 -1
- data/lib/rubocop/cop/performance/regexp_match.rb +43 -7
- data/lib/rubocop/cop/performance/start_with.rb +2 -1
- data/lib/rubocop/cop/performance/unneeded_sort.rb +130 -0
- data/lib/rubocop/cop/rails/http_status.rb +19 -16
- data/lib/rubocop/cop/rails/inverse_of.rb +29 -22
- data/lib/rubocop/cop/rails/read_write_attribute.rb +9 -2
- data/lib/rubocop/cop/style/array_join.rb +1 -1
- data/lib/rubocop/cop/style/class_vars.rb +5 -4
- data/lib/rubocop/cop/style/commented_keyword.rb +2 -3
- data/lib/rubocop/cop/style/empty_line_after_guard_clause.rb +39 -8
- data/lib/rubocop/cop/style/frozen_string_literal_comment.rb +22 -11
- data/lib/rubocop/cop/style/method_call_without_args_parentheses.rb +5 -0
- data/lib/rubocop/cop/style/mutable_constant.rb +5 -0
- data/lib/rubocop/cop/style/negated_while.rb +18 -0
- data/lib/rubocop/cop/style/nested_ternary_operator.rb +11 -0
- data/lib/rubocop/cop/style/numeric_predicate.rb +1 -1
- data/lib/rubocop/cop/style/one_line_conditional.rb +17 -0
- data/lib/rubocop/cop/style/option_hash.rb +6 -0
- data/lib/rubocop/cop/style/single_line_block_params.rb +20 -0
- data/lib/rubocop/cop/style/special_global_vars.rb +52 -0
- data/lib/rubocop/cop/style/string_literals.rb +1 -1
- data/lib/rubocop/cop/style/unpack_first.rb +0 -2
- data/lib/rubocop/formatter/auto_gen_config_formatter.rb +16 -0
- data/lib/rubocop/formatter/formatter_set.rb +14 -13
- data/lib/rubocop/node_pattern.rb +2 -2
- data/lib/rubocop/options.rb +1 -0
- data/lib/rubocop/version.rb +1 -1
- metadata +13 -4
@@ -38,7 +38,7 @@ module RuboCop
|
|
38
38
|
# If one part of that continued string contains interpolations,
|
39
39
|
# then it will be parsed as a nested `dstr` node
|
40
40
|
return unless consistent_multiline?
|
41
|
-
return if node.
|
41
|
+
return if node.heredoc?
|
42
42
|
|
43
43
|
children = node.children
|
44
44
|
return unless all_string_literals?(children)
|
@@ -13,7 +13,6 @@ module RuboCop
|
|
13
13
|
# 'foo'.unpack('h*')[0]
|
14
14
|
# 'foo'.unpack('h*').slice(0)
|
15
15
|
# 'foo'.unpack('h*').at(0)
|
16
|
-
# 'foo'.unpack('h*').take(1)
|
17
16
|
#
|
18
17
|
# # good
|
19
18
|
# 'foo'.unpack1('h*')
|
@@ -30,7 +29,6 @@ module RuboCop
|
|
30
29
|
{
|
31
30
|
(send $(send (...) :unpack $(...)) :first)
|
32
31
|
(send $(send (...) :unpack $(...)) {:[] :slice :at} (int 0))
|
33
|
-
(send $(send (...) :unpack $(...)) :take (int 1))
|
34
32
|
}
|
35
33
|
PATTERN
|
36
34
|
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module RuboCop
|
4
|
+
module Formatter
|
5
|
+
# Does not show individual offenses in the console.
|
6
|
+
class AutoGenConfigFormatter < ProgressFormatter
|
7
|
+
def finished(inspected_files)
|
8
|
+
output.puts
|
9
|
+
|
10
|
+
report_summary(inspected_files.size,
|
11
|
+
@total_offense_count,
|
12
|
+
@total_correction_count)
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -9,19 +9,20 @@ module RuboCop
|
|
9
9
|
# which invoke same method of each formatters.
|
10
10
|
class FormatterSet < Array
|
11
11
|
BUILTIN_FORMATTERS_FOR_KEYS = {
|
12
|
-
'progress'
|
13
|
-
'simple'
|
14
|
-
'clang'
|
15
|
-
'fuubar'
|
16
|
-
'emacs'
|
17
|
-
'json'
|
18
|
-
'html'
|
19
|
-
'files'
|
20
|
-
'offenses'
|
21
|
-
'disabled'
|
22
|
-
'worst'
|
23
|
-
'tap'
|
24
|
-
'quiet'
|
12
|
+
'progress' => ProgressFormatter,
|
13
|
+
'simple' => SimpleTextFormatter,
|
14
|
+
'clang' => ClangStyleFormatter,
|
15
|
+
'fuubar' => FuubarStyleFormatter,
|
16
|
+
'emacs' => EmacsStyleFormatter,
|
17
|
+
'json' => JSONFormatter,
|
18
|
+
'html' => HTMLFormatter,
|
19
|
+
'files' => FileListFormatter,
|
20
|
+
'offenses' => OffenseCountFormatter,
|
21
|
+
'disabled' => DisabledLinesFormatter,
|
22
|
+
'worst' => WorstOffendersFormatter,
|
23
|
+
'tap' => TapFormatter,
|
24
|
+
'quiet' => QuietFormatter,
|
25
|
+
'autogenconf' => AutoGenConfigFormatter
|
25
26
|
}.freeze
|
26
27
|
|
27
28
|
FORMATTER_APIS = %i[started finished].freeze
|
data/lib/rubocop/node_pattern.rb
CHANGED
@@ -74,10 +74,10 @@ module RuboCop
|
|
74
74
|
# You can nest arbitrarily deep:
|
75
75
|
#
|
76
76
|
# # matches node parsed from 'Const = Class.new' or 'Const = Module.new':
|
77
|
-
# '(casgn nil const (send (const nil {:Class :Module}) :new)))'
|
77
|
+
# '(casgn nil? const (send (const nil? {:Class :Module}) :new)))'
|
78
78
|
# # matches a node parsed from an 'if', with a '==' comparison,
|
79
79
|
# # and no 'else' branch:
|
80
|
-
# '(if (send _ :== _) _ nil)'
|
80
|
+
# '(if (send _ :== _) _ nil?)'
|
81
81
|
#
|
82
82
|
# Note that patterns like 'send' are implemented by calling `#send_type?` on
|
83
83
|
# the node being matched, 'const' by `#const_type?`, 'int' by `#int_type?`,
|
data/lib/rubocop/options.rb
CHANGED
data/lib/rubocop/version.rb
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
module RuboCop
|
4
4
|
# This module holds the RuboCop version information.
|
5
5
|
module Version
|
6
|
-
STRING = '0.
|
6
|
+
STRING = '0.55.0'.freeze
|
7
7
|
|
8
8
|
MSG = '%<version>s (using Parser %<parser_version>s, running on ' \
|
9
9
|
'%<ruby_engine>s %<ruby_version>s %<ruby_platform>s)'.freeze
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubocop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.55.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bozhidar Batsov
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2018-
|
13
|
+
date: 2018-04-16 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: parallel
|
@@ -128,14 +128,20 @@ dependencies:
|
|
128
128
|
requirements:
|
129
129
|
- - ">="
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 1.6.9
|
132
|
+
- - "<"
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: '2.0'
|
132
135
|
type: :development
|
133
136
|
prerelease: false
|
134
137
|
version_requirements: !ruby/object:Gem::Requirement
|
135
138
|
requirements:
|
136
139
|
- - ">="
|
137
140
|
- !ruby/object:Gem::Version
|
138
|
-
version:
|
141
|
+
version: 1.6.9
|
142
|
+
- - "<"
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: '2.0'
|
139
145
|
description: |2
|
140
146
|
Automatic Ruby code style checking tool.
|
141
147
|
Aims to enforce the community-driven Ruby Style Guide.
|
@@ -361,6 +367,7 @@ files:
|
|
361
367
|
- lib/rubocop/cop/lint/rescue_type.rb
|
362
368
|
- lib/rubocop/cop/lint/return_in_void_context.rb
|
363
369
|
- lib/rubocop/cop/lint/safe_navigation_chain.rb
|
370
|
+
- lib/rubocop/cop/lint/safe_navigation_consistency.rb
|
364
371
|
- lib/rubocop/cop/lint/script_permission.rb
|
365
372
|
- lib/rubocop/cop/lint/shadowed_argument.rb
|
366
373
|
- lib/rubocop/cop/lint/shadowed_exception.rb
|
@@ -493,6 +500,7 @@ files:
|
|
493
500
|
- lib/rubocop/cop/performance/string_replacement.rb
|
494
501
|
- lib/rubocop/cop/performance/times_map.rb
|
495
502
|
- lib/rubocop/cop/performance/unfreeze_string.rb
|
503
|
+
- lib/rubocop/cop/performance/unneeded_sort.rb
|
496
504
|
- lib/rubocop/cop/performance/uri_default_parser.rb
|
497
505
|
- lib/rubocop/cop/rails/action_filter.rb
|
498
506
|
- lib/rubocop/cop/rails/active_record_aliases.rb
|
@@ -713,6 +721,7 @@ files:
|
|
713
721
|
- lib/rubocop/cop/variable_force/variable_table.rb
|
714
722
|
- lib/rubocop/error.rb
|
715
723
|
- lib/rubocop/file_finder.rb
|
724
|
+
- lib/rubocop/formatter/auto_gen_config_formatter.rb
|
716
725
|
- lib/rubocop/formatter/base_formatter.rb
|
717
726
|
- lib/rubocop/formatter/clang_style_formatter.rb
|
718
727
|
- lib/rubocop/formatter/colorizable.rb
|