rubocop 0.51.0 → 0.52.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 +1 -2
- data/config/default.yml +86 -10
- data/config/disabled.yml +9 -4
- data/config/enabled.yml +1105 -1006
- data/lib/rubocop.rb +30 -3
- data/lib/rubocop/ast/builder.rb +2 -0
- data/lib/rubocop/ast/node.rb +24 -2
- data/lib/rubocop/ast/node/args_node.rb +17 -0
- data/lib/rubocop/ast/node/array_node.rb +1 -1
- data/lib/rubocop/ast/node/mixin/basic_literal_node.rb +16 -0
- data/lib/rubocop/ast/node/send_node.rb +20 -0
- data/lib/rubocop/ast/node/str_node.rb +14 -0
- data/lib/rubocop/ast/node/symbol_node.rb +20 -0
- data/lib/rubocop/ast/traversal.rb +4 -4
- data/lib/rubocop/cli.rb +45 -4
- data/lib/rubocop/comment_config.rb +2 -5
- data/lib/rubocop/config.rb +42 -8
- data/lib/rubocop/config_loader.rb +39 -100
- data/lib/rubocop/config_loader_resolver.rb +99 -2
- data/lib/rubocop/cop/autocorrect_logic.rb +1 -1
- data/lib/rubocop/cop/bundler/duplicated_gem.rb +7 -7
- data/lib/rubocop/cop/bundler/insecure_protocol_source.rb +4 -3
- data/lib/rubocop/cop/bundler/ordered_gems.rb +2 -2
- data/lib/rubocop/cop/cop.rb +16 -46
- data/lib/rubocop/cop/gemspec/duplicated_assignment.rb +102 -0
- data/lib/rubocop/cop/gemspec/ordered_dependencies.rb +3 -2
- data/lib/rubocop/cop/gemspec/required_ruby_version.rb +87 -0
- data/lib/rubocop/cop/generator.rb +23 -4
- data/lib/rubocop/cop/internal_affairs.rb +1 -1
- data/lib/rubocop/cop/internal_affairs/node_destructuring.rb +46 -0
- data/lib/rubocop/cop/internal_affairs/node_type_predicate.rb +2 -2
- data/lib/rubocop/cop/internal_affairs/offense_location_keyword.rb +9 -8
- data/lib/rubocop/cop/internal_affairs/redundant_location_argument.rb +1 -1
- data/lib/rubocop/cop/internal_affairs/redundant_message_argument.rb +1 -1
- data/lib/rubocop/cop/layout/access_modifier_indentation.rb +4 -7
- data/lib/rubocop/cop/layout/align_hash.rb +16 -16
- data/lib/rubocop/cop/layout/align_parameters.rb +6 -12
- data/lib/rubocop/cop/layout/block_end_newline.rb +19 -5
- data/lib/rubocop/cop/layout/case_indentation.rb +14 -17
- data/lib/rubocop/cop/layout/class_structure.rb +306 -0
- data/lib/rubocop/cop/layout/closing_parenthesis_indentation.rb +1 -0
- data/lib/rubocop/cop/layout/comment_indentation.rb +39 -2
- data/lib/rubocop/cop/layout/dot_position.rb +22 -13
- data/lib/rubocop/cop/layout/else_alignment.rb +6 -6
- data/lib/rubocop/cop/layout/empty_line_between_defs.rb +17 -17
- data/lib/rubocop/cop/layout/empty_lines.rb +15 -1
- data/lib/rubocop/cop/layout/empty_lines_around_access_modifier.rb +3 -2
- data/lib/rubocop/cop/layout/empty_lines_around_arguments.rb +89 -0
- data/lib/rubocop/cop/layout/empty_lines_around_begin_body.rb +2 -2
- data/lib/rubocop/cop/layout/empty_lines_around_block_body.rb +4 -8
- data/lib/rubocop/cop/layout/empty_lines_around_class_body.rb +30 -5
- data/lib/rubocop/cop/layout/empty_lines_around_exception_handling_keywords.rb +7 -3
- data/lib/rubocop/cop/layout/empty_lines_around_method_body.rb +2 -2
- data/lib/rubocop/cop/layout/empty_lines_around_module_body.rb +22 -7
- data/lib/rubocop/cop/layout/end_of_line.rb +1 -1
- data/lib/rubocop/cop/layout/extra_spacing.rb +21 -24
- data/lib/rubocop/cop/layout/first_parameter_indentation.rb +4 -1
- data/lib/rubocop/cop/layout/indent_array.rb +67 -20
- data/lib/rubocop/cop/layout/indent_hash.rb +70 -25
- data/lib/rubocop/cop/layout/indent_heredoc.rb +51 -11
- data/lib/rubocop/cop/layout/indentation_width.rb +24 -17
- data/lib/rubocop/cop/layout/initial_indentation.rb +7 -5
- data/lib/rubocop/cop/layout/leading_comment_space.rb +2 -2
- data/lib/rubocop/cop/layout/multiline_array_brace_layout.rb +47 -14
- data/lib/rubocop/cop/layout/multiline_assignment_layout.rb +10 -9
- data/lib/rubocop/cop/layout/multiline_block_layout.rb +19 -16
- data/lib/rubocop/cop/layout/multiline_hash_brace_layout.rb +46 -13
- data/lib/rubocop/cop/layout/multiline_method_call_indentation.rb +9 -10
- data/lib/rubocop/cop/layout/multiline_method_definition_brace_layout.rb +4 -0
- data/lib/rubocop/cop/layout/rescue_ensure_alignment.rb +9 -3
- data/lib/rubocop/cop/layout/space_after_colon.rb +4 -4
- data/lib/rubocop/cop/layout/space_after_comma.rb +3 -3
- data/lib/rubocop/cop/layout/space_after_method_name.rb +4 -4
- data/lib/rubocop/cop/layout/space_after_semicolon.rb +8 -1
- data/lib/rubocop/cop/layout/space_around_block_parameters.rb +16 -19
- data/lib/rubocop/cop/layout/space_around_equals_in_parameter_default.rb +27 -16
- data/lib/rubocop/cop/layout/space_around_keyword.rb +13 -11
- data/lib/rubocop/cop/layout/space_around_operators.rb +26 -13
- data/lib/rubocop/cop/layout/space_before_block_braces.rb +10 -10
- data/lib/rubocop/cop/layout/space_before_comma.rb +12 -1
- data/lib/rubocop/cop/layout/space_before_comment.rb +2 -4
- data/lib/rubocop/cop/layout/space_before_first_arg.rb +4 -3
- data/lib/rubocop/cop/layout/space_before_semicolon.rb +1 -1
- data/lib/rubocop/cop/layout/space_in_lambda_literal.rb +6 -12
- data/lib/rubocop/cop/layout/space_inside_array_literal_brackets.rb +235 -0
- data/lib/rubocop/cop/layout/space_inside_array_percent_literal.rb +3 -3
- data/lib/rubocop/cop/layout/space_inside_block_braces.rb +87 -16
- data/lib/rubocop/cop/layout/space_inside_hash_literal_braces.rb +57 -34
- data/lib/rubocop/cop/layout/space_inside_parens.rb +31 -3
- data/lib/rubocop/cop/layout/space_inside_range_literal.rb +15 -15
- data/lib/rubocop/cop/layout/space_inside_reference_brackets.rb +81 -0
- data/lib/rubocop/cop/layout/space_inside_string_interpolation.rb +24 -13
- data/lib/rubocop/cop/layout/tab.rb +2 -2
- data/lib/rubocop/cop/layout/trailing_blank_lines.rb +7 -7
- data/lib/rubocop/cop/lint/ambiguous_block_association.rb +11 -20
- data/lib/rubocop/cop/lint/block_alignment.rb +26 -23
- data/lib/rubocop/cop/lint/boolean_symbol.rb +1 -1
- data/lib/rubocop/cop/lint/def_end_alignment.rb +5 -10
- data/lib/rubocop/cop/lint/else_layout.rb +2 -2
- data/lib/rubocop/cop/lint/end_alignment.rb +13 -14
- data/lib/rubocop/cop/lint/ineffective_access_modifier.rb +3 -4
- data/lib/rubocop/cop/lint/inherit_exception.rb +10 -14
- data/lib/rubocop/cop/lint/missing_cop_enable_directive.rb +81 -0
- data/lib/rubocop/cop/lint/nested_percent_literal.rb +58 -0
- data/lib/rubocop/cop/lint/non_local_exit_from_iterator.rb +2 -2
- data/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +1 -1
- data/lib/rubocop/cop/lint/percent_string_array.rb +14 -14
- data/lib/rubocop/cop/lint/percent_symbol_array.rb +11 -11
- data/lib/rubocop/cop/lint/redundant_with_index.rb +6 -3
- data/lib/rubocop/cop/lint/redundant_with_object.rb +1 -1
- data/lib/rubocop/cop/lint/require_parentheses.rb +3 -1
- data/lib/rubocop/cop/lint/rescue_type.rb +3 -3
- data/lib/rubocop/cop/lint/script_permission.rb +1 -0
- data/lib/rubocop/cop/lint/shadowed_argument.rb +146 -0
- data/lib/rubocop/cop/lint/string_conversion_in_interpolation.rb +6 -6
- data/lib/rubocop/cop/lint/unneeded_disable.rb +29 -11
- data/lib/rubocop/cop/lint/unneeded_require_statement.rb +2 -1
- data/lib/rubocop/cop/lint/unneeded_splat_expansion.rb +43 -17
- data/lib/rubocop/cop/message_annotator.rb +4 -2
- data/lib/rubocop/cop/metrics/abc_size.rb +2 -2
- data/lib/rubocop/cop/metrics/class_length.rb +3 -1
- data/lib/rubocop/cop/metrics/cyclomatic_complexity.rb +2 -1
- data/lib/rubocop/cop/metrics/line_length.rb +2 -2
- data/lib/rubocop/cop/metrics/module_length.rb +3 -1
- data/lib/rubocop/cop/metrics/parameter_lists.rb +9 -2
- data/lib/rubocop/cop/metrics/perceived_complexity.rb +2 -1
- data/lib/rubocop/cop/mixin/documentation_comment.rb +1 -1
- data/lib/rubocop/cop/mixin/empty_lines_around_body.rb +7 -5
- data/lib/rubocop/cop/mixin/empty_parameter.rb +23 -0
- data/lib/rubocop/cop/mixin/end_keyword_alignment.rb +7 -3
- data/lib/rubocop/cop/mixin/heredoc.rb +19 -19
- data/lib/rubocop/cop/mixin/method_complexity.rb +32 -8
- data/lib/rubocop/cop/mixin/multiline_expression_indentation.rb +7 -3
- data/lib/rubocop/cop/mixin/multiline_literal_brace_layout.rb +6 -4
- data/lib/rubocop/cop/mixin/negative_conditional.rb +3 -0
- data/lib/rubocop/cop/mixin/ordered_gem_node.rb +16 -12
- data/lib/rubocop/cop/mixin/parentheses.rb +12 -0
- data/lib/rubocop/cop/mixin/space_after_punctuation.rb +8 -8
- data/lib/rubocop/cop/mixin/space_before_punctuation.rb +10 -10
- data/lib/rubocop/cop/mixin/statement_modifier.rb +7 -17
- data/lib/rubocop/cop/mixin/surrounding_space.rb +95 -8
- data/lib/rubocop/cop/mixin/too_many_lines.rb +2 -2
- data/lib/rubocop/cop/mixin/trailing_comma.rb +22 -14
- data/lib/rubocop/cop/mixin/unused_argument.rb +3 -40
- data/lib/rubocop/cop/naming/accessor_method_name.rb +20 -10
- data/lib/rubocop/cop/naming/ascii_identifiers.rb +33 -0
- data/lib/rubocop/cop/naming/binary_operator_parameter_name.rb +5 -4
- data/lib/rubocop/cop/naming/class_and_module_camel_case.rb +16 -12
- data/lib/rubocop/cop/naming/constant_name.rb +32 -3
- data/lib/rubocop/cop/naming/file_name.rb +19 -8
- data/lib/rubocop/cop/naming/heredoc_delimiter_case.rb +10 -16
- data/lib/rubocop/cop/naming/method_name.rb +20 -14
- data/lib/rubocop/cop/naming/predicate_name.rb +7 -3
- data/lib/rubocop/cop/naming/variable_name.rb +17 -2
- data/lib/rubocop/cop/naming/variable_number.rb +10 -27
- data/lib/rubocop/cop/offense.rb +6 -1
- data/lib/rubocop/cop/performance/case_when_splat.rb +2 -6
- data/lib/rubocop/cop/performance/casecmp.rb +5 -4
- data/lib/rubocop/cop/performance/compare_with_block.rb +13 -7
- data/lib/rubocop/cop/performance/count.rb +5 -4
- data/lib/rubocop/cop/performance/detect.rb +7 -4
- data/lib/rubocop/cop/performance/double_start_end_with.rb +2 -7
- data/lib/rubocop/cop/performance/end_with.rb +2 -2
- data/lib/rubocop/cop/performance/flat_map.rb +3 -2
- data/lib/rubocop/cop/performance/hash_each_methods.rb +41 -40
- data/lib/rubocop/cop/performance/lstrip_rstrip.rb +5 -4
- data/lib/rubocop/cop/performance/redundant_block_call.rb +22 -22
- data/lib/rubocop/cop/performance/redundant_match.rb +2 -2
- data/lib/rubocop/cop/performance/redundant_merge.rb +6 -4
- data/lib/rubocop/cop/performance/redundant_sort_by.rb +4 -4
- data/lib/rubocop/cop/performance/regexp_match.rb +3 -2
- data/lib/rubocop/cop/performance/size.rb +2 -2
- data/lib/rubocop/cop/performance/start_with.rb +2 -2
- data/lib/rubocop/cop/performance/string_replacement.rb +4 -4
- data/lib/rubocop/cop/performance/times_map.rb +14 -15
- data/lib/rubocop/cop/performance/uri_default_parser.rb +3 -3
- data/lib/rubocop/cop/rails/action_filter.rb +22 -0
- data/lib/rubocop/cop/rails/active_support_aliases.rb +2 -2
- data/lib/rubocop/cop/rails/application_job.rb +4 -2
- data/lib/rubocop/cop/rails/application_record.rb +4 -2
- data/lib/rubocop/cop/rails/create_table_with_timestamps.rb +82 -0
- data/lib/rubocop/cop/rails/delegate.rb +20 -25
- data/lib/rubocop/cop/rails/delegate_allow_blank.rb +2 -2
- data/lib/rubocop/cop/rails/environment_comparison.rb +66 -0
- data/lib/rubocop/cop/rails/exit.rb +7 -0
- data/lib/rubocop/cop/rails/has_and_belongs_to_many.rb +7 -0
- data/lib/rubocop/cop/rails/has_many_or_has_one_dependent.rb +6 -2
- data/lib/rubocop/cop/rails/http_positional_arguments.rb +36 -41
- data/lib/rubocop/cop/rails/inverse_of.rb +96 -0
- data/lib/rubocop/cop/rails/lexically_scoped_action_filter.rb +112 -0
- data/lib/rubocop/cop/rails/output.rb +9 -0
- data/lib/rubocop/cop/rails/output_safety.rb +14 -20
- data/lib/rubocop/cop/rails/pluralization_grammar.rb +8 -8
- data/lib/rubocop/cop/rails/presence.rb +105 -0
- data/lib/rubocop/cop/rails/read_write_attribute.rb +10 -10
- data/lib/rubocop/cop/rails/redundant_receiver_in_with_options.rb +91 -0
- data/lib/rubocop/cop/rails/relative_date_constant.rb +9 -9
- data/lib/rubocop/cop/rails/reversible_migration.rb +3 -4
- data/lib/rubocop/cop/rails/safe_navigation.rb +5 -6
- data/lib/rubocop/cop/rails/save_bang.rb +2 -2
- data/lib/rubocop/cop/rails/uniq_before_pluck.rb +1 -1
- data/lib/rubocop/cop/rails/validation.rb +7 -7
- data/lib/rubocop/cop/security/json_load.rb +4 -2
- data/lib/rubocop/cop/security/marshal_load.rb +4 -2
- data/lib/rubocop/cop/style/alias.rb +24 -26
- data/lib/rubocop/cop/style/and_or.rb +34 -28
- data/lib/rubocop/cop/style/array_join.rb +9 -0
- data/lib/rubocop/cop/style/ascii_comments.rb +24 -4
- data/lib/rubocop/cop/style/attr.rb +14 -4
- data/lib/rubocop/cop/style/auto_resource_cleanup.rb +5 -3
- data/lib/rubocop/cop/style/bare_percent_literals.rb +31 -10
- data/lib/rubocop/cop/style/block_comments.rb +14 -2
- data/lib/rubocop/cop/style/block_delimiters.rb +80 -15
- data/lib/rubocop/cop/style/braces_around_hash_parameters.rb +81 -48
- data/lib/rubocop/cop/style/case_equality.rb +12 -0
- data/lib/rubocop/cop/style/character_literal.rb +10 -0
- data/lib/rubocop/cop/style/class_and_module_children.rb +6 -2
- data/lib/rubocop/cop/style/class_check.rb +28 -9
- data/lib/rubocop/cop/style/class_methods.rb +8 -8
- data/lib/rubocop/cop/style/class_vars.rb +4 -3
- data/lib/rubocop/cop/style/collection_methods.rb +4 -2
- data/lib/rubocop/cop/style/colon_method_call.rb +16 -0
- data/lib/rubocop/cop/style/colon_method_definition.rb +36 -0
- data/lib/rubocop/cop/style/command_literal.rb +70 -21
- data/lib/rubocop/cop/style/comment_annotation.rb +35 -10
- data/lib/rubocop/cop/style/commented_keyword.rb +12 -9
- data/lib/rubocop/cop/style/conditional_assignment.rb +10 -12
- data/lib/rubocop/cop/style/copyright.rb +19 -20
- data/lib/rubocop/cop/style/date_time.rb +2 -2
- data/lib/rubocop/cop/style/def_with_parentheses.rb +27 -2
- data/lib/rubocop/cop/style/dir.rb +2 -2
- data/lib/rubocop/cop/style/documentation.rb +17 -2
- data/lib/rubocop/cop/style/each_for_simple_loop.rb +7 -7
- data/lib/rubocop/cop/style/each_with_object.rb +5 -5
- data/lib/rubocop/cop/style/empty_block_parameter.rb +47 -0
- data/lib/rubocop/cop/style/empty_case_condition.rb +2 -2
- data/lib/rubocop/cop/style/empty_else.rb +52 -22
- data/lib/rubocop/cop/style/empty_lambda_parameter.rb +43 -0
- data/lib/rubocop/cop/style/empty_literal.rb +17 -5
- data/lib/rubocop/cop/style/empty_method.rb +4 -10
- data/lib/rubocop/cop/style/encoding.rb +2 -1
- data/lib/rubocop/cop/style/eval_with_location.rb +146 -0
- data/lib/rubocop/cop/style/even_odd.rb +4 -2
- data/lib/rubocop/cop/style/extend_self.rb +92 -0
- data/lib/rubocop/cop/style/flip_flop.rb +11 -0
- data/lib/rubocop/cop/style/format_string.rb +29 -2
- data/lib/rubocop/cop/style/format_string_token.rb +15 -14
- data/lib/rubocop/cop/style/frozen_string_literal_comment.rb +4 -3
- data/lib/rubocop/cop/style/global_vars.rb +11 -1
- data/lib/rubocop/cop/style/hash_syntax.rb +44 -43
- data/lib/rubocop/cop/style/identical_conditional_branches.rb +8 -8
- data/lib/rubocop/cop/style/if_inside_else.rb +10 -10
- data/lib/rubocop/cop/style/if_unless_modifier.rb +7 -7
- data/lib/rubocop/cop/style/if_unless_modifier_of_if_unless.rb +2 -2
- data/lib/rubocop/cop/style/if_with_semicolon.rb +9 -0
- data/lib/rubocop/cop/style/implicit_runtime_error.rb +5 -5
- data/lib/rubocop/cop/style/infinite_loop.rb +2 -2
- data/lib/rubocop/cop/style/lambda.rb +23 -31
- data/lib/rubocop/cop/style/lambda_call.rb +15 -9
- data/lib/rubocop/cop/style/line_end_concatenation.rb +4 -4
- data/lib/rubocop/cop/style/method_call_with_args_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/method_call_without_args_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/method_def_parentheses.rb +4 -3
- data/lib/rubocop/cop/style/method_missing.rb +8 -8
- data/lib/rubocop/cop/style/min_max.rb +12 -12
- data/lib/rubocop/cop/style/missing_else.rb +5 -4
- data/lib/rubocop/cop/style/mixin_grouping.rb +29 -19
- data/lib/rubocop/cop/style/mixin_usage.rb +8 -10
- data/lib/rubocop/cop/style/module_function.rb +17 -5
- data/lib/rubocop/cop/style/multiline_if_modifier.rb +4 -4
- data/lib/rubocop/cop/style/multiline_if_then.rb +14 -13
- data/lib/rubocop/cop/style/multiline_memoization.rb +8 -14
- data/lib/rubocop/cop/style/mutable_constant.rb +12 -12
- data/lib/rubocop/cop/style/negated_if.rb +22 -30
- data/lib/rubocop/cop/style/negated_while.rb +1 -5
- data/lib/rubocop/cop/style/nested_parenthesized_calls.rb +18 -17
- data/lib/rubocop/cop/style/next.rb +39 -11
- data/lib/rubocop/cop/style/nil_comparison.rb +6 -6
- data/lib/rubocop/cop/style/non_nil_check.rb +25 -22
- data/lib/rubocop/cop/style/not.rb +14 -4
- data/lib/rubocop/cop/style/numeric_literal_prefix.rb +6 -6
- data/lib/rubocop/cop/style/numeric_literals.rb +7 -7
- data/lib/rubocop/cop/style/numeric_predicate.rb +14 -18
- data/lib/rubocop/cop/style/one_line_conditional.rb +4 -4
- data/lib/rubocop/cop/style/option_hash.rb +11 -14
- data/lib/rubocop/cop/style/or_assignment.rb +2 -2
- data/lib/rubocop/cop/style/parallel_assignment.rb +13 -13
- data/lib/rubocop/cop/style/parentheses_around_condition.rb +19 -3
- data/lib/rubocop/cop/style/percent_literal_delimiters.rb +24 -3
- data/lib/rubocop/cop/style/percent_q_literals.rb +27 -6
- data/lib/rubocop/cop/style/perl_backrefs.rb +7 -0
- data/lib/rubocop/cop/style/preferred_hash_methods.rb +6 -10
- data/lib/rubocop/cop/style/proc.rb +8 -0
- data/lib/rubocop/cop/style/raise_args.rb +8 -14
- data/lib/rubocop/cop/style/random_with_offset.rb +160 -0
- data/lib/rubocop/cop/style/redundant_begin.rb +14 -4
- data/lib/rubocop/cop/style/redundant_conditional.rb +9 -8
- data/lib/rubocop/cop/style/redundant_return.rb +5 -4
- data/lib/rubocop/cop/style/redundant_self.rb +25 -26
- data/lib/rubocop/cop/style/regexp_literal.rb +74 -21
- data/lib/rubocop/cop/style/rescue_modifier.rb +11 -0
- data/lib/rubocop/cop/style/rescue_standard_error.rb +122 -0
- data/lib/rubocop/cop/style/return_nil.rb +4 -8
- data/lib/rubocop/cop/style/safe_navigation.rb +20 -2
- data/lib/rubocop/cop/style/self_assignment.rb +13 -13
- data/lib/rubocop/cop/style/semicolon.rb +18 -8
- data/lib/rubocop/cop/style/send.rb +9 -0
- data/lib/rubocop/cop/style/signal_exception.rb +100 -0
- data/lib/rubocop/cop/style/single_line_block_params.rb +2 -2
- data/lib/rubocop/cop/style/single_line_methods.rb +20 -8
- data/lib/rubocop/cop/style/special_global_vars.rb +16 -11
- data/lib/rubocop/cop/style/stabby_lambda_parentheses.rb +7 -12
- data/lib/rubocop/cop/style/stderr_puts.rb +5 -3
- data/lib/rubocop/cop/style/string_hash_keys.rb +36 -0
- data/lib/rubocop/cop/style/string_literals.rb +22 -0
- data/lib/rubocop/cop/style/string_literals_in_interpolation.rb +2 -8
- data/lib/rubocop/cop/style/string_methods.rb +18 -7
- data/lib/rubocop/cop/style/symbol_array.rb +5 -9
- data/lib/rubocop/cop/style/symbol_proc.rb +5 -4
- data/lib/rubocop/cop/style/ternary_parentheses.rb +31 -40
- data/lib/rubocop/cop/style/trailing_body_on_method_definition.rb +101 -0
- data/lib/rubocop/cop/style/trailing_comma_in_arguments.rb +20 -6
- data/lib/rubocop/cop/style/trailing_comma_in_literal.rb +22 -7
- data/lib/rubocop/cop/style/trailing_method_end_statement.rb +95 -0
- data/lib/rubocop/cop/style/trailing_underscore_variable.rb +8 -4
- data/lib/rubocop/cop/style/trivial_accessors.rb +32 -10
- data/lib/rubocop/cop/style/unless_else.rb +15 -0
- data/lib/rubocop/cop/style/unneeded_capital_w.rb +17 -7
- data/lib/rubocop/cop/style/unneeded_interpolation.rb +14 -18
- data/lib/rubocop/cop/style/unneeded_percent_q.rb +13 -12
- data/lib/rubocop/cop/style/variable_interpolation.rb +20 -9
- data/lib/rubocop/cop/style/when_then.rb +13 -0
- data/lib/rubocop/cop/style/while_until_do.rb +26 -4
- data/lib/rubocop/cop/style/while_until_modifier.rb +25 -6
- data/lib/rubocop/cop/style/word_array.rb +4 -8
- data/lib/rubocop/cop/style/yoda_condition.rb +10 -16
- data/lib/rubocop/cop/style/zero_length_predicate.rb +23 -15
- data/lib/rubocop/cop/util.rb +42 -33
- data/lib/rubocop/cop/variable_force.rb +1 -1
- data/lib/rubocop/cop/variable_force/assignment.rb +4 -2
- data/lib/rubocop/cop/variable_force/scope.rb +1 -5
- data/lib/rubocop/cop/variable_force/variable.rb +1 -1
- data/lib/rubocop/formatter/disabled_config_formatter.rb +2 -3
- data/lib/rubocop/formatter/formatter_set.rb +2 -1
- data/lib/rubocop/formatter/json_formatter.rb +9 -3
- data/lib/rubocop/formatter/quiet_formatter.rb +13 -0
- data/lib/rubocop/node_pattern.rb +2 -3
- data/lib/rubocop/options.rb +8 -8
- data/lib/rubocop/path_util.rb +15 -3
- data/lib/rubocop/processed_source.rb +5 -2
- data/lib/rubocop/rspec/shared_contexts.rb +4 -0
- data/lib/rubocop/runner.rb +1 -1
- data/lib/rubocop/token.rb +74 -0
- data/lib/rubocop/version.rb +1 -1
- metadata +37 -10
- data/lib/rubocop/cop/internal_affairs/deprecated_positional_arguments.rb +0 -81
- data/lib/rubocop/cop/layout/space_inside_brackets.rb +0 -20
- data/lib/rubocop/cop/lint/rescue_without_error_class.rb +0 -41
- data/lib/rubocop/cop/mixin/space_inside.rb +0 -76
@@ -64,9 +64,15 @@ module RuboCop
|
|
64
64
|
# TODO: Consider better solution for Offense#real_column.
|
65
65
|
def hash_for_location(offense)
|
66
66
|
{
|
67
|
-
|
68
|
-
|
69
|
-
|
67
|
+
start_line: offense.line,
|
68
|
+
start_column: offense.real_column,
|
69
|
+
last_line: offense.last_line,
|
70
|
+
last_column: offense.last_column,
|
71
|
+
length: offense.location.length,
|
72
|
+
# `line` and `column` exist for compatibility.
|
73
|
+
# Use `start_line` and `start_column` instead.
|
74
|
+
line: offense.line,
|
75
|
+
column: offense.real_column
|
70
76
|
}
|
71
77
|
end
|
72
78
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module RuboCop
|
4
|
+
module Formatter
|
5
|
+
# If no offenses are found, no output is displayed.
|
6
|
+
# Otherwise, SimpleTextFormatter's output is displayed.
|
7
|
+
class QuietFormatter < SimpleTextFormatter
|
8
|
+
def report_summary(file_count, offense_count, correction_count)
|
9
|
+
super unless offense_count.zero?
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/rubocop/node_pattern.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
# rubocop:disable Metrics/ClassLength
|
4
|
-
# rubocop:disable Metrics/CyclomaticComplexity
|
5
|
-
|
3
|
+
# rubocop:disable Metrics/ClassLength, Metrics/CyclomaticComplexity
|
6
4
|
module RuboCop
|
7
5
|
# This class performs a pattern-matching operation on an AST node.
|
8
6
|
#
|
@@ -559,3 +557,4 @@ module RuboCop
|
|
559
557
|
end
|
560
558
|
end
|
561
559
|
end
|
560
|
+
# rubocop:enable Metrics/ClassLength, Metrics/CyclomaticComplexity
|
data/lib/rubocop/options.rb
CHANGED
@@ -17,9 +17,6 @@ module RuboCop
|
|
17
17
|
def parse(command_line_args)
|
18
18
|
args = args_from_file.concat(args_from_env).concat(command_line_args)
|
19
19
|
define_options(args).parse!(args)
|
20
|
-
# The --no-color CLI option sets `color: false` so we don't want the
|
21
|
-
# `no_color` key, which is created automatically.
|
22
|
-
@options.delete(:no_color)
|
23
20
|
|
24
21
|
@validator.validate_compatibility
|
25
22
|
|
@@ -143,7 +140,7 @@ module RuboCop
|
|
143
140
|
option(opts, '-F', '--fail-fast')
|
144
141
|
option(opts, '-C', '--cache FLAG')
|
145
142
|
option(opts, '-d', '--debug')
|
146
|
-
option(opts, '-D', '--display-cop-names')
|
143
|
+
option(opts, '-D', '--[no-]display-cop-names')
|
147
144
|
option(opts, '-E', '--extra-details')
|
148
145
|
option(opts, '-S', '--display-style-guide')
|
149
146
|
option(opts, '-R', '--rails')
|
@@ -153,7 +150,7 @@ module RuboCop
|
|
153
150
|
end
|
154
151
|
option(opts, '-a', '--auto-correct')
|
155
152
|
|
156
|
-
option(opts, '--[no-]color')
|
153
|
+
option(opts, '--[no-]color')
|
157
154
|
|
158
155
|
option(opts, '-v', '--version')
|
159
156
|
option(opts, '-V', '--verbose-version')
|
@@ -179,7 +176,8 @@ module RuboCop
|
|
179
176
|
# e.g. [..., '--auto-correct', ...] to :auto_correct.
|
180
177
|
def long_opt_symbol(args)
|
181
178
|
long_opt = args.find { |arg| arg.start_with?('--') }
|
182
|
-
long_opt[2..-1].sub(
|
179
|
+
long_opt[2..-1].sub('[no-]', '').sub(/ .*/, '')
|
180
|
+
.tr('-', '_').gsub(/[\[\]]/, '').to_sym
|
183
181
|
end
|
184
182
|
end
|
185
183
|
|
@@ -324,6 +322,7 @@ module RuboCop
|
|
324
322
|
' [o]ffenses',
|
325
323
|
' [w]orst',
|
326
324
|
' [t]ap',
|
325
|
+
' [q]uiet',
|
327
326
|
' custom formatter class name'],
|
328
327
|
out: ['Write output to a file instead of STDOUT.',
|
329
328
|
'This option applies to the previously',
|
@@ -341,14 +340,15 @@ module RuboCop
|
|
341
340
|
'(FLAG=false), default determined by',
|
342
341
|
'configuration parameter AllCops: UseCache.'],
|
343
342
|
debug: 'Display debug info.',
|
344
|
-
display_cop_names: 'Display cop names in offense messages.',
|
343
|
+
display_cop_names: ['Display cop names in offense messages.',
|
344
|
+
'Default is true.'],
|
345
345
|
display_style_guide: 'Display style guide URLs in offense messages.',
|
346
346
|
extra_details: 'Display extra details in offense messages.',
|
347
347
|
rails: 'Run extra Rails cops.',
|
348
348
|
lint: 'Run only lint cops.',
|
349
349
|
list_target_files: 'List all files RuboCop will inspect.',
|
350
350
|
auto_correct: 'Auto-correct offenses.',
|
351
|
-
|
351
|
+
color: 'Force color output on or off.',
|
352
352
|
version: 'Display version.',
|
353
353
|
verbose_version: 'Display verbose version.',
|
354
354
|
parallel: ['Use available CPUs to execute inspection in',
|
data/lib/rubocop/path_util.rb
CHANGED
@@ -5,10 +5,14 @@ module RuboCop
|
|
5
5
|
module PathUtil
|
6
6
|
module_function
|
7
7
|
|
8
|
-
def relative_path(path, base_dir =
|
8
|
+
def relative_path(path, base_dir = PathUtil.pwd)
|
9
9
|
# Optimization for the common case where path begins with the base
|
10
10
|
# dir. Just cut off the first part.
|
11
|
-
|
11
|
+
if path.start_with?(base_dir)
|
12
|
+
base_dir_length = base_dir.length
|
13
|
+
result_length = path.length - base_dir_length - 1
|
14
|
+
return path[base_dir_length + 1, result_length]
|
15
|
+
end
|
12
16
|
|
13
17
|
path_name = Pathname.new(File.expand_path(path))
|
14
18
|
path_name.relative_path_from(Pathname.new(base_dir)).to_s
|
@@ -16,7 +20,7 @@ module RuboCop
|
|
16
20
|
|
17
21
|
def smart_path(path)
|
18
22
|
# Ideally, we calculate this relative to the project root.
|
19
|
-
base_dir =
|
23
|
+
base_dir = PathUtil.pwd
|
20
24
|
|
21
25
|
if path.start_with? base_dir
|
22
26
|
relative_path(path, base_dir)
|
@@ -43,5 +47,13 @@ module RuboCop
|
|
43
47
|
def absolute?(path)
|
44
48
|
path =~ %r{\A([A-Z]:)?/}
|
45
49
|
end
|
50
|
+
|
51
|
+
def self.pwd
|
52
|
+
@pwd ||= Dir.pwd
|
53
|
+
end
|
54
|
+
|
55
|
+
def self.reset_pwd
|
56
|
+
@pwd = nil
|
57
|
+
end
|
46
58
|
end
|
47
59
|
end
|
@@ -54,7 +54,7 @@ module RuboCop
|
|
54
54
|
def lines
|
55
55
|
@lines ||= begin
|
56
56
|
all_lines = @buffer.source_lines
|
57
|
-
last_token_line = tokens.any? ? tokens.last.
|
57
|
+
last_token_line = tokens.any? ? tokens.last.line : all_lines.size
|
58
58
|
result = []
|
59
59
|
all_lines.each_with_index do |line, ix|
|
60
60
|
break if ix >= last_token_line && line == '__END__'
|
@@ -122,6 +122,9 @@ module RuboCop
|
|
122
122
|
when 2.4
|
123
123
|
require 'parser/ruby24'
|
124
124
|
Parser::Ruby24
|
125
|
+
when 2.5
|
126
|
+
require 'parser/ruby25'
|
127
|
+
Parser::Ruby25
|
125
128
|
else
|
126
129
|
raise ArgumentError, "Unknown Ruby version: #{ruby_version.inspect}"
|
127
130
|
end
|
@@ -132,7 +135,7 @@ module RuboCop
|
|
132
135
|
builder = RuboCop::AST::Builder.new
|
133
136
|
|
134
137
|
parser_class(ruby_version).new(builder).tap do |parser|
|
135
|
-
# On JRuby
|
138
|
+
# On JRuby there's a risk that we hang in tokenize() if we
|
136
139
|
# don't set the all errors as fatal flag. The problem is caused by a bug
|
137
140
|
# in Racc that is discussed in issue #93 of the whitequark/parser
|
138
141
|
# project on GitHub.
|
data/lib/rubocop/runner.rb
CHANGED
@@ -47,7 +47,7 @@ module RuboCop
|
|
47
47
|
private
|
48
48
|
|
49
49
|
# Warms up the RuboCop cache by forking a suitable number of rubocop
|
50
|
-
# instances that each inspects its
|
50
|
+
# instances that each inspects its allotted group of files.
|
51
51
|
def warm_cache(target_files)
|
52
52
|
puts 'Running parallel inspection' if @options[:debug]
|
53
53
|
Parallel.each(target_files, &method(:file_offenses))
|
data/lib/rubocop/token.rb
CHANGED
@@ -18,8 +18,82 @@ module RuboCop
|
|
18
18
|
@text = text.to_s
|
19
19
|
end
|
20
20
|
|
21
|
+
def line
|
22
|
+
pos.line
|
23
|
+
end
|
24
|
+
|
25
|
+
def column
|
26
|
+
pos.column
|
27
|
+
end
|
28
|
+
|
29
|
+
def begin_pos
|
30
|
+
pos.begin_pos
|
31
|
+
end
|
32
|
+
|
33
|
+
def end_pos
|
34
|
+
pos.end_pos
|
35
|
+
end
|
36
|
+
|
37
|
+
def comment?
|
38
|
+
type == :tCOMMENT
|
39
|
+
end
|
40
|
+
|
41
|
+
def semicolon?
|
42
|
+
type == :tSEMI
|
43
|
+
end
|
44
|
+
|
45
|
+
def left_array_bracket?
|
46
|
+
type == :tLBRACK
|
47
|
+
end
|
48
|
+
|
49
|
+
def left_ref_bracket?
|
50
|
+
type == :tLBRACK2
|
51
|
+
end
|
52
|
+
|
53
|
+
def right_bracket?
|
54
|
+
type == :tRBRACK
|
55
|
+
end
|
56
|
+
|
57
|
+
def left_brace?
|
58
|
+
type == :tLBRACE
|
59
|
+
end
|
60
|
+
|
61
|
+
def left_curly_brace?
|
62
|
+
type == :tLCURLY
|
63
|
+
end
|
64
|
+
|
65
|
+
def right_curly_brace?
|
66
|
+
type == :tRCURLY
|
67
|
+
end
|
68
|
+
|
69
|
+
def left_parens?
|
70
|
+
%i[tLPAREN tLPAREN2].include?(type)
|
71
|
+
end
|
72
|
+
|
73
|
+
def right_parens?
|
74
|
+
type == :tRPAREN
|
75
|
+
end
|
76
|
+
|
77
|
+
def comma?
|
78
|
+
type == :tCOMMA
|
79
|
+
end
|
80
|
+
|
81
|
+
def equal_sign?
|
82
|
+
%i[tEQL tOP_ASGN].include?(type)
|
83
|
+
end
|
84
|
+
|
21
85
|
def to_s
|
22
86
|
"[[#{@pos.line}, #{@pos.column}], #{@type}, #{@text.inspect}]"
|
23
87
|
end
|
88
|
+
|
89
|
+
# Checks if there is whitespace after token
|
90
|
+
def space_after?
|
91
|
+
pos.source_buffer.source.match(/\G\s/, end_pos)
|
92
|
+
end
|
93
|
+
|
94
|
+
# Checks if there is whitespace before token
|
95
|
+
def space_before?
|
96
|
+
pos.source_buffer.source.match(/\G\s/, begin_pos - 1)
|
97
|
+
end
|
24
98
|
end
|
25
99
|
end
|
data/lib/rubocop/version.rb
CHANGED
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.52.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: 2017-
|
13
|
+
date: 2017-12-12 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: parallel
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
requirements:
|
33
33
|
- - ">="
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: 2.
|
35
|
+
version: 2.4.0.2
|
36
36
|
- - "<"
|
37
37
|
- !ruby/object:Gem::Version
|
38
38
|
version: '3.0'
|
@@ -42,7 +42,7 @@ dependencies:
|
|
42
42
|
requirements:
|
43
43
|
- - ">="
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version: 2.
|
45
|
+
version: 2.4.0.2
|
46
46
|
- - "<"
|
47
47
|
- !ruby/object:Gem::Version
|
48
48
|
version: '3.0'
|
@@ -69,7 +69,7 @@ dependencies:
|
|
69
69
|
version: 2.2.2
|
70
70
|
- - "<"
|
71
71
|
- !ruby/object:Gem::Version
|
72
|
-
version: '
|
72
|
+
version: '4.0'
|
73
73
|
type: :runtime
|
74
74
|
prerelease: false
|
75
75
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -79,7 +79,7 @@ dependencies:
|
|
79
79
|
version: 2.2.2
|
80
80
|
- - "<"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '4.0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: ruby-progressbar
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -161,6 +161,7 @@ files:
|
|
161
161
|
- lib/rubocop/ast/node/hash_node.rb
|
162
162
|
- lib/rubocop/ast/node/if_node.rb
|
163
163
|
- lib/rubocop/ast/node/keyword_splat_node.rb
|
164
|
+
- lib/rubocop/ast/node/mixin/basic_literal_node.rb
|
164
165
|
- lib/rubocop/ast/node/mixin/binary_operator_node.rb
|
165
166
|
- lib/rubocop/ast/node/mixin/collection_node.rb
|
166
167
|
- lib/rubocop/ast/node/mixin/conditional_node.rb
|
@@ -175,7 +176,9 @@ files:
|
|
175
176
|
- lib/rubocop/ast/node/regexp_node.rb
|
176
177
|
- lib/rubocop/ast/node/resbody_node.rb
|
177
178
|
- lib/rubocop/ast/node/send_node.rb
|
179
|
+
- lib/rubocop/ast/node/str_node.rb
|
178
180
|
- lib/rubocop/ast/node/super_node.rb
|
181
|
+
- lib/rubocop/ast/node/symbol_node.rb
|
179
182
|
- lib/rubocop/ast/node/until_node.rb
|
180
183
|
- lib/rubocop/ast/node/when_node.rb
|
181
184
|
- lib/rubocop/ast/node/while_node.rb
|
@@ -198,11 +201,13 @@ files:
|
|
198
201
|
- lib/rubocop/cop/cop.rb
|
199
202
|
- lib/rubocop/cop/corrector.rb
|
200
203
|
- lib/rubocop/cop/force.rb
|
204
|
+
- lib/rubocop/cop/gemspec/duplicated_assignment.rb
|
201
205
|
- lib/rubocop/cop/gemspec/ordered_dependencies.rb
|
206
|
+
- lib/rubocop/cop/gemspec/required_ruby_version.rb
|
202
207
|
- lib/rubocop/cop/generator.rb
|
203
208
|
- lib/rubocop/cop/ignored_node.rb
|
204
209
|
- lib/rubocop/cop/internal_affairs.rb
|
205
|
-
- lib/rubocop/cop/internal_affairs/
|
210
|
+
- lib/rubocop/cop/internal_affairs/node_destructuring.rb
|
206
211
|
- lib/rubocop/cop/internal_affairs/node_type_predicate.rb
|
207
212
|
- lib/rubocop/cop/internal_affairs/offense_location_keyword.rb
|
208
213
|
- lib/rubocop/cop/internal_affairs/redundant_location_argument.rb
|
@@ -214,6 +219,7 @@ files:
|
|
214
219
|
- lib/rubocop/cop/layout/align_parameters.rb
|
215
220
|
- lib/rubocop/cop/layout/block_end_newline.rb
|
216
221
|
- lib/rubocop/cop/layout/case_indentation.rb
|
222
|
+
- lib/rubocop/cop/layout/class_structure.rb
|
217
223
|
- lib/rubocop/cop/layout/closing_parenthesis_indentation.rb
|
218
224
|
- lib/rubocop/cop/layout/comment_indentation.rb
|
219
225
|
- lib/rubocop/cop/layout/dot_position.rb
|
@@ -222,6 +228,7 @@ files:
|
|
222
228
|
- lib/rubocop/cop/layout/empty_line_between_defs.rb
|
223
229
|
- lib/rubocop/cop/layout/empty_lines.rb
|
224
230
|
- lib/rubocop/cop/layout/empty_lines_around_access_modifier.rb
|
231
|
+
- lib/rubocop/cop/layout/empty_lines_around_arguments.rb
|
225
232
|
- lib/rubocop/cop/layout/empty_lines_around_begin_body.rb
|
226
233
|
- lib/rubocop/cop/layout/empty_lines_around_block_body.rb
|
227
234
|
- lib/rubocop/cop/layout/empty_lines_around_class_body.rb
|
@@ -267,13 +274,14 @@ files:
|
|
267
274
|
- lib/rubocop/cop/layout/space_before_first_arg.rb
|
268
275
|
- lib/rubocop/cop/layout/space_before_semicolon.rb
|
269
276
|
- lib/rubocop/cop/layout/space_in_lambda_literal.rb
|
277
|
+
- lib/rubocop/cop/layout/space_inside_array_literal_brackets.rb
|
270
278
|
- lib/rubocop/cop/layout/space_inside_array_percent_literal.rb
|
271
279
|
- lib/rubocop/cop/layout/space_inside_block_braces.rb
|
272
|
-
- lib/rubocop/cop/layout/space_inside_brackets.rb
|
273
280
|
- lib/rubocop/cop/layout/space_inside_hash_literal_braces.rb
|
274
281
|
- lib/rubocop/cop/layout/space_inside_parens.rb
|
275
282
|
- lib/rubocop/cop/layout/space_inside_percent_literal_delimiters.rb
|
276
283
|
- lib/rubocop/cop/layout/space_inside_range_literal.rb
|
284
|
+
- lib/rubocop/cop/layout/space_inside_reference_brackets.rb
|
277
285
|
- lib/rubocop/cop/layout/space_inside_string_interpolation.rb
|
278
286
|
- lib/rubocop/cop/layout/tab.rb
|
279
287
|
- lib/rubocop/cop/layout/trailing_blank_lines.rb
|
@@ -311,8 +319,10 @@ files:
|
|
311
319
|
- lib/rubocop/cop/lint/literal_as_condition.rb
|
312
320
|
- lib/rubocop/cop/lint/literal_in_interpolation.rb
|
313
321
|
- lib/rubocop/cop/lint/loop.rb
|
322
|
+
- lib/rubocop/cop/lint/missing_cop_enable_directive.rb
|
314
323
|
- lib/rubocop/cop/lint/multiple_compare.rb
|
315
324
|
- lib/rubocop/cop/lint/nested_method_definition.rb
|
325
|
+
- lib/rubocop/cop/lint/nested_percent_literal.rb
|
316
326
|
- lib/rubocop/cop/lint/next_without_accumulator.rb
|
317
327
|
- lib/rubocop/cop/lint/non_local_exit_from_iterator.rb
|
318
328
|
- lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb
|
@@ -325,10 +335,10 @@ files:
|
|
325
335
|
- lib/rubocop/cop/lint/require_parentheses.rb
|
326
336
|
- lib/rubocop/cop/lint/rescue_exception.rb
|
327
337
|
- lib/rubocop/cop/lint/rescue_type.rb
|
328
|
-
- lib/rubocop/cop/lint/rescue_without_error_class.rb
|
329
338
|
- lib/rubocop/cop/lint/return_in_void_context.rb
|
330
339
|
- lib/rubocop/cop/lint/safe_navigation_chain.rb
|
331
340
|
- lib/rubocop/cop/lint/script_permission.rb
|
341
|
+
- lib/rubocop/cop/lint/shadowed_argument.rb
|
332
342
|
- lib/rubocop/cop/lint/shadowed_exception.rb
|
333
343
|
- lib/rubocop/cop/lint/shadowing_outer_local_variable.rb
|
334
344
|
- lib/rubocop/cop/lint/string_conversion_in_interpolation.rb
|
@@ -377,6 +387,7 @@ files:
|
|
377
387
|
- lib/rubocop/cop/mixin/documentation_comment.rb
|
378
388
|
- lib/rubocop/cop/mixin/duplication.rb
|
379
389
|
- lib/rubocop/cop/mixin/empty_lines_around_body.rb
|
390
|
+
- lib/rubocop/cop/mixin/empty_parameter.rb
|
380
391
|
- lib/rubocop/cop/mixin/end_keyword_alignment.rb
|
381
392
|
- lib/rubocop/cop/mixin/enforce_superclass.rb
|
382
393
|
- lib/rubocop/cop/mixin/first_element_line_break.rb
|
@@ -404,7 +415,6 @@ files:
|
|
404
415
|
- lib/rubocop/cop/mixin/safe_mode.rb
|
405
416
|
- lib/rubocop/cop/mixin/space_after_punctuation.rb
|
406
417
|
- lib/rubocop/cop/mixin/space_before_punctuation.rb
|
407
|
-
- lib/rubocop/cop/mixin/space_inside.rb
|
408
418
|
- lib/rubocop/cop/mixin/statement_modifier.rb
|
409
419
|
- lib/rubocop/cop/mixin/string_help.rb
|
410
420
|
- lib/rubocop/cop/mixin/string_literals_help.rb
|
@@ -458,11 +468,13 @@ files:
|
|
458
468
|
- lib/rubocop/cop/rails/application_job.rb
|
459
469
|
- lib/rubocop/cop/rails/application_record.rb
|
460
470
|
- lib/rubocop/cop/rails/blank.rb
|
471
|
+
- lib/rubocop/cop/rails/create_table_with_timestamps.rb
|
461
472
|
- lib/rubocop/cop/rails/date.rb
|
462
473
|
- lib/rubocop/cop/rails/delegate.rb
|
463
474
|
- lib/rubocop/cop/rails/delegate_allow_blank.rb
|
464
475
|
- lib/rubocop/cop/rails/dynamic_find_by.rb
|
465
476
|
- lib/rubocop/cop/rails/enum_uniqueness.rb
|
477
|
+
- lib/rubocop/cop/rails/environment_comparison.rb
|
466
478
|
- lib/rubocop/cop/rails/exit.rb
|
467
479
|
- lib/rubocop/cop/rails/file_path.rb
|
468
480
|
- lib/rubocop/cop/rails/find_by.rb
|
@@ -470,12 +482,16 @@ files:
|
|
470
482
|
- lib/rubocop/cop/rails/has_and_belongs_to_many.rb
|
471
483
|
- lib/rubocop/cop/rails/has_many_or_has_one_dependent.rb
|
472
484
|
- lib/rubocop/cop/rails/http_positional_arguments.rb
|
485
|
+
- lib/rubocop/cop/rails/inverse_of.rb
|
486
|
+
- lib/rubocop/cop/rails/lexically_scoped_action_filter.rb
|
473
487
|
- lib/rubocop/cop/rails/not_null_column.rb
|
474
488
|
- lib/rubocop/cop/rails/output.rb
|
475
489
|
- lib/rubocop/cop/rails/output_safety.rb
|
476
490
|
- lib/rubocop/cop/rails/pluralization_grammar.rb
|
491
|
+
- lib/rubocop/cop/rails/presence.rb
|
477
492
|
- lib/rubocop/cop/rails/present.rb
|
478
493
|
- lib/rubocop/cop/rails/read_write_attribute.rb
|
494
|
+
- lib/rubocop/cop/rails/redundant_receiver_in_with_options.rb
|
479
495
|
- lib/rubocop/cop/rails/relative_date_constant.rb
|
480
496
|
- lib/rubocop/cop/rails/request_referer.rb
|
481
497
|
- lib/rubocop/cop/rails/reversible_migration.rb
|
@@ -512,6 +528,7 @@ files:
|
|
512
528
|
- lib/rubocop/cop/style/class_vars.rb
|
513
529
|
- lib/rubocop/cop/style/collection_methods.rb
|
514
530
|
- lib/rubocop/cop/style/colon_method_call.rb
|
531
|
+
- lib/rubocop/cop/style/colon_method_definition.rb
|
515
532
|
- lib/rubocop/cop/style/command_literal.rb
|
516
533
|
- lib/rubocop/cop/style/comment_annotation.rb
|
517
534
|
- lib/rubocop/cop/style/commented_keyword.rb
|
@@ -525,13 +542,17 @@ files:
|
|
525
542
|
- lib/rubocop/cop/style/double_negation.rb
|
526
543
|
- lib/rubocop/cop/style/each_for_simple_loop.rb
|
527
544
|
- lib/rubocop/cop/style/each_with_object.rb
|
545
|
+
- lib/rubocop/cop/style/empty_block_parameter.rb
|
528
546
|
- lib/rubocop/cop/style/empty_case_condition.rb
|
529
547
|
- lib/rubocop/cop/style/empty_else.rb
|
548
|
+
- lib/rubocop/cop/style/empty_lambda_parameter.rb
|
530
549
|
- lib/rubocop/cop/style/empty_literal.rb
|
531
550
|
- lib/rubocop/cop/style/empty_method.rb
|
532
551
|
- lib/rubocop/cop/style/encoding.rb
|
533
552
|
- lib/rubocop/cop/style/end_block.rb
|
553
|
+
- lib/rubocop/cop/style/eval_with_location.rb
|
534
554
|
- lib/rubocop/cop/style/even_odd.rb
|
555
|
+
- lib/rubocop/cop/style/extend_self.rb
|
535
556
|
- lib/rubocop/cop/style/flip_flop.rb
|
536
557
|
- lib/rubocop/cop/style/for.rb
|
537
558
|
- lib/rubocop/cop/style/format_string.rb
|
@@ -593,6 +614,7 @@ files:
|
|
593
614
|
- lib/rubocop/cop/style/preferred_hash_methods.rb
|
594
615
|
- lib/rubocop/cop/style/proc.rb
|
595
616
|
- lib/rubocop/cop/style/raise_args.rb
|
617
|
+
- lib/rubocop/cop/style/random_with_offset.rb
|
596
618
|
- lib/rubocop/cop/style/redundant_begin.rb
|
597
619
|
- lib/rubocop/cop/style/redundant_conditional.rb
|
598
620
|
- lib/rubocop/cop/style/redundant_exception.rb
|
@@ -602,6 +624,7 @@ files:
|
|
602
624
|
- lib/rubocop/cop/style/redundant_self.rb
|
603
625
|
- lib/rubocop/cop/style/regexp_literal.rb
|
604
626
|
- lib/rubocop/cop/style/rescue_modifier.rb
|
627
|
+
- lib/rubocop/cop/style/rescue_standard_error.rb
|
605
628
|
- lib/rubocop/cop/style/return_nil.rb
|
606
629
|
- lib/rubocop/cop/style/safe_navigation.rb
|
607
630
|
- lib/rubocop/cop/style/self_assignment.rb
|
@@ -613,6 +636,7 @@ files:
|
|
613
636
|
- lib/rubocop/cop/style/special_global_vars.rb
|
614
637
|
- lib/rubocop/cop/style/stabby_lambda_parentheses.rb
|
615
638
|
- lib/rubocop/cop/style/stderr_puts.rb
|
639
|
+
- lib/rubocop/cop/style/string_hash_keys.rb
|
616
640
|
- lib/rubocop/cop/style/string_literals.rb
|
617
641
|
- lib/rubocop/cop/style/string_literals_in_interpolation.rb
|
618
642
|
- lib/rubocop/cop/style/string_methods.rb
|
@@ -621,8 +645,10 @@ files:
|
|
621
645
|
- lib/rubocop/cop/style/symbol_literal.rb
|
622
646
|
- lib/rubocop/cop/style/symbol_proc.rb
|
623
647
|
- lib/rubocop/cop/style/ternary_parentheses.rb
|
648
|
+
- lib/rubocop/cop/style/trailing_body_on_method_definition.rb
|
624
649
|
- lib/rubocop/cop/style/trailing_comma_in_arguments.rb
|
625
650
|
- lib/rubocop/cop/style/trailing_comma_in_literal.rb
|
651
|
+
- lib/rubocop/cop/style/trailing_method_end_statement.rb
|
626
652
|
- lib/rubocop/cop/style/trailing_underscore_variable.rb
|
627
653
|
- lib/rubocop/cop/style/trivial_accessors.rb
|
628
654
|
- lib/rubocop/cop/style/unless_else.rb
|
@@ -660,6 +686,7 @@ files:
|
|
660
686
|
- lib/rubocop/formatter/json_formatter.rb
|
661
687
|
- lib/rubocop/formatter/offense_count_formatter.rb
|
662
688
|
- lib/rubocop/formatter/progress_formatter.rb
|
689
|
+
- lib/rubocop/formatter/quiet_formatter.rb
|
663
690
|
- lib/rubocop/formatter/simple_text_formatter.rb
|
664
691
|
- lib/rubocop/formatter/tap_formatter.rb
|
665
692
|
- lib/rubocop/formatter/text_util.rb
|