rubocop 0.68.1 → 0.69.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 +3 -3
- data/config/default.yml +25 -9
- data/lib/rubocop.rb +1 -0
- data/lib/rubocop/ast/node.rb +6 -2
- data/lib/rubocop/ast/node/array_node.rb +2 -2
- data/lib/rubocop/ast/node/block_node.rb +2 -2
- data/lib/rubocop/ast/node/for_node.rb +1 -1
- data/lib/rubocop/ast/node/hash_node.rb +1 -1
- data/lib/rubocop/ast/node/if_node.rb +1 -1
- data/lib/rubocop/ast/node/keyword_splat_node.rb +1 -1
- data/lib/rubocop/ast/node/mixin/method_dispatch_node.rb +3 -3
- data/lib/rubocop/ast/node/mixin/method_identifier_predicates.rb +2 -2
- data/lib/rubocop/ast/node/mixin/parameterized_node.rb +1 -1
- data/lib/rubocop/ast/node/mixin/predicate_operator_node.rb +4 -4
- data/lib/rubocop/ast/node/pair_node.rb +4 -4
- data/lib/rubocop/ast/node/until_node.rb +1 -1
- data/lib/rubocop/ast/node/when_node.rb +1 -1
- data/lib/rubocop/ast/node/while_node.rb +1 -1
- data/lib/rubocop/cli.rb +6 -6
- data/lib/rubocop/comment_config.rb +6 -6
- data/lib/rubocop/config.rb +8 -6
- data/lib/rubocop/config_loader.rb +3 -3
- data/lib/rubocop/cop/badge.rb +1 -1
- data/lib/rubocop/cop/bundler/duplicated_gem.rb +1 -1
- data/lib/rubocop/cop/bundler/gem_comment.rb +1 -1
- data/lib/rubocop/cop/bundler/insecure_protocol_source.rb +1 -1
- data/lib/rubocop/cop/bundler/ordered_gems.rb +1 -1
- data/lib/rubocop/cop/correctors/alignment_corrector.rb +2 -2
- data/lib/rubocop/cop/correctors/each_to_for_corrector.rb +2 -2
- data/lib/rubocop/cop/correctors/for_to_each_corrector.rb +1 -1
- data/lib/rubocop/cop/correctors/lambda_literal_to_method_corrector.rb +5 -5
- data/lib/rubocop/cop/correctors/multiline_literal_brace_corrector.rb +1 -1
- data/lib/rubocop/cop/correctors/parentheses_corrector.rb +1 -1
- data/lib/rubocop/cop/gemspec/duplicated_assignment.rb +1 -1
- data/lib/rubocop/cop/gemspec/ordered_dependencies.rb +0 -1
- data/lib/rubocop/cop/gemspec/required_ruby_version.rb +7 -7
- data/lib/rubocop/cop/generator.rb +6 -6
- data/lib/rubocop/cop/generator/configuration_injector.rb +5 -5
- data/lib/rubocop/cop/internal_affairs/node_destructuring.rb +1 -1
- data/lib/rubocop/cop/internal_affairs/node_type_predicate.rb +1 -1
- data/lib/rubocop/cop/internal_affairs/offense_location_keyword.rb +1 -1
- 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/internal_affairs/useless_message_assertion.rb +1 -1
- data/lib/rubocop/cop/layout/access_modifier_indentation.rb +2 -2
- data/lib/rubocop/cop/layout/align_arguments.rb +2 -2
- data/lib/rubocop/cop/layout/align_array.rb +1 -1
- data/lib/rubocop/cop/layout/align_hash.rb +3 -3
- data/lib/rubocop/cop/layout/align_parameters.rb +2 -2
- data/lib/rubocop/cop/layout/block_alignment.rb +4 -4
- data/lib/rubocop/cop/layout/block_end_newline.rb +0 -1
- data/lib/rubocop/cop/layout/case_indentation.rb +1 -1
- data/lib/rubocop/cop/layout/class_structure.rb +2 -2
- data/lib/rubocop/cop/layout/closing_heredoc_indentation.rb +4 -4
- data/lib/rubocop/cop/layout/closing_parenthesis_indentation.rb +3 -3
- data/lib/rubocop/cop/layout/comment_indentation.rb +1 -1
- data/lib/rubocop/cop/layout/condition_position.rb +1 -1
- data/lib/rubocop/cop/layout/def_end_alignment.rb +1 -1
- data/lib/rubocop/cop/layout/else_alignment.rb +2 -2
- data/lib/rubocop/cop/layout/empty_comment.rb +1 -1
- data/lib/rubocop/cop/layout/empty_line_after_guard_clause.rb +5 -5
- data/lib/rubocop/cop/layout/empty_line_after_magic_comment.rb +1 -1
- data/lib/rubocop/cop/layout/empty_line_between_defs.rb +2 -2
- data/lib/rubocop/cop/layout/empty_lines.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_access_modifier.rb +2 -2
- data/lib/rubocop/cop/layout/empty_lines_around_arguments.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_begin_body.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_block_body.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_class_body.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_exception_handling_keywords.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_method_body.rb +1 -1
- data/lib/rubocop/cop/layout/empty_lines_around_module_body.rb +1 -1
- data/lib/rubocop/cop/layout/end_of_line.rb +2 -2
- data/lib/rubocop/cop/layout/extra_spacing.rb +5 -5
- data/lib/rubocop/cop/layout/first_array_element_line_break.rb +1 -1
- data/lib/rubocop/cop/layout/first_hash_element_line_break.rb +1 -1
- data/lib/rubocop/cop/layout/first_method_argument_line_break.rb +1 -1
- data/lib/rubocop/cop/layout/first_method_parameter_line_break.rb +1 -1
- data/lib/rubocop/cop/layout/heredoc_argument_closing_parenthesis.rb +3 -10
- data/lib/rubocop/cop/layout/indent_assignment.rb +1 -1
- data/lib/rubocop/cop/layout/indent_first_argument.rb +1 -1
- data/lib/rubocop/cop/layout/indent_first_array_element.rb +1 -1
- data/lib/rubocop/cop/layout/indent_first_hash_element.rb +1 -1
- data/lib/rubocop/cop/layout/indent_first_parameter.rb +2 -2
- data/lib/rubocop/cop/layout/indent_heredoc.rb +9 -47
- data/lib/rubocop/cop/layout/indentation_consistency.rb +1 -1
- data/lib/rubocop/cop/layout/indentation_width.rb +2 -2
- data/lib/rubocop/cop/layout/initial_indentation.rb +1 -1
- data/lib/rubocop/cop/layout/leading_blank_lines.rb +1 -1
- data/lib/rubocop/cop/layout/leading_comment_space.rb +1 -1
- data/lib/rubocop/cop/layout/multiline_array_brace_layout.rb +4 -4
- data/lib/rubocop/cop/layout/multiline_array_line_breaks.rb +1 -1
- data/lib/rubocop/cop/layout/multiline_assignment_layout.rb +2 -2
- data/lib/rubocop/cop/layout/multiline_block_layout.rb +2 -2
- data/lib/rubocop/cop/layout/multiline_hash_brace_layout.rb +4 -4
- data/lib/rubocop/cop/layout/multiline_hash_key_line_breaks.rb +1 -1
- data/lib/rubocop/cop/layout/multiline_method_argument_line_breaks.rb +1 -1
- data/lib/rubocop/cop/layout/multiline_method_call_brace_layout.rb +4 -4
- data/lib/rubocop/cop/layout/multiline_method_call_indentation.rb +2 -2
- data/lib/rubocop/cop/layout/multiline_method_definition_brace_layout.rb +4 -4
- data/lib/rubocop/cop/layout/rescue_ensure_alignment.rb +2 -2
- data/lib/rubocop/cop/layout/space_after_colon.rb +1 -1
- data/lib/rubocop/cop/layout/space_after_method_name.rb +2 -2
- data/lib/rubocop/cop/layout/space_after_not.rb +1 -1
- data/lib/rubocop/cop/layout/space_around_equals_in_parameter_default.rb +1 -1
- data/lib/rubocop/cop/layout/space_around_keyword.rb +9 -9
- data/lib/rubocop/cop/layout/space_around_operators.rb +1 -1
- data/lib/rubocop/cop/layout/space_before_block_braces.rb +2 -2
- data/lib/rubocop/cop/layout/space_before_comment.rb +1 -1
- data/lib/rubocop/cop/layout/space_before_first_arg.rb +1 -1
- data/lib/rubocop/cop/layout/space_in_lambda_literal.rb +4 -3
- data/lib/rubocop/cop/layout/space_inside_array_literal_brackets.rb +2 -2
- data/lib/rubocop/cop/layout/space_inside_array_percent_literal.rb +1 -1
- data/lib/rubocop/cop/layout/space_inside_block_braces.rb +1 -1
- data/lib/rubocop/cop/layout/space_inside_hash_literal_braces.rb +1 -1
- data/lib/rubocop/cop/layout/space_inside_parens.rb +2 -2
- data/lib/rubocop/cop/layout/space_inside_percent_literal_delimiters.rb +1 -1
- data/lib/rubocop/cop/layout/space_inside_range_literal.rb +1 -1
- data/lib/rubocop/cop/layout/space_inside_reference_brackets.rb +2 -2
- data/lib/rubocop/cop/layout/space_inside_string_interpolation.rb +2 -2
- data/lib/rubocop/cop/layout/tab.rb +1 -1
- data/lib/rubocop/cop/layout/trailing_blank_lines.rb +1 -1
- data/lib/rubocop/cop/layout/trailing_whitespace.rb +1 -1
- data/lib/rubocop/cop/lint/ambiguous_block_association.rb +1 -1
- data/lib/rubocop/cop/lint/ambiguous_operator.rb +1 -1
- data/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb +1 -1
- data/lib/rubocop/cop/lint/assignment_in_condition.rb +2 -2
- data/lib/rubocop/cop/lint/big_decimal_new.rb +1 -1
- data/lib/rubocop/cop/lint/boolean_symbol.rb +1 -1
- data/lib/rubocop/cop/lint/circular_argument_reference.rb +1 -1
- data/lib/rubocop/cop/lint/debugger.rb +1 -1
- data/lib/rubocop/cop/lint/deprecated_class_methods.rb +1 -1
- data/lib/rubocop/cop/lint/disjunctive_assignment_in_constructor.rb +1 -1
- data/lib/rubocop/cop/lint/duplicate_case_condition.rb +1 -1
- data/lib/rubocop/cop/lint/duplicate_methods.rb +1 -1
- data/lib/rubocop/cop/lint/duplicated_key.rb +1 -1
- data/lib/rubocop/cop/lint/each_with_object_argument.rb +1 -1
- data/lib/rubocop/cop/lint/else_layout.rb +1 -1
- data/lib/rubocop/cop/lint/empty_ensure.rb +1 -1
- data/lib/rubocop/cop/lint/empty_expression.rb +1 -1
- data/lib/rubocop/cop/lint/empty_interpolation.rb +1 -1
- data/lib/rubocop/cop/lint/empty_when.rb +1 -1
- data/lib/rubocop/cop/lint/end_in_method.rb +1 -1
- data/lib/rubocop/cop/lint/ensure_return.rb +1 -1
- data/lib/rubocop/cop/lint/flip_flop.rb +1 -1
- data/lib/rubocop/cop/lint/float_out_of_range.rb +1 -1
- data/lib/rubocop/cop/lint/format_parameter_mismatch.rb +7 -8
- data/lib/rubocop/cop/lint/handle_exceptions.rb +1 -1
- data/lib/rubocop/cop/lint/heredoc_method_call_position.rb +5 -6
- data/lib/rubocop/cop/lint/implicit_string_concatenation.rb +5 -5
- data/lib/rubocop/cop/lint/ineffective_access_modifier.rb +4 -4
- data/lib/rubocop/cop/lint/inherit_exception.rb +22 -1
- data/lib/rubocop/cop/lint/interpolation_check.rb +1 -1
- data/lib/rubocop/cop/lint/literal_as_condition.rb +1 -1
- data/lib/rubocop/cop/lint/literal_in_interpolation.rb +1 -1
- data/lib/rubocop/cop/lint/loop.rb +1 -1
- data/lib/rubocop/cop/lint/missing_cop_enable_directive.rb +2 -2
- data/lib/rubocop/cop/lint/multiple_compare.rb +1 -1
- data/lib/rubocop/cop/lint/nested_method_definition.rb +1 -1
- data/lib/rubocop/cop/lint/nested_percent_literal.rb +1 -1
- data/lib/rubocop/cop/lint/next_without_accumulator.rb +1 -1
- data/lib/rubocop/cop/lint/non_local_exit_from_iterator.rb +1 -1
- data/lib/rubocop/cop/lint/number_conversion.rb +16 -1
- data/lib/rubocop/cop/lint/ordered_magic_comments.rb +1 -1
- data/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +2 -2
- data/lib/rubocop/cop/lint/percent_string_array.rb +1 -1
- data/lib/rubocop/cop/lint/percent_symbol_array.rb +1 -1
- data/lib/rubocop/cop/lint/rand_one.rb +1 -1
- data/lib/rubocop/cop/lint/redundant_with_index.rb +2 -2
- data/lib/rubocop/cop/lint/redundant_with_object.rb +2 -2
- data/lib/rubocop/cop/lint/regexp_as_condition.rb +1 -1
- data/lib/rubocop/cop/lint/require_parentheses.rb +1 -1
- data/lib/rubocop/cop/lint/rescue_exception.rb +1 -1
- data/lib/rubocop/cop/lint/rescue_type.rb +1 -1
- data/lib/rubocop/cop/lint/return_in_void_context.rb +2 -2
- data/lib/rubocop/cop/lint/safe_navigation_chain.rb +1 -4
- data/lib/rubocop/cop/lint/safe_navigation_consistency.rb +2 -2
- data/lib/rubocop/cop/lint/safe_navigation_with_empty.rb +1 -1
- data/lib/rubocop/cop/lint/script_permission.rb +2 -2
- data/lib/rubocop/cop/lint/shadowed_argument.rb +1 -1
- data/lib/rubocop/cop/lint/shadowed_exception.rb +1 -1
- data/lib/rubocop/cop/lint/shadowing_outer_local_variable.rb +1 -1
- data/lib/rubocop/cop/lint/string_conversion_in_interpolation.rb +2 -2
- data/lib/rubocop/cop/lint/to_json.rb +1 -1
- data/lib/rubocop/cop/lint/underscore_prefixed_variable_name.rb +1 -1
- data/lib/rubocop/cop/lint/unified_integer.rb +3 -1
- data/lib/rubocop/cop/lint/unneeded_cop_disable_directive.rb +1 -1
- data/lib/rubocop/cop/lint/unneeded_cop_enable_directive.rb +1 -1
- data/lib/rubocop/cop/lint/unneeded_require_statement.rb +1 -1
- data/lib/rubocop/cop/lint/unneeded_splat_expansion.rb +7 -7
- data/lib/rubocop/cop/lint/unreachable_code.rb +1 -1
- data/lib/rubocop/cop/lint/unused_method_argument.rb +1 -1
- data/lib/rubocop/cop/lint/uri_escape_unescape.rb +1 -1
- data/lib/rubocop/cop/lint/uri_regexp.rb +1 -1
- data/lib/rubocop/cop/lint/useless_access_modifier.rb +1 -1
- data/lib/rubocop/cop/lint/useless_assignment.rb +1 -1
- data/lib/rubocop/cop/lint/useless_comparison.rb +1 -1
- data/lib/rubocop/cop/lint/useless_else_without_rescue.rb +1 -1
- data/lib/rubocop/cop/lint/useless_setter_call.rb +1 -1
- data/lib/rubocop/cop/lint/void.rb +6 -6
- data/lib/rubocop/cop/metrics/abc_size.rb +1 -1
- data/lib/rubocop/cop/metrics/block_length.rb +2 -2
- data/lib/rubocop/cop/metrics/cyclomatic_complexity.rb +1 -1
- data/lib/rubocop/cop/metrics/line_length.rb +1 -1
- data/lib/rubocop/cop/metrics/method_length.rb +1 -1
- data/lib/rubocop/cop/metrics/parameter_lists.rb +1 -1
- data/lib/rubocop/cop/metrics/perceived_complexity.rb +1 -1
- data/lib/rubocop/cop/mixin/alignment.rb +1 -1
- data/lib/rubocop/cop/mixin/check_assignment.rb +1 -1
- data/lib/rubocop/cop/mixin/empty_lines_around_body.rb +3 -3
- data/lib/rubocop/cop/mixin/end_keyword_alignment.rb +1 -1
- data/lib/rubocop/cop/mixin/frozen_string_literal.rb +3 -4
- data/lib/rubocop/cop/mixin/min_body_length.rb +1 -1
- data/lib/rubocop/cop/mixin/multiline_expression_indentation.rb +4 -4
- data/lib/rubocop/cop/mixin/negative_conditional.rb +1 -1
- data/lib/rubocop/cop/mixin/percent_array.rb +2 -2
- data/lib/rubocop/cop/mixin/range_help.rb +1 -1
- data/lib/rubocop/cop/mixin/rescue_node.rb +1 -2
- data/lib/rubocop/cop/mixin/safe_mode.rb +1 -1
- data/lib/rubocop/cop/mixin/space_after_punctuation.rb +1 -1
- data/lib/rubocop/cop/mixin/space_before_punctuation.rb +1 -1
- data/lib/rubocop/cop/mixin/surrounding_space.rb +3 -3
- data/lib/rubocop/cop/mixin/too_many_lines.rb +2 -2
- data/lib/rubocop/cop/mixin/trailing_comma.rb +1 -1
- data/lib/rubocop/cop/mixin/uncommunicative_name.rb +4 -4
- data/lib/rubocop/cop/naming/accessor_method_name.rb +2 -2
- data/lib/rubocop/cop/naming/ascii_identifiers.rb +1 -1
- data/lib/rubocop/cop/naming/binary_operator_parameter_name.rb +1 -1
- data/lib/rubocop/cop/naming/class_and_module_camel_case.rb +1 -1
- data/lib/rubocop/cop/naming/constant_name.rb +4 -4
- data/lib/rubocop/cop/naming/file_name.rb +3 -3
- data/lib/rubocop/cop/naming/heredoc_delimiter_case.rb +1 -1
- data/lib/rubocop/cop/naming/heredoc_delimiter_naming.rb +1 -1
- data/lib/rubocop/cop/naming/memoized_instance_variable_name.rb +2 -2
- data/lib/rubocop/cop/naming/method_name.rb +1 -1
- data/lib/rubocop/cop/naming/rescued_exceptions_variable_name.rb +1 -1
- data/lib/rubocop/cop/naming/variable_name.rb +1 -1
- data/lib/rubocop/cop/naming/variable_number.rb +1 -1
- data/lib/rubocop/cop/rails/action_filter.rb +1 -1
- data/lib/rubocop/cop/rails/active_record_aliases.rb +1 -1
- data/lib/rubocop/cop/rails/active_record_override.rb +1 -1
- data/lib/rubocop/cop/rails/active_support_aliases.rb +1 -1
- data/lib/rubocop/cop/rails/application_job.rb +3 -3
- data/lib/rubocop/cop/rails/application_record.rb +3 -3
- data/lib/rubocop/cop/rails/assert_not.rb +1 -1
- data/lib/rubocop/cop/rails/belongs_to.rb +2 -2
- data/lib/rubocop/cop/rails/blank.rb +3 -3
- data/lib/rubocop/cop/rails/bulk_change_table.rb +4 -4
- data/lib/rubocop/cop/rails/create_table_with_timestamps.rb +1 -1
- data/lib/rubocop/cop/rails/date.rb +11 -6
- data/lib/rubocop/cop/rails/delegate.rb +1 -1
- data/lib/rubocop/cop/rails/delegate_allow_blank.rb +1 -1
- data/lib/rubocop/cop/rails/dynamic_find_by.rb +1 -1
- data/lib/rubocop/cop/rails/enum_uniqueness.rb +1 -1
- data/lib/rubocop/cop/rails/environment_comparison.rb +2 -2
- data/lib/rubocop/cop/rails/exit.rb +1 -1
- data/lib/rubocop/cop/rails/file_path.rb +2 -2
- data/lib/rubocop/cop/rails/find_by.rb +1 -1
- data/lib/rubocop/cop/rails/find_each.rb +2 -3
- data/lib/rubocop/cop/rails/has_and_belongs_to_many.rb +1 -1
- data/lib/rubocop/cop/rails/has_many_or_has_one_dependent.rb +1 -1
- data/lib/rubocop/cop/rails/http_positional_arguments.rb +1 -1
- data/lib/rubocop/cop/rails/http_status.rb +4 -4
- data/lib/rubocop/cop/rails/ignored_skip_action_filter_option.rb +1 -1
- data/lib/rubocop/cop/rails/inverse_of.rb +2 -2
- data/lib/rubocop/cop/rails/lexically_scoped_action_filter.rb +1 -1
- data/lib/rubocop/cop/rails/link_to_blank.rb +9 -2
- data/lib/rubocop/cop/rails/not_null_column.rb +1 -1
- data/lib/rubocop/cop/rails/output.rb +1 -1
- data/lib/rubocop/cop/rails/output_safety.rb +2 -2
- data/lib/rubocop/cop/rails/pluralization_grammar.rb +1 -1
- data/lib/rubocop/cop/rails/presence.rb +1 -1
- data/lib/rubocop/cop/rails/present.rb +3 -3
- data/lib/rubocop/cop/rails/read_write_attribute.rb +1 -1
- data/lib/rubocop/cop/rails/redundant_allow_nil.rb +2 -2
- data/lib/rubocop/cop/rails/redundant_receiver_in_with_options.rb +1 -1
- data/lib/rubocop/cop/rails/reflection_class_name.rb +1 -1
- data/lib/rubocop/cop/rails/refute_methods.rb +1 -1
- data/lib/rubocop/cop/rails/relative_date_constant.rb +2 -2
- data/lib/rubocop/cop/rails/request_referer.rb +1 -1
- data/lib/rubocop/cop/rails/reversible_migration.rb +4 -4
- data/lib/rubocop/cop/rails/safe_navigation.rb +2 -6
- data/lib/rubocop/cop/rails/save_bang.rb +8 -8
- data/lib/rubocop/cop/rails/scope_args.rb +1 -1
- data/lib/rubocop/cop/rails/skips_model_validations.rb +1 -1
- data/lib/rubocop/cop/rails/time_zone.rb +53 -39
- data/lib/rubocop/cop/rails/uniq_before_pluck.rb +3 -3
- data/lib/rubocop/cop/rails/unknown_env.rb +2 -2
- data/lib/rubocop/cop/rails/validation.rb +1 -1
- data/lib/rubocop/cop/registry.rb +1 -1
- data/lib/rubocop/cop/security/eval.rb +1 -1
- data/lib/rubocop/cop/security/json_load.rb +1 -1
- data/lib/rubocop/cop/security/marshal_load.rb +1 -1
- data/lib/rubocop/cop/security/open.rb +1 -1
- data/lib/rubocop/cop/security/yaml_load.rb +1 -1
- data/lib/rubocop/cop/style/alias.rb +3 -3
- data/lib/rubocop/cop/style/and_or.rb +1 -1
- data/lib/rubocop/cop/style/array_join.rb +1 -1
- data/lib/rubocop/cop/style/ascii_comments.rb +1 -1
- data/lib/rubocop/cop/style/attr.rb +1 -1
- data/lib/rubocop/cop/style/auto_resource_cleanup.rb +1 -1
- data/lib/rubocop/cop/style/bare_percent_literals.rb +1 -1
- data/lib/rubocop/cop/style/begin_block.rb +1 -1
- data/lib/rubocop/cop/style/block_comments.rb +1 -1
- data/lib/rubocop/cop/style/block_delimiters.rb +0 -1
- data/lib/rubocop/cop/style/braces_around_hash_parameters.rb +1 -1
- data/lib/rubocop/cop/style/case_equality.rb +1 -1
- data/lib/rubocop/cop/style/character_literal.rb +1 -1
- data/lib/rubocop/cop/style/class_and_module_children.rb +5 -5
- data/lib/rubocop/cop/style/class_check.rb +1 -1
- data/lib/rubocop/cop/style/class_methods.rb +1 -1
- data/lib/rubocop/cop/style/class_vars.rb +1 -1
- data/lib/rubocop/cop/style/collection_methods.rb +1 -1
- data/lib/rubocop/cop/style/colon_method_call.rb +1 -1
- data/lib/rubocop/cop/style/colon_method_definition.rb +1 -1
- data/lib/rubocop/cop/style/command_literal.rb +2 -2
- data/lib/rubocop/cop/style/comment_annotation.rb +2 -2
- data/lib/rubocop/cop/style/commented_keyword.rb +1 -1
- data/lib/rubocop/cop/style/conditional_assignment.rb +14 -14
- data/lib/rubocop/cop/style/constant_visibility.rb +1 -1
- data/lib/rubocop/cop/style/copyright.rb +2 -2
- data/lib/rubocop/cop/style/date_time.rb +2 -2
- data/lib/rubocop/cop/style/def_with_parentheses.rb +1 -1
- data/lib/rubocop/cop/style/dir.rb +1 -1
- data/lib/rubocop/cop/style/documentation.rb +2 -2
- data/lib/rubocop/cop/style/documentation_method.rb +1 -1
- data/lib/rubocop/cop/style/double_negation.rb +1 -1
- data/lib/rubocop/cop/style/each_for_simple_loop.rb +1 -1
- data/lib/rubocop/cop/style/each_with_object.rb +3 -3
- data/lib/rubocop/cop/style/empty_block_parameter.rb +1 -1
- data/lib/rubocop/cop/style/empty_case_condition.rb +1 -1
- data/lib/rubocop/cop/style/empty_else.rb +2 -2
- data/lib/rubocop/cop/style/empty_lambda_parameter.rb +1 -1
- data/lib/rubocop/cop/style/empty_literal.rb +3 -3
- data/lib/rubocop/cop/style/empty_method.rb +2 -2
- data/lib/rubocop/cop/style/encoding.rb +2 -2
- data/lib/rubocop/cop/style/end_block.rb +1 -1
- data/lib/rubocop/cop/style/eval_with_location.rb +3 -3
- data/lib/rubocop/cop/style/even_odd.rb +1 -1
- data/lib/rubocop/cop/style/expand_path_arguments.rb +3 -3
- data/lib/rubocop/cop/style/for.rb +2 -2
- data/lib/rubocop/cop/style/format_string.rb +1 -1
- data/lib/rubocop/cop/style/frozen_string_literal_comment.rb +5 -21
- data/lib/rubocop/cop/style/global_vars.rb +1 -1
- data/lib/rubocop/cop/style/guard_clause.rb +3 -3
- data/lib/rubocop/cop/style/hash_syntax.rb +3 -3
- data/lib/rubocop/cop/style/identical_conditional_branches.rb +1 -1
- data/lib/rubocop/cop/style/if_inside_else.rb +2 -2
- data/lib/rubocop/cop/style/if_unless_modifier.rb +1 -1
- data/lib/rubocop/cop/style/if_unless_modifier_of_if_unless.rb +1 -1
- data/lib/rubocop/cop/style/if_with_semicolon.rb +2 -2
- data/lib/rubocop/cop/style/implicit_runtime_error.rb +1 -1
- data/lib/rubocop/cop/style/infinite_loop.rb +1 -1
- data/lib/rubocop/cop/style/inline_comment.rb +1 -1
- data/lib/rubocop/cop/style/inverse_methods.rb +7 -1
- data/lib/rubocop/cop/style/ip_addresses.rb +1 -1
- data/lib/rubocop/cop/style/lambda.rb +2 -2
- data/lib/rubocop/cop/style/line_end_concatenation.rb +2 -2
- data/lib/rubocop/cop/style/method_call_with_args_parentheses.rb +3 -3
- data/lib/rubocop/cop/style/method_call_without_args_parentheses.rb +1 -1
- data/lib/rubocop/cop/style/method_called_on_do_end_block.rb +2 -2
- data/lib/rubocop/cop/style/method_def_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/method_missing_super.rb +1 -1
- data/lib/rubocop/cop/style/min_max.rb +1 -1
- data/lib/rubocop/cop/style/missing_else.rb +3 -3
- data/lib/rubocop/cop/style/missing_respond_to_missing.rb +1 -1
- data/lib/rubocop/cop/style/mixin_grouping.rb +1 -1
- data/lib/rubocop/cop/style/mixin_usage.rb +1 -1
- data/lib/rubocop/cop/style/module_function.rb +3 -3
- data/lib/rubocop/cop/style/multiline_block_chain.rb +2 -2
- data/lib/rubocop/cop/style/multiline_if_modifier.rb +1 -1
- data/lib/rubocop/cop/style/multiline_if_then.rb +1 -1
- data/lib/rubocop/cop/style/multiline_memoization.rb +1 -1
- data/lib/rubocop/cop/style/multiline_method_signature.rb +1 -1
- data/lib/rubocop/cop/style/multiline_ternary_operator.rb +1 -1
- data/lib/rubocop/cop/style/multiple_comparison.rb +1 -1
- data/lib/rubocop/cop/style/mutable_constant.rb +3 -3
- data/lib/rubocop/cop/style/negated_if.rb +1 -1
- data/lib/rubocop/cop/style/negated_unless.rb +89 -0
- data/lib/rubocop/cop/style/nested_modifier.rb +4 -4
- data/lib/rubocop/cop/style/nested_parenthesized_calls.rb +1 -1
- data/lib/rubocop/cop/style/nested_ternary_operator.rb +1 -1
- data/lib/rubocop/cop/style/next.rb +5 -5
- data/lib/rubocop/cop/style/nil_comparison.rb +2 -2
- data/lib/rubocop/cop/style/not.rb +1 -1
- data/lib/rubocop/cop/style/numeric_literal_prefix.rb +5 -5
- data/lib/rubocop/cop/style/numeric_literals.rb +2 -2
- data/lib/rubocop/cop/style/numeric_predicate.rb +2 -10
- data/lib/rubocop/cop/style/one_line_conditional.rb +1 -1
- data/lib/rubocop/cop/style/option_hash.rb +1 -1
- data/lib/rubocop/cop/style/optional_arguments.rb +1 -1
- data/lib/rubocop/cop/style/or_assignment.rb +1 -1
- data/lib/rubocop/cop/style/parallel_assignment.rb +2 -2
- data/lib/rubocop/cop/style/percent_q_literals.rb +2 -2
- data/lib/rubocop/cop/style/perl_backrefs.rb +1 -1
- data/lib/rubocop/cop/style/preferred_hash_methods.rb +1 -1
- data/lib/rubocop/cop/style/proc.rb +1 -1
- data/lib/rubocop/cop/style/raise_args.rb +2 -2
- data/lib/rubocop/cop/style/random_with_offset.rb +1 -1
- data/lib/rubocop/cop/style/redundant_begin.rb +2 -2
- data/lib/rubocop/cop/style/redundant_conditional.rb +1 -1
- data/lib/rubocop/cop/style/redundant_exception.rb +2 -2
- data/lib/rubocop/cop/style/redundant_freeze.rb +1 -1
- data/lib/rubocop/cop/style/redundant_parentheses.rb +6 -6
- data/lib/rubocop/cop/style/redundant_return.rb +3 -3
- data/lib/rubocop/cop/style/redundant_self.rb +2 -2
- data/lib/rubocop/cop/style/redundant_sort_by.rb +1 -1
- data/lib/rubocop/cop/style/regexp_literal.rb +2 -2
- data/lib/rubocop/cop/style/rescue_modifier.rb +1 -1
- data/lib/rubocop/cop/style/rescue_standard_error.rb +2 -2
- data/lib/rubocop/cop/style/return_nil.rb +2 -2
- data/lib/rubocop/cop/style/safe_navigation.rb +2 -7
- data/lib/rubocop/cop/style/sample.rb +1 -1
- data/lib/rubocop/cop/style/self_assignment.rb +1 -1
- data/lib/rubocop/cop/style/semicolon.rb +1 -1
- data/lib/rubocop/cop/style/send.rb +1 -1
- data/lib/rubocop/cop/style/signal_exception.rb +2 -2
- data/lib/rubocop/cop/style/single_line_block_params.rb +1 -1
- data/lib/rubocop/cop/style/single_line_methods.rb +1 -1
- data/lib/rubocop/cop/style/special_global_vars.rb +5 -5
- data/lib/rubocop/cop/style/stabby_lambda_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/stderr_puts.rb +0 -1
- data/lib/rubocop/cop/style/string_hash_keys.rb +2 -1
- data/lib/rubocop/cop/style/string_literals.rb +1 -1
- data/lib/rubocop/cop/style/string_methods.rb +1 -1
- data/lib/rubocop/cop/style/strip.rb +1 -1
- data/lib/rubocop/cop/style/struct_inheritance.rb +1 -1
- data/lib/rubocop/cop/style/symbol_array.rb +2 -2
- data/lib/rubocop/cop/style/symbol_literal.rb +1 -1
- data/lib/rubocop/cop/style/symbol_proc.rb +1 -1
- data/lib/rubocop/cop/style/ternary_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/trailing_body_on_class.rb +1 -1
- data/lib/rubocop/cop/style/trailing_body_on_method_definition.rb +1 -1
- data/lib/rubocop/cop/style/trailing_body_on_module.rb +1 -1
- data/lib/rubocop/cop/style/trailing_method_end_statement.rb +1 -1
- data/lib/rubocop/cop/style/trailing_underscore_variable.rb +2 -2
- data/lib/rubocop/cop/style/trivial_accessors.rb +2 -2
- data/lib/rubocop/cop/style/unless_else.rb +2 -2
- data/lib/rubocop/cop/style/unneeded_capital_w.rb +1 -1
- data/lib/rubocop/cop/style/unneeded_condition.rb +4 -4
- data/lib/rubocop/cop/style/unneeded_interpolation.rb +3 -3
- data/lib/rubocop/cop/style/unneeded_percent_q.rb +7 -7
- data/lib/rubocop/cop/style/unneeded_sort.rb +2 -2
- data/lib/rubocop/cop/style/unpack_first.rb +1 -1
- data/lib/rubocop/cop/style/variable_interpolation.rb +1 -1
- data/lib/rubocop/cop/style/when_then.rb +1 -1
- data/lib/rubocop/cop/style/while_until_do.rb +1 -1
- data/lib/rubocop/cop/style/while_until_modifier.rb +1 -1
- data/lib/rubocop/cop/style/word_array.rb +2 -2
- data/lib/rubocop/cop/style/yoda_condition.rb +1 -1
- data/lib/rubocop/cop/style/zero_length_predicate.rb +2 -2
- data/lib/rubocop/cop/util.rb +2 -2
- data/lib/rubocop/cop/variable_force/variable_table.rb +1 -1
- data/lib/rubocop/core_ext/string.rb +1 -1
- data/lib/rubocop/formatter/clang_style_formatter.rb +1 -1
- data/lib/rubocop/formatter/disabled_config_formatter.rb +2 -2
- data/lib/rubocop/formatter/fuubar_style_formatter.rb +1 -1
- data/lib/rubocop/formatter/html_formatter.rb +1 -1
- data/lib/rubocop/formatter/progress_formatter.rb +1 -1
- data/lib/rubocop/formatter/simple_text_formatter.rb +1 -1
- data/lib/rubocop/magic_comment.rb +4 -4
- data/lib/rubocop/node_pattern.rb +9 -9
- data/lib/rubocop/options.rb +2 -2
- data/lib/rubocop/processed_source.rb +3 -5
- data/lib/rubocop/rspec/cop_helper.rb +2 -2
- data/lib/rubocop/rspec/expect_offense.rb +5 -5
- data/lib/rubocop/rspec/shared_contexts.rb +0 -4
- data/lib/rubocop/runner.rb +1 -1
- data/lib/rubocop/string_interpreter.rb +7 -7
- data/lib/rubocop/version.rb +2 -2
- metadata +11 -16
@@ -26,7 +26,7 @@ module RuboCop
|
|
26
26
|
class ClassCheck < Cop
|
27
27
|
include ConfigurableEnforcedStyle
|
28
28
|
|
29
|
-
MSG = 'Prefer `Object#%<prefer>s` over `Object#%<current>s`.'
|
29
|
+
MSG = 'Prefer `Object#%<prefer>s` over `Object#%<current>s`.'
|
30
30
|
|
31
31
|
def_node_matcher :class_check?, '(send _ ${:is_a? :kind_of?} _)'
|
32
32
|
|
@@ -78,8 +78,8 @@ module RuboCop
|
|
78
78
|
class CommandLiteral < Cop
|
79
79
|
include ConfigurableEnforcedStyle
|
80
80
|
|
81
|
-
MSG_USE_BACKTICKS = 'Use backticks around command string.'
|
82
|
-
MSG_USE_PERCENT_X = 'Use `%x` around command string.'
|
81
|
+
MSG_USE_BACKTICKS = 'Use backticks around command string.'
|
82
|
+
MSG_USE_PERCENT_X = 'Use `%x` around command string.'
|
83
83
|
|
84
84
|
def on_xstr(node)
|
85
85
|
return if node.heredoc?
|
@@ -36,9 +36,9 @@ module RuboCop
|
|
36
36
|
|
37
37
|
MSG = 'Annotation keywords like `%<keyword>s` should be all ' \
|
38
38
|
'upper case, followed by a colon, and a space, ' \
|
39
|
-
'then a note describing the problem.'
|
39
|
+
'then a note describing the problem.'
|
40
40
|
MISSING_NOTE = 'Annotation comment, with keyword `%<keyword>s`, ' \
|
41
|
-
'is missing a note.'
|
41
|
+
'is missing a note.'
|
42
42
|
|
43
43
|
def investigate(processed_source)
|
44
44
|
processed_source.comments.each_with_index do |comment, index|
|
@@ -36,7 +36,7 @@ module RuboCop
|
|
36
36
|
include RangeHelp
|
37
37
|
|
38
38
|
MSG = 'Do not place comments on the same line as the ' \
|
39
|
-
'`%<keyword>s` keyword.'
|
39
|
+
'`%<keyword>s` keyword.'
|
40
40
|
|
41
41
|
def investigate(processed_source)
|
42
42
|
heredoc_lines = extract_heredoc_lines(processed_source.ast)
|
@@ -8,10 +8,10 @@ module RuboCop
|
|
8
8
|
module ConditionalAssignmentHelper
|
9
9
|
extend NodePattern::Macros
|
10
10
|
|
11
|
-
EQUAL = '='
|
12
|
-
END_ALIGNMENT = 'Layout/EndAlignment'
|
13
|
-
ALIGN_WITH = 'EnforcedStyleAlignWith'
|
14
|
-
KEYWORD = 'keyword'
|
11
|
+
EQUAL = '='
|
12
|
+
END_ALIGNMENT = 'Layout/EndAlignment'
|
13
|
+
ALIGN_WITH = 'EnforcedStyleAlignWith'
|
14
|
+
KEYWORD = 'keyword'
|
15
15
|
|
16
16
|
# `elsif` branches show up in the `node` as an `else`. We need
|
17
17
|
# to recursively iterate over all `else` branches and consider all
|
@@ -72,7 +72,7 @@ module RuboCop
|
|
72
72
|
|
73
73
|
elsif_branches << node.if_branch
|
74
74
|
|
75
|
-
if node.else_branch
|
75
|
+
if node.else_branch&.if_type?
|
76
76
|
expand_elsif(node.else_branch, elsif_branches)
|
77
77
|
else
|
78
78
|
elsif_branches << node.else_branch
|
@@ -205,19 +205,19 @@ module RuboCop
|
|
205
205
|
include IgnoredNode
|
206
206
|
|
207
207
|
MSG = 'Use the return of the conditional for variable assignment ' \
|
208
|
-
'and comparison.'
|
208
|
+
'and comparison.'
|
209
209
|
ASSIGN_TO_CONDITION_MSG =
|
210
|
-
'Assign variables inside of conditionals'
|
210
|
+
'Assign variables inside of conditionals'
|
211
211
|
VARIABLE_ASSIGNMENT_TYPES =
|
212
212
|
%i[casgn cvasgn gvasgn ivasgn lvasgn].freeze
|
213
213
|
ASSIGNMENT_TYPES = VARIABLE_ASSIGNMENT_TYPES +
|
214
214
|
%i[and_asgn or_asgn op_asgn masgn].freeze
|
215
|
-
LINE_LENGTH = 'Metrics/LineLength'
|
216
|
-
INDENTATION_WIDTH = 'Layout/IndentationWidth'
|
217
|
-
ENABLED = 'Enabled'
|
218
|
-
MAX = 'Max'
|
219
|
-
SINGLE_LINE_CONDITIONS_ONLY = 'SingleLineConditionsOnly'
|
220
|
-
WIDTH = 'Width'
|
215
|
+
LINE_LENGTH = 'Metrics/LineLength'
|
216
|
+
INDENTATION_WIDTH = 'Layout/IndentationWidth'
|
217
|
+
ENABLED = 'Enabled'
|
218
|
+
MAX = 'Max'
|
219
|
+
SINGLE_LINE_CONDITIONS_ONLY = 'SingleLineConditionsOnly'
|
220
|
+
WIDTH = 'Width'
|
221
221
|
|
222
222
|
def_node_matcher :condition?, '{if case}'
|
223
223
|
|
@@ -312,7 +312,7 @@ module RuboCop
|
|
312
312
|
*_variable, assignment = *node
|
313
313
|
|
314
314
|
# ignore pseudo-assignments without rhs in for nodes
|
315
|
-
return if node.parent
|
315
|
+
return if node.parent&.for_type?
|
316
316
|
|
317
317
|
if assignment.begin_type? && assignment.children.one?
|
318
318
|
assignment, = *assignment
|
@@ -28,7 +28,7 @@ module RuboCop
|
|
28
28
|
#
|
29
29
|
class ConstantVisibility < Cop
|
30
30
|
MSG = 'Explicitly make `%<constant_name>s` public or private using ' \
|
31
|
-
'either `#public_constant` or `#private_constant`.'
|
31
|
+
'either `#public_constant` or `#private_constant`.'
|
32
32
|
|
33
33
|
def on_casgn(node)
|
34
34
|
return unless class_or_module_scope?(node)
|
@@ -19,9 +19,9 @@ module RuboCop
|
|
19
19
|
include RangeHelp
|
20
20
|
|
21
21
|
MSG = 'Include a copyright notice matching /%<notice>s/ before ' \
|
22
|
-
'any code.'
|
22
|
+
'any code.'
|
23
23
|
AUTOCORRECT_EMPTY_WARNING = 'An AutocorrectNotice must be defined in ' \
|
24
|
-
'your RuboCop config'
|
24
|
+
'your RuboCop config'
|
25
25
|
|
26
26
|
def investigate(processed_source)
|
27
27
|
return if notice.empty?
|
@@ -42,8 +42,8 @@ module RuboCop
|
|
42
42
|
# # good
|
43
43
|
# something.to_time
|
44
44
|
class DateTime < Cop
|
45
|
-
CLASS_MSG = 'Prefer Time over DateTime.'
|
46
|
-
COERCION_MSG = 'Do not use #to_datetime.'
|
45
|
+
CLASS_MSG = 'Prefer Time over DateTime.'
|
46
|
+
COERCION_MSG = 'Do not use #to_datetime.'
|
47
47
|
|
48
48
|
def_node_matcher :date_time?, <<-PATTERN
|
49
49
|
(send (const {nil? (cbase)} :DateTime) ...)
|
@@ -18,7 +18,7 @@ module RuboCop
|
|
18
18
|
# path = __dir__
|
19
19
|
class Dir < Cop
|
20
20
|
MSG = 'Use `__dir__` to get an absolute path to the current ' \
|
21
|
-
"file's directory."
|
21
|
+
"file's directory."
|
22
22
|
|
23
23
|
def_node_matcher :dir_replacement?, <<-PATTERN
|
24
24
|
{(send (const nil? :File) :expand_path (send (const nil? :File) :dirname #file_keyword?))
|
@@ -27,7 +27,7 @@ module RuboCop
|
|
27
27
|
class Documentation < Cop
|
28
28
|
include DocumentationComment
|
29
29
|
|
30
|
-
MSG = 'Missing top-level %<type>s documentation comment.'
|
30
|
+
MSG = 'Missing top-level %<type>s documentation comment.'
|
31
31
|
|
32
32
|
def_node_matcher :constant_definition?, '{class module casgn}'
|
33
33
|
def_node_search :outer_module, '(const (const nil? _) _)'
|
@@ -75,7 +75,7 @@ module RuboCop
|
|
75
75
|
# Note: How end-of-line comments are associated with code changed in
|
76
76
|
# parser-2.2.0.4.
|
77
77
|
def nodoc_comment?(node, require_all = false)
|
78
|
-
return false unless node
|
78
|
+
return false unless node&.children&.first
|
79
79
|
|
80
80
|
nodoc = nodoc(node)
|
81
81
|
|
@@ -51,7 +51,7 @@ module RuboCop
|
|
51
51
|
include DocumentationComment
|
52
52
|
include DefNode
|
53
53
|
|
54
|
-
MSG = 'Missing method documentation comment.'
|
54
|
+
MSG = 'Missing method documentation comment.'
|
55
55
|
|
56
56
|
def_node_matcher :module_function_node?, <<-PATTERN
|
57
57
|
(send nil? :module_function ...)
|
@@ -20,7 +20,7 @@ module RuboCop
|
|
20
20
|
# As you're unlikely to write code that can accept values of any type
|
21
21
|
# this is rarely a problem in practice.
|
22
22
|
class DoubleNegation < Cop
|
23
|
-
MSG = 'Avoid the use of double negation (`!!`).'
|
23
|
+
MSG = 'Avoid the use of double negation (`!!`).'
|
24
24
|
|
25
25
|
def_node_matcher :double_negative?, '(send (send _ :!) :!)'
|
26
26
|
|
@@ -19,7 +19,7 @@ module RuboCop
|
|
19
19
|
class EachWithObject < Cop
|
20
20
|
include RangeHelp
|
21
21
|
|
22
|
-
MSG = 'Use `each_with_object` instead of `%<method>s`.'
|
22
|
+
MSG = 'Use `each_with_object` instead of `%<method>s`.'
|
23
23
|
METHODS = %i[inject reduce].freeze
|
24
24
|
|
25
25
|
def_node_matcher :each_with_object_candidate?, <<-PATTERN
|
@@ -65,7 +65,7 @@ module RuboCop
|
|
65
65
|
private
|
66
66
|
|
67
67
|
def simple_method_arg?(method_arg)
|
68
|
-
method_arg
|
68
|
+
method_arg&.basic_literal?
|
69
69
|
end
|
70
70
|
|
71
71
|
# if the accumulator parameter is assigned to in the block,
|
@@ -86,7 +86,7 @@ module RuboCop
|
|
86
86
|
return unless body
|
87
87
|
|
88
88
|
return_value = body.begin_type? ? body.children.last : body
|
89
|
-
return_value if return_value
|
89
|
+
return_value if return_value&.lvar_type?
|
90
90
|
end
|
91
91
|
|
92
92
|
def first_argument_returned?(args, return_value)
|
@@ -94,7 +94,7 @@ module RuboCop
|
|
94
94
|
include ConfigurableEnforcedStyle
|
95
95
|
include RangeHelp
|
96
96
|
|
97
|
-
MSG = 'Redundant `else`-clause.'
|
97
|
+
MSG = 'Redundant `else`-clause.'
|
98
98
|
|
99
99
|
def on_normal_if_unless(node)
|
100
100
|
check(node)
|
@@ -136,7 +136,7 @@ module RuboCop
|
|
136
136
|
end
|
137
137
|
|
138
138
|
def nil_check(node)
|
139
|
-
return unless node.else_branch
|
139
|
+
return unless node.else_branch&.nil_type?
|
140
140
|
|
141
141
|
add_offense(node, location: :else)
|
142
142
|
end
|
@@ -20,10 +20,10 @@ module RuboCop
|
|
20
20
|
include FrozenStringLiteral
|
21
21
|
include RangeHelp
|
22
22
|
|
23
|
-
ARR_MSG = 'Use array literal `[]` instead of `Array.new`.'
|
24
|
-
HASH_MSG = 'Use hash literal `{}` instead of `Hash.new`.'
|
23
|
+
ARR_MSG = 'Use array literal `[]` instead of `Array.new`.'
|
24
|
+
HASH_MSG = 'Use hash literal `{}` instead of `Hash.new`.'
|
25
25
|
STR_MSG = 'Use string literal `%<prefer>s` instead of ' \
|
26
|
-
'`String.new`.'
|
26
|
+
'`String.new`.'
|
27
27
|
|
28
28
|
def_node_matcher :array_node, '(send (const nil? :Array) :new)'
|
29
29
|
def_node_matcher :hash_node, '(send (const nil? :Hash) :new)'
|
@@ -43,9 +43,9 @@ module RuboCop
|
|
43
43
|
class EmptyMethod < Cop
|
44
44
|
include ConfigurableEnforcedStyle
|
45
45
|
|
46
|
-
MSG_COMPACT = 'Put empty method definitions on a single line.'
|
46
|
+
MSG_COMPACT = 'Put empty method definitions on a single line.'
|
47
47
|
MSG_EXPANDED = 'Put the `end` of empty method definitions on the ' \
|
48
|
-
'next line.'
|
48
|
+
'next line.'
|
49
49
|
|
50
50
|
def on_def(node)
|
51
51
|
return if node.body || comment_lines?(node)
|
@@ -12,9 +12,9 @@ module RuboCop
|
|
12
12
|
class Encoding < Cop
|
13
13
|
include RangeHelp
|
14
14
|
|
15
|
-
MSG_UNNECESSARY = 'Unnecessary utf-8 encoding comment.'
|
15
|
+
MSG_UNNECESSARY = 'Unnecessary utf-8 encoding comment.'
|
16
16
|
ENCODING_PATTERN = /#.*coding\s?[:=]\s?(?:UTF|utf)-8/.freeze
|
17
|
-
SHEBANG = '#!'
|
17
|
+
SHEBANG = '#!'
|
18
18
|
|
19
19
|
def investigate(processed_source)
|
20
20
|
return if processed_source.buffer.source.empty?
|
@@ -33,9 +33,9 @@ module RuboCop
|
|
33
33
|
# RUBY
|
34
34
|
class EvalWithLocation < Cop
|
35
35
|
MSG = 'Pass `__FILE__` and `__LINE__` to `eval` method, ' \
|
36
|
-
'as they are used by backtraces.'
|
36
|
+
'as they are used by backtraces.'
|
37
37
|
MSG_INCORRECT_LINE = 'Use `%<expected>s` instead of `%<actual>s`, ' \
|
38
|
-
'as they are used by backtraces.'
|
38
|
+
'as they are used by backtraces.'
|
39
39
|
|
40
40
|
def_node_matcher :eval_without_location?, <<-PATTERN
|
41
41
|
{
|
@@ -133,7 +133,7 @@ module RuboCop
|
|
133
133
|
end
|
134
134
|
|
135
135
|
def add_offense_for_different_line(node, line_node, line_diff)
|
136
|
-
sign = line_diff
|
136
|
+
sign = line_diff.positive? ? :+ : :-
|
137
137
|
return if line_with_offset?(line_node, sign, line_diff.abs)
|
138
138
|
|
139
139
|
add_offense(
|
@@ -44,12 +44,12 @@ module RuboCop
|
|
44
44
|
include RangeHelp
|
45
45
|
|
46
46
|
MSG = 'Use `expand_path(%<new_path>s%<new_default_dir>s)` instead of ' \
|
47
|
-
'`expand_path(%<current_path>s, __FILE__)`.'
|
47
|
+
'`expand_path(%<current_path>s, __FILE__)`.'
|
48
48
|
PATHNAME_MSG = 'Use `Pathname(__dir__).expand_path` instead of ' \
|
49
|
-
'`Pathname(__FILE__).parent.expand_path`.'
|
49
|
+
'`Pathname(__FILE__).parent.expand_path`.'
|
50
50
|
PATHNAME_NEW_MSG = 'Use `Pathname.new(__dir__).expand_path` ' \
|
51
51
|
'instead of ' \
|
52
|
-
'`Pathname.new(__FILE__).parent.expand_path`.'
|
52
|
+
'`Pathname.new(__FILE__).parent.expand_path`.'
|
53
53
|
|
54
54
|
def_node_matcher :file_expand_path, <<-PATTERN
|
55
55
|
(send
|
@@ -43,8 +43,8 @@ module RuboCop
|
|
43
43
|
include RangeHelp
|
44
44
|
|
45
45
|
EACH_LENGTH = 'each'.length
|
46
|
-
PREFER_EACH = 'Prefer `each` over `for`.'
|
47
|
-
PREFER_FOR = 'Prefer `for` over `each`.'
|
46
|
+
PREFER_EACH = 'Prefer `each` over `for`.'
|
47
|
+
PREFER_FOR = 'Prefer `for` over `each`.'
|
48
48
|
|
49
49
|
def on_for(node)
|
50
50
|
if style == :each
|