Skip to content

Upgrading rubocop 0.93 to 1

Breaking0.93.1 → 1.92.2Breaking11Platform2Deprecated9New460Changed443Fixed2464Other10

Fetching 185 releases from GitHub…184 / 185
BreakingUpgrade verdict

11 breaking changes and 2 platform requirement changes.

  • The Style/DoubleCopDisableDirective cop is gone; Lint/CopDirectiveSyntax now handles multiple directives on a line.
  • The AllowTrailingComment option is now called AllowWithReason, so existing configs using the old name must be updated.
  • Configurations using the old style name must be updated to the new one.
  • Removes deprecated InjectDefaults handling.
Top 5 of 22 that need code or config changes

Ruby requirement changed in 1.51.0: >= 2.4.0 → >= 2.7.0.

Breaking11
Removes Style/DoubleCopDisableDirective, superseded by Lint/CopDirectiveSyntax, which now reports and corrects more than one directive on a line.
Style/DoubleCopDisableDirectiveLint/CopDirectiveSyntax
Renames the AllowTrailingComment option of Style/DisableCopsWithinSourceCodeDirective to AllowWithReason.
Style/DisableCopsWithinSourceCodeDirectiveAllowTrailingCommentAllowWithReason
Renames class_definition to class_keyword in EnforcedStyle of Style/EmptyClassDefinition.
Style/EmptyClassDefinitionEnforcedStyleclass_definitionclass_keyword
Removes deprecated InjectDefaults handling.
InjectDefaults
Renames IgnoreCopDirectives to AllowCopDirectives in Layout/LineLength.
Layout/LineLengthIgnoreCopDirectivesAllowCopDirectives
Drops runtime support for Ruby 2.6 and JRuby 9.3 (CRuby 2.6 compatible).
Integrates Gemspec/DateAssignment into Gemspec/DeprecatedAttributeAssignment.
Gemspec/DateAssignmentGemspec/DeprecatedAttributeAssignment
Retires Lint/UselessElseWithoutRescue cop.
Lint/UselessElseWithoutRescue
RuboCop assumes Cop classes do not define new on_<type> methods at runtime, e.g. via extend in initialize.
on_<type>
Enables all pending cops for RuboCop 1.0.
Changes cop department name computation so cops in deep namespaces (5+ levels) get departments from the third module name joined with slashes.
Rubocop::Cop::Foo::Bar::Baz
Platform2
Drops support for Ruby 2.5 and JRuby 9.2 (CRuby 2.5 compatible).
Drops support for Ruby 2.4.
Deprecated9
Renames inconsistently named cop parameters to follow RuboCop conventions; old names are deprecated but still work.
Bundler/GemCommentIgnoredGemsAllowedGemsLint/NumberConversionIgnoredClassesAllowedClassesLint/MissingCopEnableDirectiveMaximumRangeSize
Emit a deprecation when custom cops inherit from RuboCop::Cop::Cop.
RuboCop::Cop::Cop
Displays warning messages for deprecated APIs.
Restores RuboCop::ConfigLoader.project_root as deprecated.
RuboCop::ConfigLoader.project_root
Deprecates the IgnoredMethods option in favor of the AllowedMethods and AllowedPatterns options.
IgnoredMethodsAllowedMethodsAllowedPatterns
Deprecates rubocop:auto_correct rake task and splits rubocop:autocorrect and rubocop:autocorrect-all rake tasks.
rubocop:auto_correctrubocop:autocorrectrubocop:autocorrect-all
Deprecates IgnoredPatterns in favour of AllowedPatterns.
IgnoredPatternsAllowedPatterns
Deprecates the RuboCop::Cop::EnforceSuperclass module.
RuboCop::Cop::EnforceSuperclass
Deprecates the EnforceSuperclass module.
EnforceSuperclass

Generated by DepDelta from published Ruby source. Not mixed with prose notes.

  • removed: method CopHelper.inspect_source_file(_)
  • removed: method HostEnvironmentSimulatorHelper.in_its_own_process_with(*)
  • removed: module HostEnvironmentSimulatorHelper
  • changed: constructor CopsDocumentationGenerator(departments: …) → constructor CopsDocumentationGenerator(departments: …, extra_info: …, base_dir: …, plugin_name: …)
  • added: const CopsDocumentationGenerator.STRUCTURE
  • added: method CopHelper.configuration()
  • added: method CopHelper.registry()
  • added: module RubyLsp
  • added: static property CopHelper.integrated_plugins: accessor
  • added: class CopData < Struct.new(:cop, :description, :example_objects, :safety_objects, :see_objects, :config, keyword_init: true)
  • removed: const CommentConfig.COPS_PATTERN
  • removed: const CommentConfig.COP_NAMES_PATTERN
  • removed: const CommentConfig.COP_NAME_PATTERN
  • removed: const CommentConfig.REDUNDANT_DISABLE
  • removed: const ConfigLoader.XDG_CONFIG
  • removed: const ConfigObsoletion.MOVED_COPS
  • removed: const ConfigObsoletion.OBSOLETE_COPS
  • removed: const ConfigObsoletion.OBSOLETE_ENFORCED_STYLES
  • removed: const ConfigObsoletion.OBSOLETE_PARAMETERS
  • removed: const ConfigObsoletion.REMOVED_COPS
  • removed: const ConfigObsoletion.REMOVED_COPS_WITH_REASON
  • removed: const ConfigObsoletion.RENAMED_COPS
  • removed: const ConfigObsoletion.SPLIT_COPS
  • removed: method ConfigObsoletion.reject_obsolete_cops_and_parameters()
  • removed: method ConfigValidator.validate_section_presence(_)
  • removed: method DirectiveComment.cops()
  • removed: method OptionsValidator.display_only_fail_level_offenses_with_autocorrect?()
  • removed: method OptionsValidator.validate_auto_correct()
  • removed: method OptionsValidator.validate_parallel()
  • removed: method OptionsValidator.validate_parallel_with_combo_option()
  • removed: method TargetFinder.all_cops_include()
  • removed: method TargetFinder.combined_exclude_glob_patterns(_)
  • removed: method TargetFinder.configured_include?(_)
  • removed: method TargetFinder.debug?()
  • removed: method TargetFinder.fail_fast?()
  • removed: method TargetFinder.force_exclusion?()
  • removed: method TargetFinder.included_file?(_)
  • removed: method TargetFinder.process_explicit_path(_, _)
  • removed: method TargetFinder.ruby_executable?(_)
  • removed: method TargetFinder.ruby_extension?(_)
  • removed: method TargetFinder.ruby_extensions()
  • removed: method TargetFinder.ruby_file?(_)
  • removed: method TargetFinder.ruby_filename?(_)
  • removed: method TargetFinder.ruby_filenames()
  • removed: method TargetFinder.ruby_interpreters(_)
  • removed: method TargetFinder.stdin?()
  • removed: method TargetFinder.to_inspect?(_, _, _)
  • removed: method TargetFinder.wanted_dir_patterns(_, _, _)
  • removed: static method ConfigLoader.possible_new_cops?(_)
  • removed: static method ConfigLoader.warn_on_pending_cops(_)
  • removed: static method ConfigLoader.warn_pending_cop(_)
  • removed: static method FileFinder.root_level?(_, _)
  • removed: static property ConfigLoader.project_root: writer
  • removed: static property ResultCache.source_checksum: accessor
  • removed: static set FileFinder.root_level(_)
  • changed: constructor DirectiveComment(_) → constructor DirectiveComment(_, _ = …)
  • changed: method ConfigLoaderResolver.merge_with_default(_, _, unset_nil:) → method ConfigLoaderResolver.merge_with_default(_, _, unset_nil:, resolve_preview: …)
  • changed: method RemoteConfig.inherit_from_remote(_, _) → method RemoteConfig.inherit_from_remote(_)
  • changed: static method Config.create(_, _) → static method Config.create(_, _, check: …)
  • changed: static method ConfigLoader.configuration_from_file(_) → static method ConfigLoader.configuration_from_file(_, check: …)
  • changed: static method ConfigLoader.load_file(_) → static method ConfigLoader.load_file(_, check: …)
  • changed: static method ConfigLoader.merge_with_default(_, _, unset_nil: …) → static method ConfigLoader.merge_with_default(_, _, unset_nil: …, resolve_preview: …)
  • changed: static method ResultCache.cache_root(_) → static method ResultCache.cache_root(_, _ = …)
  • changed: static method Version.version(debug: …) → static method Version.version(debug: …, env: …)
  • added: class ArgumentsEnv
  • added: class ArgumentsFile
  • added: class CacheConfig
  • added: class ChangedFiles
  • added: class ConfigFinder
  • added: class FeatureLoader
  • added: class FilePatterns
  • added: class Lockfile
  • added: class OffenseLimit
  • added: class PendingCopsReporter
  • added: class TodoAudit
  • added: class UnifiedDiff
  • added: const CLI.DEFAULT_PARALLEL_OPTIONS
  • added: const ChangedFiles.DEFAULT_REVISION
  • added: const ChangedFiles.FILESYSTEM_ENCODING
  • added: const CommentConfig.CONFIG_DISABLED_LINE_RANGE_MIN
  • added: const Config.EMPTY_CONFIG
  • added: const ConfigFinder.DEFAULT_FILE
  • added: const ConfigFinder.DOTFILE
  • added: const ConfigFinder.RUBOCOP_HOME
  • added: const ConfigFinder.XDG_CONFIG
  • added: const ConfigObsoletion.COP_RULE_CLASSES
  • added: const ConfigObsoletion.DEFAULT_RULES_FILE
  • added: const ConfigObsoletion.PARAMETER_RULE_CLASSES
  • added: const ConfigValidator.CONFIG_CHECK_AUTOCORRECTS
  • added: const ConfigValidator.NEW_COPS_VERSION_PATTERN
  • added: const Cop.IgnoredMethods
  • added: const Cop.IgnoredPattern
  • added: const DirectiveComment.AVAILABLE_MODES
  • added: const DirectiveComment.COPS_PATTERN
  • added: const DirectiveComment.COP_NAMES_PATTERN
  • added: const DirectiveComment.COP_NAMES_PATTERN_NC
  • added: const DirectiveComment.COP_NAME_PATTERN
  • added: const DirectiveComment.COP_NAME_PATTERN_NC
  • added: const DirectiveComment.DIRECTIVE_HEADER_PATTERN
  • added: const DirectiveComment.DIRECTIVE_MARKER_PATTERN
  • added: const DirectiveComment.LINT_DEPARTMENT
  • added: const DirectiveComment.LINT_REDUNDANT_DIRECTIVE_COP
  • added: const DirectiveComment.LINT_SYNTAX_COP
  • added: const DirectiveComment.MODES_PATTERN
  • added: const DirectiveComment.PUSH_POP_ARGS_PATTERN
  • added: const DirectiveComment.SIGNED_OPERATIONS
  • added: const DirectiveComment.STYLE_DISABLE_COPS_DIRECTIVE_COP
  • added: const DirectiveComment.TRAILING_COMMENT_MARKER
  • added: const MagicComment.KEYWORDS
  • added: const PathUtil.HIDDEN_FILE_PATTERN
  • added: const Plugin.BUILTIN_INTERNAL_PLUGINS
  • added: const Plugin.INTERNAL_AFFAIRS_PLUGIN_NAME
  • added: const Plugin.OBSOLETE_INTERNAL_AFFAIRS_PLUGIN_NAME
  • added: const ProjectIndexLoader.MINIMUM_RUBY_VERSION
  • added: const ResultCache.DL_EXTENSIONS
  • added: const Runner.REDUNDANT_COP_DISABLE_DIRECTIVE_RULES
  • added: const Server.IN_PROCESS_PROTOCOL_OPTIONS
  • added: const Server.TIMEOUT
  • added: const UnifiedDiff.CONTEXT_LINES
  • added: const UnifiedDiff.MAX_EDIT_DISTANCE
  • added: const UnifiedDiff.NO_NEWLINE_MARKER
  • added: const Version.CANONICAL_FEATURE_NAMES
  • added: const Version.EXTENSION_PATH_NAMES
  • added: const Version.MINIMUM_PARSABLE_PRISM_VERSION
  • added: constructor ChangedFiles(_ = …)
  • added: constructor FeatureLoader(config_directory_path:, feature:)
  • added: constructor FilePatterns(_)
  • added: constructor Lockfile(_ = …)
  • added: constructor OffenseLimit(_)
  • added: constructor TodoAudit(_, _)
  • added: constructor UnifiedDiff(_, _, _)
  • added: method ChangedFiles.filter(_)
  • added: method ChangedFiles.paths()
  • added: method CommentConfig.comment_only_line?(_)
  • added: method CommentConfig.cop_enabled_at_lines?(_, _, _)
  • added: method CommentConfig.cop_opted_in?(_)
  • added: method CommentConfig.opt_in_cops()
  • added: method Config.active_support_extensions_enabled?()
  • added: method Config.clusivity_config_for_badge?(_)
  • added: method Config.cop_enabled?(_)
  • added: method Config.enabled_new_cop?(_)
  • added: method Config.for_enabled_cop(_)
  • added: method Config.gem_versions_in_target()
  • added: method Config.inspect()
  • added: method Config.loaded_features()
  • added: method Config.loaded_plugins()
  • added: method Config.parser_engine()
  • added: method Config.path_sourced_gems_in_target()
  • added: method Config.preview?(_ = …)
  • added: method Config.string_literals_frozen_by_default?()
  • added: method Config.validate_after_resolution()
  • added: method ConfigLoaderResolver.apply_preview_defaults(_, _)
  • added: method ConfigLoaderResolver.fix_include_paths(_, _, _, _, _)
  • added: method ConfigLoaderResolver.override_enabled_for_disabled_departments(_, _)
  • added: method ConfigLoaderResolver.resolve_plugins(_, _)
  • added: method ConfigObsoletion.deprecated_cop_name?(_)
  • added: method ConfigObsoletion.legacy_cop_names()
  • added: method ConfigObsoletion.messages()
  • added: method ConfigObsoletion.reject_obsolete!()
  • added: method ConfigStore.apply_options!(_)
  • added: method ConfigStore.unvalidated()
  • added: method ConfigValidator.validate_after_resolution()
  • added: method DirectiveComment.all_cops?()
  • added: method DirectiveComment.cop_names()
  • added: method DirectiveComment.department_names()
  • added: method DirectiveComment.directive_count()
  • added: method DirectiveComment.disable_next?()
  • added: method DirectiveComment.disabled?()
  • added: method DirectiveComment.disabled_all?()
  • added: method DirectiveComment.enable_next?()
  • added: method DirectiveComment.enabled?()
  • added: method DirectiveComment.enabled_all?()
  • added: method DirectiveComment.in_directive_department?(_)
  • added: method DirectiveComment.invalid_signed_args?()
  • added: method DirectiveComment.line_number()
  • added: method DirectiveComment.malformed?()
  • added: method DirectiveComment.match_captures()
  • added: method DirectiveComment.missing_cop_name?()
  • added: method DirectiveComment.next?()
  • added: method DirectiveComment.overridden_by_department?(_)
  • added: method DirectiveComment.pop?()
  • added: method DirectiveComment.push?()
  • added: method DirectiveComment.push_args()
  • added: method DirectiveComment.range_with_reason()
  • added: method DirectiveComment.raw_cop_names()
  • added: method DirectiveComment.reason()
  • added: method DirectiveComment.signed_args()
  • added: method DirectiveComment.single_line?()
  • added: method DirectiveComment.start_with_marker?()
  • added: method ExcludeLimit.exclude_limit(_, method_name: …)
  • added: method FeatureLoader.load()
  • added: method FileFinder.traverse_directories_upwards(_, _ = …)
  • added: method FilePatterns.match?(_)
  • added: method Lockfile.dependencies()
  • added: method Lockfile.gem_versions(include_transitive_dependencies: …)
  • added: method Lockfile.gems()
  • added: method Lockfile.includes_gem?(_)
  • added: method Lockfile.path_sourced_gem_names()
  • added: method MagicComment.rbs_inline_specified?()
  • added: method MagicComment.shareable_constant_value()
  • added: method MagicComment.shareable_constant_value_specified?()
  • added: method MagicComment.typed()
  • added: method MagicComment.typed_specified?()
  • added: method MagicComment.valid?()
  • added: method MagicComment.valid_rbs_inline_value?()
  • added: method MagicComment.valid_shareable_constant_value?()
  • added: method MagicComment.warn_indent()
  • added: method MagicComment.warn_indent_specified?()
  • added: method OffenseLimit.elided_per_cop()
  • added: method OffenseLimit.filter(_)
  • added: method OptionsValidator.disable_parallel_when_invalid_option_combo()
  • added: method OptionsValidator.invalid_arguments_for_parallel()
  • added: method OptionsValidator.path_given_to_changed?(_)
  • added: method OptionsValidator.validate_autocorrect()
  • added: method OptionsValidator.validate_changed_and_stdin()
  • added: method OptionsValidator.validate_diff()
  • added: method OptionsValidator.validate_display_only_correctable_and_autocorrect()
  • added: method OptionsValidator.validate_display_only_failed_and_display_only_correctable()
  • added: method OptionsValidator.validate_enable_all_cops_and_disable_all_cops()
  • added: method OptionsValidator.validate_lsp_and_editor_mode()
  • added: method OptionsValidator.validate_max_offenses_per_cop_option()
  • added: method Runner.diffs()
  • added: method TodoAudit.todo_file()
  • added: method TodoAudit.unused_entries()
  • added: method UnifiedDiff.to_s()
  • added: module ExcludeLimit
  • added: module InternalAffairs
  • added: module LSP
  • added: module Lsp
  • added: module MCP
  • added: module Plugin
  • added: module ProjectIndexLoader
  • added: module Server
  • added: module Util
  • added: property ConfigObsoletion.rules: reader
  • added: property ConfigObsoletion.warnings: reader
  • added: property ConfigStore.validated: reader
  • added: property ConfigStore.validated?: reader
  • added: property DirectiveComment.cop_registry: reader
  • added: property DirectiveComment.cops: reader
  • added: property DirectiveComment.mode: reader
  • added: property OffenseLimit.max: reader
  • added: property RakeTask.plugins: accessor
  • added: property ResultCache.path: reader
  • added: static method ArgumentsEnv.read_as_arguments()
  • added: static method ArgumentsFile.read_as_arguments()
  • added: static method CacheConfig.root_dir()
  • added: static method CacheConfig.root_dir_from_toplevel_config(_ = …)
  • added: static method ChangedFiles.revision?(_)
  • added: static method ConfigFinder.find_config_path(_)
  • added: static method ConfigFinder.project_root()
  • added: static method ConfigLoader.add_loaded_features(_)
  • added: static method ConfigLoader.add_loaded_plugins(_)
  • added: static method ConfigLoader.apply_default_overrides(_)
  • added: static method ConfigLoader.cache_root(_ = …)
  • added: static method ConfigLoader.inject_defaults!(_)
  • added: static method ConfigObsoletion.deprecated_cop_name?(_)
  • added: static method ConfigObsoletion.deprecated_names_for(_)
  • added: static method ConfigObsoletion.global()
  • added: static method ConfigObsoletion.legacy_cop_names()
  • added: static method ConfigObsoletion.reset!()
  • added: static method ConfigObsoletion.rules_cache_key()
  • added: static method DirectiveComment.before_comment(_)
  • added: static method ExcludeLimit.cop_dir_for(_)
  • added: static method ExcludeLimit.read_limits(_)
  • added: static method FeatureLoader.load(config_directory_path:, feature:)
  • added: static method FilePatterns.from(_)
  • added: static method LSP.disable()
  • added: static method LSP.enable()
  • added: static method LSP.enabled?()
  • added: static method PathUtil.glob?(_)
  • added: static method PathUtil.pwd()
  • added: static method PathUtil.remote_file?(_)
  • added: static method PathUtil.reset_pwd()
  • added: static method PendingCopsReporter.warn_if_needed(_)
  • added: static method Plugin.integrate_plugins(_, _)
  • added: static method Plugin.plugin_capable?(_)
  • added: static method ProjectIndexLoader.available?()
  • added: static method ProjectIndexLoader.build_index(_)
  • added: static method ProjectIndexLoader.bundled_gem_source_files()
  • added: static method ProjectIndexLoader.supported_ruby?()
  • added: static method ProjectIndexLoader.try_require()
  • added: static method ProjectIndexLoader.warn_unavailable()
  • added: static method ResultCache.relevant_options_digest(_)
  • added: static method ResultCache.reset_config_cache()
  • added: static method ResultCache.source_checksum()
  • added: static method Runner.ruby_extractors()
  • added: static method Server.forward_to_server?(_ = …)
  • added: static method Server.running?()
  • added: static method Server.support_server?()
  • added: static method Server.wait_for_running_status!(_)
  • added: static method Util.emulate_write_read_cycle(_)
  • added: static method Util.replace_file_contents(_, _)
  • added: static method Util.silence_warnings()
  • added: static method Version.config_for_pwd(_)
  • added: static method Version.extension_versions(_)
  • added: static method Version.feature_version(_)
  • added: static method Version.parser_version(_)
  • added: static method Version.rubydex_enabled?(_)
  • added: static method Version.rubydex_indicator(_)
  • added: static method Version.server_mode()
  • added: static method Version.target_ruby_version(_)
  • added: static method Version.verbose(env: …)
  • added: static property ConfigFinder.project_root: writer
  • added: static property ConfigLoader.cache_root: writer
  • added: static property ConfigLoader.disabled_by_default: accessor
  • added: static property ConfigLoader.enabled_by_default: accessor
  • added: static property ConfigLoader.ignore_unrecognized_cops: accessor
  • added: static property ConfigLoader.loaded_features: reader
  • added: static property ConfigLoader.loaded_plugins: reader
  • added: static property ConfigLoader.preview: accessor
  • added: static property ConfigObsoletion.files: accessor
  • added: static property ExcludeLimit.tmp_dir: accessor
  • added: static property FileFinder.root_level: accessor
  • added: static property PathUtil.relative_paths_cache: accessor
  • added: static property PendingCopsReporter.disable_pending_cops: accessor
  • added: static property PendingCopsReporter.enable_pending_cops: accessor
  • changed: class Finished < RuntimeError → class Finished < StandardError
  • added: class Explain < Base
  • added: class LSP < Base
  • added: class ListEnabledCopsFor < Base
  • added: class MCP < Base
  • added: class ShowDocsUrl < Base
  • added: class SuggestExtensions < Base
  • added: const AutoGenerateConfig.PHASE_1_SKIPPED_ONLY_COPS
  • added: const AutoGenerateConfig.PHASE_1_SKIPPED_ONLY_EXCLUDE
  • added: const AutoGenerateConfig.PLACEHOLDER
  • added: const AutoGenerateConfig.YAML_OPTIONAL_DOC_START
  • added: const SuggestExtensions.INCLUDED_FORMATTERS
  • added: constructor Explain(_)
  • added: constructor ListEnabledCopsFor(_)
  • added: constructor ShowDocsUrl(_)
  • added: method Explain.run()
  • added: method LSP.run()
  • added: method ListEnabledCopsFor.run()
  • added: method MCP.run()
  • added: method ShowDocsUrl.run()
  • added: method SuggestExtensions.run()
  • added: module CopNames
  • added: class ExactMatcher < Struct.new(:pattern)
  • added: class WildcardMatcher < Struct.new(:pattern)
  • added: method ExactMatcher.match?(_)
  • added: method WildcardMatcher.match?(_)
  • removed: class COMMENT_DIRECTIVE_REGEXP < Regexp.new("# rubocop : ((?:disable|enable|todo))\\b #{COPS_PATTERN}" .gsub(' ', '\s*'))
  • changed: class CopAnalysis < Struct.new(:line_ranges, :start_line_number) → class CopAnalysis < Struct.new(:line_ranges, :start_line_number, :start_directive)
  • added: class ConfigDisabledCopDirectiveComment
  • added: class DirectiveRange < Range
  • added: constructor ConfigDisabledCopDirectiveComment(_)
  • added: constructor DirectiveRange(_, _, _)
  • added: method CopAnalysis.close(_)
  • added: method DisableNext.detached_next_directives()
  • added: method DisableNext.statement_scope_after(_)
  • added: module DisableNext
  • added: module PushPop
  • added: property ConfigDisabledCopDirectiveComment.line_number: reader
  • added: property ConfigDisabledCopDirectiveComment.loc: reader
  • added: property ConfigDisabledCopDirectiveComment.text: reader
  • added: property DirectiveRange.directive: reader
  • added: class Expression < Struct.new(:line)
  • added: class Loc < Struct.new(:expression)
  • added: class ChangedEnforcedStyles < ParameterRule
  • added: class ChangedParameter < ParameterRule
  • added: class CopRule < Rule
  • added: class ExtractedCop < CopRule
  • added: class ParameterRule < Rule
  • added: class RemovedCop < CopRule
  • added: class RenamedCop < CopRule
  • added: class Rule
  • added: class SplitCop < CopRule
  • added: const ChangedEnforcedStyles.BASE_MESSAGE
  • added: const ChangedParameter.BASE_MESSAGE
  • added: const RemovedCop.BASE_MESSAGE
  • added: constructor CopRule(_, _)
  • added: constructor ExtractedCop(_, _, _)
  • added: constructor ParameterRule(_, _, _, _)
  • added: constructor RemovedCop(_, _, _)
  • added: constructor RenamedCop(_, _, _)
  • added: constructor Rule(_)
  • added: constructor SplitCop(_, _, _)
  • added: method ChangedEnforcedStyles.message()
  • added: method ChangedEnforcedStyles.violated?()
  • added: method ChangedParameter.message()
  • added: method CopRule.cop_rule?()
  • added: method CopRule.message()
  • added: method CopRule.violated?()
  • added: method CopRule.warning?()
  • added: method ExtractedCop.rule_message()
  • added: method ExtractedCop.violated?()
  • added: method ParameterRule.parameter_rule?()
  • added: method ParameterRule.violated?()
  • added: method ParameterRule.warning?()
  • added: method RemovedCop.rule_message()
  • added: method RemovedCop.warning?()
  • added: method RenamedCop.rule_message()
  • added: method RenamedCop.warning?()
  • added: method Rule.cop_rule?()
  • added: method Rule.parameter_rule?()
  • added: method Rule.violated?()
  • added: method SplitCop.rule_message()
  • added: property CopRule.old_name: reader
  • added: property ExtractedCop.department: reader
  • added: property ExtractedCop.gem: reader
  • added: property ParameterRule.cop: reader
  • added: property ParameterRule.metadata: reader
  • added: property ParameterRule.parameter: reader
  • added: property RemovedCop.metadata: reader
  • added: property RemovedCop.old_name: reader
  • added: property RenamedCop.metadata: reader
  • added: property RenamedCop.new_name: reader
  • added: property SplitCop.metadata: reader
  • removed: const DefNode.NON_PUBLIC_MODIFIERS
  • removed: const FrozenStringLiteral.FROZEN_STRING_LITERAL
  • removed: const FrozenStringLiteral.FROZEN_STRING_LITERAL_TYPES
  • removed: method Cop.parse(_, _ = …)
  • removed: method Offense.column()
  • removed: method Offense.line()
  • removed: method Registry.print_warning(_, _)
  • removed: method RescueNode.on_new_investigation()
  • removed: module IgnoredMethods
  • removed: module IgnoredPattern
  • removed: static method Util.begins_its_line?(_)
  • removed: static method Util.double_quotes_required?(_)
  • removed: static method Util.escape_string(_)
  • removed: static method Util.first_part_of_call_chain(_)
  • removed: static method Util.interpret_string_escapes(_)
  • removed: static method Util.needs_escaping?(_)
  • removed: static method Util.same_line?(_, _)
  • removed: static method Util.to_string_literal(_)
  • removed: static method Util.to_supported_styles(_)
  • removed: static method Util.trim_string_interporation_escape_character(_)
  • changed: constructor Badge(_, _) → constructor Badge(_)
  • changed: constructor Generator(_, _, output: …) → constructor Generator(_, output: …)
  • changed: constructor Offense(_, _, _, _, _ = …, _ = …) → constructor Offense(_, _, _, _, _ = …, _ = …, justification: …, corrections: …, correction_safe: …)
  • changed: method Commissioner.investigate(_) → method Commissioner.investigate(_, offset: …, original: …)
  • changed: method Registry.enabled(_, _ = …, only_safe: …) → method Registry.enabled(_)
  • changed: method Registry.enabled?(_, _, _) → method Registry.enabled?(_, _)
  • changed: method Registry.enabled_pending_cop?(_, _) → method Registry.enabled_pending_cop?(_, _, _ = …)
  • changed: method Registry.qualified_cop_name(_, _, warn: …) → method Registry.qualified_cop_name(_, _, warn: …, correct_namespace: …)
  • changed: method Team.investigate(_) → method Team.investigate(_, offset: …, original: …)
  • changed: static method AlignmentCorrector.correct(_, _, _) → static method AlignmentCorrector.correct(_, _, _, _, tab_indentation: …)
  • changed: static method Base.documentation_url() → static method Base.documentation_url(_ = …)
  • changed: static method Documentation.url_for(_) → static method Documentation.url_for(_, _ = …)
  • changed: static method Registry.qualified_cop_name(_, _) → static method Registry.qualified_cop_name(_, _, warn: …, correct_namespace: …)
  • changed: static method StringLiteralCorrector.correct(_, _) → static method StringLiteralCorrector.correct(_, _, _)
  • added: class AnnotationComment
  • added: class CopDocumentation
  • added: class CopExplanation
  • added: class IfThenCorrector
  • added: class RequireLibraryCorrector
  • added: const AllowedIdentifiers.SIGILS
  • added: const Base.DEPARTMENT_SEVERITIES
  • added: const CopDocumentation.TAG
  • added: const CopExplanation.METADATA_KEYS
  • added: const Corrector.NOOP_CONSUMER
  • added: const ForbiddenIdentifiers.SIGILS
  • added: const HashShorthandSyntax.DO_NOT_MIX_EXPLICIT_VALUE_MSG
  • added: const HashShorthandSyntax.DO_NOT_MIX_MSG_PREFIX
  • added: const HashShorthandSyntax.DO_NOT_MIX_OMIT_VALUE_MSG
  • added: const HashShorthandSyntax.EXPLICIT_HASH_VALUE_MSG
  • added: const HashShorthandSyntax.KEYWORDS
  • added: const HashShorthandSyntax.OMIT_HASH_VALUE_MSG
  • added: const HashSubset.ACTIVE_SUPPORT_SUBSET_METHODS
  • added: const HashSubset.MSG
  • added: const HashSubset.RESTRICT_ON_SEND
  • added: const HashSubset.SUBSET_METHODS
  • added: const IfThenCorrector.DEFAULT_INDENTATION_WIDTH
  • added: const PatternMatchingHelp.PATTERN_TYPES
  • added: const PrecedingFollowingAlignment.ASSIGNMENT_OR_COMPARISON_TOKENS
  • added: const ProjectIndexHelp.BUILTIN_DOCUMENT_URI
  • added: const ProjectIndexHelp.FILE_URI_PREFIX
  • added: const ProjectIndexHelp.WINDOWS_DRIVE_PREFIX
  • added: const ReparsedEquivalence.MAX_VERIFICATION_FRAGMENT_SIZE
  • added: const RequireLibrary.RESTRICT_ON_SEND
  • added: const StatementModifier.SPACE_INSIDE_PARENS_STYLES
  • added: const Util.MAX_LINE_BEGINS_REGEX_INDEX
  • added: const VariableForce.BRANCH_NODES
  • added: const VariableForce.PATTERN_MATCH_VARIABLE_TYPE
  • added: const VariableForce.REST_ASSIGNMENT_TYPE
  • added: constructor AnnotationComment(_, _)
  • added: constructor CopDocumentation(_)
  • added: constructor CopExplanation(_, _)
  • added: constructor IfThenCorrector(_, indentation: …)
  • added: method AllowedIdentifiers.allowed_identifier?(_)
  • added: method AllowedIdentifiers.allowed_identifiers()
  • added: method AllowedReceivers.allowed_receiver?(_)
  • added: method AllowedReceivers.allowed_receivers()
  • added: method AllowedReceivers.receiver_name(_)
  • added: method AnnotationComment.annotation?()
  • added: method AnnotationComment.bounds()
  • added: method AnnotationComment.correct?(colon:)
  • added: method AutocorrectLogic.autocorrect_with_disable_uncorrectable?()
  • added: method AutocorrectLogic.skipped_unsafe_correction_with_disable_uncorrectable?()
  • added: method Badge.match_name?(_)
  • added: method Base.active_support_extensions_enabled?()
  • added: method Base.always_autocorrect?()
  • added: method Base.begin_investigation(_, offset: …, original: …)
  • added: method Base.callbacks_needed()
  • added: method Base.contextual_autocorrect?()
  • added: method Base.disabled_autocorrect?()
  • added: method Base.inspect()
  • added: method Base.parse(_, _ = …)
  • added: method Base.parser_engine()
  • added: method Base.preview?()
  • added: method Base.string_literals_frozen_by_default?()
  • added: method Base.target_gem_version(_)
  • added: method CheckSingleLineSuitability.suitable_as_single_line?(_)
  • added: method CommentsHelp.comments_contain_disables?(_, _)
  • added: method CommentsHelp.comments_in_range(_)
  • added: method CommentsHelp.contains_comments?(_)
  • added: method Cop.begin_investigation(_, offset: …, original: …)
  • added: method CopDocumentation.sections()
  • added: method CopExplanation.to_s()
  • added: method Corrector.swap(_, _)
  • added: method EndlessMethodRewriter.correct_to_multiline(_, _)
  • added: method ForbiddenIdentifiers.forbidden_identifier?(_)
  • added: method ForbiddenIdentifiers.forbidden_identifiers()
  • added: method ForbiddenPattern.forbidden_pattern?(_)
  • added: method ForbiddenPattern.forbidden_pattern_regexps()
  • added: method ForbiddenPattern.forbidden_patterns()
  • added: method GemspecHelp.match_block_variable_name?(_)
  • added: method Generator.inject_registration()
  • added: method HashShorthandSyntax.on_hash_for_mixed_shorthand(_)
  • added: method HashShorthandSyntax.on_pair(_)
  • added: method HashSubset.on_csend(_)
  • added: method HashSubset.on_send(_)
  • added: method IfThenCorrector.call(_)
  • added: method LambdaLiteralToMethodCorrector.replace_delimiters?()
  • added: method LazyLoader.register_cop(_, _)
  • added: method MethodComplexity.on_itblock(_)
  • added: method MethodComplexity.on_numblock(_)
  • added: method MultilineExpressionIndentation.on_csend(_)
  • added: method Offense.marshal_dump()
  • added: method Offense.marshal_load(_)
  • added: method Offense.real_last_column()
  • added: method ProjectIndexHelp.external_dependency_checksum()
  • added: method Registry.cops_for_department(_)
  • added: method Registry.department?(_)
  • added: method Registry.disabled(_)
  • added: method Registry.disabled_names(_)
  • added: method Registry.enabled_preview_cop?(_, _)
  • added: method Registry.filter_by_badge(_ = …)
  • added: method Registry.find_cops_by_directive(_)
  • added: method Registry.freeze()
  • added: method Registry.lazy_load(_, _)
  • added: method Registry.load_all_lazy_cops()
  • added: method Registry.names_for_department(_)
  • added: method Registry.print_department_missing_warning(_, _)
  • added: method Registry.qualify_badge(_)
  • added: method Registry.resolve_cop_name(_, _, _, _)
  • added: method Registry.warnings?(_)
  • added: method RequireLibrary.ensure_required(_, _, _)
  • added: method RequireLibrary.on_send(_)
  • added: method RequireLibrary.remove_subsequent_requires(_, _, _)
  • added: method RescueNode.modifier_locations()
  • added: method Style.add_require_english?()
  • added: method Style.matching_styles(_)
  • added: method Style.should_require_english?(_)
  • added: method SymbolHelp.hash_key?(_)
  • added: method TargetRubyVersion.maximum_target_ruby_version(_)
  • added: method TargetRubyVersion.required_maximum_ruby_version()
  • added: method Team.investigate_fragments(_, original:)
  • added: module AllowedIdentifiers
  • added: module AllowedPattern
  • added: module AllowedReceivers
  • added: module CheckSingleLineSuitability
  • added: module DigHelp
  • added: module EndlessMethodBodyHelp
  • added: module EndlessMethodRewriter
  • added: module ForbiddenIdentifiers
  • added: module ForbiddenPattern
  • added: module GemDeclaration
  • added: module GemspecHelp
  • added: module HashShorthandSyntax
  • added: module HashSubset
  • added: module IndexedMethodArity
  • added: module LazyLoader
  • added: module MinBranchesCount
  • added: module PatternMatchingHelp
  • added: module ProjectIndexHelp
  • added: module ReparsedEquivalence
  • added: module RequireLibrary
  • added: module SymbolHelp
  • added: property AnnotationComment.colon: reader
  • added: property AnnotationComment.comment: reader
  • added: property AnnotationComment.keyword: reader
  • added: property AnnotationComment.margin: reader
  • added: property AnnotationComment.note: reader
  • added: property AnnotationComment.space: reader
  • added: property Badge.department_name: reader
  • added: property Base.project_index: accessor
  • added: property Offense.column: reader
  • added: property Offense.correction_safe: reader
  • added: property Offense.corrections: reader
  • added: property Offense.justification: reader
  • added: property Offense.line: reader
  • added: property Registry.warnings: reader
  • added: property Team.defer_corrections: accessor
  • added: property Team.standby_registry: writer
  • added: property Team.updated_source: reader
  • added: protected method Registry.add_entry(_, _)
  • added: static method Badge.camel_case(_)
  • added: static method Base.callbacks_needed()
  • added: static method Base.requires_gem(_, *)
  • added: static method Documentation.base_url_for(_, _)
  • added: static method Documentation.builtin?(_)
  • added: static method Documentation.default_base_url()
  • added: static method Documentation.default_extension()
  • added: static method Documentation.extension_for(_, _)
  • added: static method ParenthesesCorrector.heredoc_strands_code_after_close_paren?(_)
  • added: static method Registry.qualified_cop?(_)
  • added: static method Registry.reset!()
  • added: static method RequireLibraryCorrector.correct(_, _, _)
  • added: static method RequireLibraryCorrector.require_statement(_)
  • added: static method Severity.minimum_to_fail(_, _)
  • added: static method Util.any_descendant?(_, *)
  • added: static property Base.gem_requirements: reader
  • added: static property ProjectIndexHelp.cached_index_signature: accessor
  • removed: class InvalidBadge < Error
  • removed: const InvalidBadge.MSG
  • removed: constructor InvalidBadge(_)
  • removed: method DuplicatedGem.investigate(_)
  • removed: method OrderedGems.autocorrect(_)
  • removed: method OrderedGems.investigate(_)
  • changed: class DuplicatedGem < Cop → class DuplicatedGem < Base
  • changed: class GemComment < Cop → class GemComment < Base
  • changed: class OrderedGems < Cop → class OrderedGems < Base
  • added: class DuplicatedGroup < Base
  • added: class GemFilename < Base
  • added: class GemVersion < Base
  • added: const DuplicatedGroup.MSG
  • added: const DuplicatedGroup.SOURCE_BLOCK_NAMES
  • added: const GemComment.RESTRICTIVE_VERSION_PATTERN
  • added: const GemComment.RESTRICTIVE_VERSION_SPECIFIERS_OPTION
  • added: const GemFilename.GEMFILE_FILES
  • added: const GemFilename.GEMS_RB_FILES
  • added: const GemFilename.MSG_GEMFILE_MISMATCHED
  • added: const GemFilename.MSG_GEMFILE_REQUIRED
  • added: const GemFilename.MSG_GEMS_RB_MISMATCHED
  • added: const GemFilename.MSG_GEMS_RB_REQUIRED
  • added: const GemVersion.FORBIDDEN_MSG
  • added: const GemVersion.REQUIRED_MSG
  • added: const GemVersion.RESTRICT_ON_SEND
  • added: const GemVersion.VERSION_SPECIFICATION_REGEX
  • added: const InsecureProtocolSource.MSG_HTTP_PROTOCOL
  • added: method DuplicatedGem.on_new_investigation()
  • added: method DuplicatedGroup.on_new_investigation()
  • added: method GemFilename.on_new_investigation()
  • added: method GemVersion.on_send(_)
  • added: method OrderedGems.on_new_investigation()
  • added: class HookError < StandardError
  • added: constructor HookError(_)
  • added: property HookError.joining_cop: reader
  • removed: method DuplicatedAssignment.investigate(_)
  • removed: method OrderedDependencies.autocorrect(_)
  • removed: method OrderedDependencies.investigate(_)
  • removed: method RequiredRubyVersion.investigate(_)
  • changed: class DuplicatedAssignment < Cop → class DuplicatedAssignment < Base
  • changed: class OrderedDependencies < Cop → class OrderedDependencies < Base
  • changed: class RequiredRubyVersion < Cop → class RequiredRubyVersion < Base
  • changed: class RubyVersionGlobalsUsage < Cop → class RubyVersionGlobalsUsage < Base
  • added: class AddRuntimeDependency < Base
  • added: class AttributeAssignment < Base
  • added: class DependencyVersion < Base
  • added: class DeprecatedAttributeAssignment < Base
  • added: class DevelopmentDependencies < Base
  • added: class RequireMFA < Base
  • added: const AddRuntimeDependency.MSG
  • added: const AddRuntimeDependency.RESTRICT_ON_SEND
  • added: const AttributeAssignment.MSG
  • added: const DependencyVersion.ADD_DEPENDENCY_METHODS
  • added: const DependencyVersion.FORBIDDEN_MSG
  • added: const DependencyVersion.REQUIRED_MSG
  • added: const DependencyVersion.RESTRICT_ON_SEND
  • added: const DependencyVersion.VERSION_SPECIFICATION_REGEX
  • added: const DeprecatedAttributeAssignment.MSG
  • added: const DevelopmentDependencies.MSG
  • added: const DevelopmentDependencies.RESTRICT_ON_SEND
  • added: const RequireMFA.MSG
  • added: const RequiredRubyVersion.RESTRICT_ON_SEND
  • added: method AddRuntimeDependency.on_send(_)
  • added: method AttributeAssignment.on_new_investigation()
  • added: method DependencyVersion.on_send(_)
  • added: method DeprecatedAttributeAssignment.on_block(_)
  • added: method DevelopmentDependencies.on_send(_)
  • added: method DuplicatedAssignment.on_new_investigation()
  • added: method OrderedDependencies.on_new_investigation()
  • added: method RequireMFA.on_block(_)
  • added: method RequiredRubyVersion.on_new_investigation()
  • added: method RequiredRubyVersion.on_send(_)
  • changed: constructor ConfigurationInjector(configuration_file_path:, badge:, version_added:) → constructor ConfigurationInjector(configuration_file_path:, badge:, version_added: …)
  • added: class RegistrationInjector
  • added: const RegistrationInjector.DEPARTMENT_REQUIRE_PATTERN
  • added: const RegistrationInjector.ENTRY_PATTERN
  • added: const RegistrationInjector.EXTEND_PATTERN
  • added: constructor RegistrationInjector(source_path:, badge:, root_file_path: …, output: …)
  • added: method RegistrationInjector.inject()
  • removed: constructor TableAlignment()
  • changed: method KeyAlignment.deltas_for_first_pair(_, _) → method KeyAlignment.deltas_for_first_pair(_)
  • changed: method SeparatorAlignment.deltas_for_first_pair(*) → method SeparatorAlignment.deltas_for_first_pair(_)
  • changed: method TableAlignment.deltas_for_first_pair(_, _) → method TableAlignment.deltas_for_first_pair(_)
  • added: class KeywordSplatAlignment
  • added: method KeywordSplatAlignment.deltas(_, _)
  • added: method SeparatorAlignment.deltas(_, _)
  • added: class DefNode < Struct.new(:node)
  • added: method DefNode.first_argument()
  • added: method DefNode.last_argument()
  • added: method DefNode.selector()
  • added: method Captures.use_transformed_argname?()
  • added: class CopDescription < Base
  • added: class CopEnabled < Base
  • added: class CreateEmptyFile < Base
  • added: class EmptyLineBetweenExpectOffenseAndCorrection < Base
  • added: class ExampleDescription < Base
  • added: class ExampleHeredocDelimiter < Base
  • added: class InheritDeprecatedCopClass < Base
  • added: class ItblockHandler < Base
  • added: class LambdaOrProc < Base
  • added: class LocationExists < Base
  • added: class LocationExpression < Base
  • added: class LocationLineEqualityComparison < Base
  • added: class MethodNameEndWith < Base
  • added: class NodeFirstOrLastArgument < Base
  • added: class NodeMatcherDirective < Base
  • added: class NodePatternGroups < Base
  • added: class NodeTypeGroup < Base
  • added: class NodeTypeMultiplePredicates < Base
  • added: class NumblockHandler < Base
  • added: class OnSendWithoutOnCSend < Base
  • added: class OperatorKeyword < Base
  • added: class ProcessedSourceBufferName < Base
  • added: class RedundantContextConfigParameter < Base
  • added: class RedundantDescribedClassAsSubject < Base
  • added: class RedundantExpectOffenseArguments < Base
  • added: class RedundantLetRuboCopConfigNew < Base
  • added: class RedundantMethodDispatchNode < Base
  • added: class RedundantSourceRange < Base
  • added: class SingleLineComparison < Base
  • added: class StyleDetectedApiUse < Base
  • added: class UndefinedConfig < Base
  • added: class UselessRestrictOnSend < Base
  • added: const CopDescription.COP_DESC_OFFENSE_REGEX
  • added: const CopDescription.EMPTY_COMMENT_LINE_REGEX
  • added: const CopDescription.MSG_STARTS_WITH_EMPTY_COMMENT_LINE
  • added: const CopDescription.MSG_STARTS_WITH_WRONG_WORD
  • added: const CopDescription.REPLACEMENT_REGEX
  • added: const CopDescription.SPECIAL_WORDS
  • added: const CopEnabled.MSG
  • added: const CopEnabled.MSG_HASH
  • added: const CopEnabled.RESTRICT_ON_SEND
  • added: const CreateEmptyFile.MSG
  • added: const CreateEmptyFile.RESTRICT_ON_SEND
  • added: const EmptyLineBetweenExpectOffenseAndCorrection.CORRECTION_EXPECTATION_METHODS
  • added: const EmptyLineBetweenExpectOffenseAndCorrection.MSG
  • added: const EmptyLineBetweenExpectOffenseAndCorrection.RESTRICT_ON_SEND
  • added: const ExampleDescription.EXAMPLE_DESCRIPTION_MAPPING
  • added: const ExampleDescription.EXPECT_CORRECTION_DESCRIPTION_MAPPING
  • added: const ExampleDescription.EXPECT_NO_CORRECTIONS_DESCRIPTION_MAPPING
  • added: const ExampleDescription.EXPECT_NO_OFFENSES_DESCRIPTION_MAPPING
  • added: const ExampleDescription.EXPECT_OFFENSE_DESCRIPTION_MAPPING
  • added: const ExampleDescription.MSG
  • added: const ExampleDescription.RESTRICT_ON_SEND
  • added: const ExampleHeredocDelimiter.EXPECTED_HEREDOC_DELIMITER
  • added: const ExampleHeredocDelimiter.MSG
  • added: const ExampleHeredocDelimiter.RESTRICT_ON_SEND
  • added: const InheritDeprecatedCopClass.MSG
  • added: const ItblockHandler.MSG
  • added: const LambdaOrProc.MSG
  • added: const LocationExists.MSG
  • added: const LocationExists.MSG_CORRECTABLE
  • added: const LocationExists.RESTRICT_ON_SEND
  • added: const LocationExpression.MSG
  • added: const LocationExpression.RESTRICT_ON_SEND
  • added: const LocationLineEqualityComparison.MSG
  • added: const LocationLineEqualityComparison.RESTRICT_ON_SEND
  • added: const MethodNameEndWith.MSG
  • added: const MethodNameEndWith.RESTRICT_ON_SEND
  • added: const MethodNameEndWith.SUGGEST_METHOD_FOR_SUFFIX
  • added: const NodeFirstOrLastArgument.MSG
  • added: const NodeFirstOrLastArgument.RESTRICT_ON_SEND
  • added: const NodeMatcherDirective.MSG
  • added: const NodeMatcherDirective.MSG_MISSING_SCOPE_SELF
  • added: const NodeMatcherDirective.MSG_TOO_MANY
  • added: const NodeMatcherDirective.MSG_WRONG_NAME
  • added: const NodeMatcherDirective.MSG_WRONG_SCOPE_SELF
  • added: const NodeMatcherDirective.REGEXP_METHOD
  • added: const NodeMatcherDirective.REGEXP_SCOPE
  • added: const NodeMatcherDirective.RESTRICT_ON_SEND
  • added: const NodePatternGroups.MSG
  • added: const NodePatternGroups.NODE_GROUPS
  • added: const NodePatternGroups.RESTRICT_ON_SEND
  • added: const NodeTypeGroup.MSG
  • added: const NodeTypeGroup.RESTRICT_ON_SEND
  • added: const NodeTypeMultiplePredicates.MSG_AND
  • added: const NodeTypeMultiplePredicates.MSG_OR
  • added: const NumblockHandler.MSG
  • added: const OnSendWithoutOnCSend.MSG
  • added: const OnSendWithoutOnCSend.RESTRICT_ON_SEND
  • added: const OperatorKeyword.MSG
  • added: const OperatorKeyword.PREFERRED_METHOD
  • added: const ProcessedSourceBufferName.MSG
  • added: const ProcessedSourceBufferName.RESTRICT_ON_SEND
  • added: const RedundantContextConfigParameter.MSG
  • added: const RedundantContextConfigParameter.RESTRICT_ON_SEND
  • added: const RedundantDescribedClassAsSubject.MSG
  • added: const RedundantExpectOffenseArguments.MSG
  • added: const RedundantExpectOffenseArguments.RESTRICT_ON_SEND
  • added: const RedundantLetRuboCopConfigNew.MSG
  • added: const RedundantMethodDispatchNode.MSG
  • added: const RedundantMethodDispatchNode.RESTRICT_ON_SEND
  • added: const RedundantSourceRange.MSG
  • added: const RedundantSourceRange.RESTRICT_ON_SEND
  • added: const SingleLineComparison.MSG
  • added: const SingleLineComparison.RESTRICT_ON_SEND
  • added: const StyleDetectedApiUse.MSG_FOR_CONDITIONAL_USE
  • added: const StyleDetectedApiUse.MSG_FOR_NEGATIVE_WITHOUT_POSITIVE
  • added: const StyleDetectedApiUse.MSG_FOR_POSITIVE_WITHOUT_NEGATIVE
  • added: const StyleDetectedApiUse.RESTRICT_ON_SEND
  • added: const UndefinedConfig.ALLOWED_CONFIGURATIONS
  • added: const UndefinedConfig.CONFIG
  • added: const UndefinedConfig.CONFIG_PATH
  • added: const UndefinedConfig.MSG
  • added: const UndefinedConfig.RESTRICT_ON_SEND
  • added: const UselessRestrictOnSend.MSG
  • added: method CopDescription.on_class(_)
  • added: method CopEnabled.on_send(_)
  • added: method CreateEmptyFile.on_send(_)
  • added: method EmptyLineBetweenExpectOffenseAndCorrection.on_send(_)
  • added: method ExampleDescription.on_send(_)
  • added: method ExampleHeredocDelimiter.on_send(_)
  • added: method InheritDeprecatedCopClass.on_class(_)
  • added: method ItblockHandler.on_def(_)
  • added: method LambdaOrProc.on_or(_)
  • added: method LocationExists.on_and(_)
  • added: method LocationExists.on_csend(_)
  • added: method LocationExists.on_send(_)
  • added: method LocationExpression.on_csend(_)
  • added: method LocationExpression.on_send(_)
  • added: method LocationLineEqualityComparison.on_send(_)
  • added: method MethodNameEndWith.on_csend(_)
  • added: method MethodNameEndWith.on_send(_)
  • added: method NodeFirstOrLastArgument.on_csend(_)
  • added: method NodeFirstOrLastArgument.on_send(_)
  • added: method NodeMatcherDirective.on_send(_)
  • added: method NodePatternGroups.after_send(_)
  • added: method NodePatternGroups.on_new_investigation()
  • added: method NodePatternGroups.on_send(_)
  • added: method NodeTypeGroup.on_csend(_)
  • added: method NodeTypeGroup.on_send(_)
  • added: method NodeTypeMultiplePredicates.on_and(_)
  • added: method NodeTypeMultiplePredicates.on_or(_)
  • added: method NumblockHandler.on_def(_)
  • added: method OnSendWithoutOnCSend.on_alias(_)
  • added: method OnSendWithoutOnCSend.on_def(_)
  • added: method OnSendWithoutOnCSend.on_investigation_end()
  • added: method OnSendWithoutOnCSend.on_new_investigation()
  • added: method OnSendWithoutOnCSend.on_send(_)
  • added: method OperatorKeyword.on_or(_)
  • added: method ProcessedSourceBufferName.on_send(_)
  • added: method RedundantContextConfigParameter.on_send(_)
  • added: method RedundantDescribedClassAsSubject.on_block(_)
  • added: method RedundantExpectOffenseArguments.on_send(_)
  • added: method RedundantLetRuboCopConfigNew.on_block(_)
  • added: method RedundantMethodDispatchNode.on_send(_)
  • added: method RedundantSourceRange.on_csend(_)
  • added: method RedundantSourceRange.on_send(_)
  • added: method SingleLineComparison.on_send(_)
  • added: method StyleDetectedApiUse.on_if(_)
  • added: method StyleDetectedApiUse.on_investigation_end()
  • added: method StyleDetectedApiUse.on_new_investigation()
  • added: method StyleDetectedApiUse.on_send(_)
  • added: method UndefinedConfig.on_new_investigation()
  • added: method UndefinedConfig.on_send(_)
  • added: method UselessRestrictOnSend.on_casgn(_)
  • added: class ASTProcessor
  • added: class ASTWalker
  • added: constructor ASTWalker()
  • added: method ASTProcessor.handler_missing(_)
  • added: method ASTProcessor.on_sequence(_)
  • added: method ASTProcessor.on_subsequence(_)
  • added: method ASTWalker.on_union(_)
  • added: method ASTWalker.reset!()
  • added: method ASTWalker.walk(_)
  • added: property ASTWalker.node_groups: reader
  • added: class NodeGroup < Struct.new(:name, :union, :node_types, :sequence?, :start_index, :offense_range, :ranges, :pipe, :other_elements?, keyword_init: true)
  • removed: const RescueEnsureAlignment.ANCESTOR_TYPES_WITH_ACCESS_MODIFIERS
  • removed: const RescueEnsureAlignment.RUBY_2_5_ANCESTOR_TYPES
  • removed: const SpaceInsideStringInterpolation.NO_SPACE_MSG
  • removed: const SpaceInsideStringInterpolation.SPACE_MSG
  • removed: method AccessModifierIndentation.autocorrect(_)
  • removed: method ArgumentAlignment.autocorrect(_)
  • removed: method ArrayAlignment.autocorrect(_)
  • removed: method AssignmentIndentation.autocorrect(_)
  • removed: method AssignmentIndentation.check_assignment(_, _)
  • removed: method AssignmentIndentation.leftmost_multiple_assignment(_)
  • removed: method BlockEndNewline.autocorrect(_)
  • removed: method ClosingParenthesisIndentation.autocorrect(_)
  • removed: method CommentIndentation.autocorrect(_)
  • removed: method CommentIndentation.investigate(_)
  • removed: method ElseAlignment.autocorrect(_)
  • removed: method EndOfLine.investigate(_)
  • removed: method FirstArgumentIndentation.autocorrect(_)
  • removed: method FirstArrayElementIndentation.autocorrect(_)
  • removed: method FirstHashElementIndentation.autocorrect(_)
  • removed: method FirstParameterIndentation.autocorrect(_)
  • removed: method IndentationConsistency.autocorrect(_)
  • removed: method IndentationStyle.autocorrect(_)
  • removed: method IndentationStyle.investigate(_)
  • removed: method IndentationWidth.autocorrect(_)
  • removed: method LineLength.autocorrect(_)
  • removed: method LineLength.investigate(_)
  • removed: method LineLength.investigate_post_walk(_)
  • removed: method MultilineMethodCallIndentation.autocorrect(_)
  • removed: method MultilineOperationIndentation.autocorrect(_)
  • removed: method ParameterAlignment.autocorrect(_)
  • removed: method SpaceAroundOperators.on_special_asgn(_)
  • removed: property HashAlignment.offences_by: accessor
  • changed: class AccessModifierIndentation < Cop → class AccessModifierIndentation < Base
  • changed: class ArgumentAlignment < Cop → class ArgumentAlignment < Base
  • changed: class ArrayAlignment < Cop → class ArrayAlignment < Base
  • changed: class AssignmentIndentation < Cop → class AssignmentIndentation < Base
  • changed: class BlockEndNewline < Cop → class BlockEndNewline < Base
  • changed: class ClosingParenthesisIndentation < Cop → class ClosingParenthesisIndentation < Base
  • changed: class CommentIndentation < Cop → class CommentIndentation < Base
  • changed: class ElseAlignment < Cop → class ElseAlignment < Base
  • changed: class EndOfLine < Cop → class EndOfLine < Base
  • changed: class FirstArgumentIndentation < Cop → class FirstArgumentIndentation < Base
  • changed: class FirstArrayElementIndentation < Cop → class FirstArrayElementIndentation < Base
  • changed: class FirstHashElementIndentation < Cop → class FirstHashElementIndentation < Base
  • changed: class FirstParameterIndentation < Cop → class FirstParameterIndentation < Base
  • changed: class IndentationConsistency < Cop → class IndentationConsistency < Base
  • changed: class IndentationStyle < Cop → class IndentationStyle < Base
  • changed: class IndentationWidth < Cop → class IndentationWidth < Base
  • changed: class LineLength < Cop → class LineLength < Base
  • changed: class MultilineMethodCallIndentation < Cop → class MultilineMethodCallIndentation < Base
  • changed: class MultilineOperationIndentation < Cop → class MultilineOperationIndentation < Base
  • changed: class ParameterAlignment < Cop → class ParameterAlignment < Base
  • changed: method EmptyLineBetweenDefs.autocorrect(_, _, _) → method EmptyLineBetweenDefs.autocorrect(_, _, _, _)
  • changed: method SpaceAfterComma.kind(_) → method SpaceAfterComma.kind(_, _)
  • changed: method SpaceAfterSemicolon.kind(_) → method SpaceAfterSemicolon.kind(_, _)
  • added: class EmptyLinesAfterModuleInclusion < Base
  • added: class LineContinuationLeadingSpace < Base
  • added: class LineContinuationSpacing < Base
  • added: class LineEndStringConcatenationIndentation < Base
  • added: class MultilineMethodParameterLineBreaks < Base
  • added: class RedundantLineBreak < Base
  • added: class SingleLineBlockChain < Base
  • added: class SpaceBeforeBrackets < Base
  • added: const EmptyLineAfterGuardClause.SIMPLECOV_COMMENT_PATTERN
  • added: const EmptyLinesAfterModuleInclusion.MODULE_INCLUSION_METHODS
  • added: const EmptyLinesAfterModuleInclusion.MSG
  • added: const EmptyLinesAfterModuleInclusion.RESTRICT_ON_SEND
  • added: const EmptyLinesAroundAccessModifier.RESTRICT_ON_SEND
  • added: const EmptyLinesAroundAttributeAccessor.RESTRICT_ON_SEND
  • added: const EmptyLinesAroundBody.LEADING_DOT_TYPES
  • added: const HashAlignment.SEPARATOR_ALIGNMENT_STYLES
  • added: const LineEndStringConcatenationIndentation.MSG_ALIGN
  • added: const LineEndStringConcatenationIndentation.MSG_INDENT
  • added: const LineEndStringConcatenationIndentation.PARENT_TYPES_FOR_INDENTED
  • added: const LineLength.ESCAPE_SEQUENCE_TAIL
  • added: const MultilineAssignmentLayout.BLOCK_TYPES
  • added: const MultilineMethodParameterLineBreaks.MSG
  • added: const RedundantLineBreak.MSG
  • added: const SingleLineBlockChain.MSG
  • added: const SpaceAfterNot.RESTRICT_ON_SEND
  • added: const SpaceAroundKeyword.RESTRICT_ON_SEND
  • added: const SpaceBeforeBrackets.MSG
  • added: const SpaceBeforeBrackets.RESTRICT_ON_SEND
  • added: const SpaceInLambdaLiteral.RESTRICT_ON_SEND
  • added: const SpaceInsideStringInterpolation.MSG
  • added: method BlockAlignment.on_itblock(_)
  • added: method BlockAlignment.on_numblock(_)
  • added: method BlockEndNewline.on_itblock(_)
  • added: method BlockEndNewline.on_numblock(_)
  • added: method CaseIndentation.on_case_match(_)
  • added: method ClassStructure.on_sclass(_)
  • added: method CommentIndentation.on_new_investigation()
  • added: method EmptyLineAfterMagicComment.validate_config()
  • added: method EmptyLinesAfterModuleInclusion.on_send(_)
  • added: method EmptyLinesAroundAccessModifier.on_itblock(_)
  • added: method EmptyLinesAroundAccessModifier.on_numblock(_)
  • added: method EmptyLinesAroundBlockBody.on_itblock(_)
  • added: method EmptyLinesAroundBlockBody.on_numblock(_)
  • added: method EmptyLinesAroundExceptionHandlingKeywords.on_block(_)
  • added: method EmptyLinesAroundExceptionHandlingKeywords.on_numblock(_)
  • added: method EndAlignment.on_case_match(_)
  • added: method EndAlignment.on_sclass(_)
  • added: method EndOfLine.on_new_investigation()
  • added: method FirstArgumentIndentation.on_super(_)
  • added: method HashAlignment.on_csend(_)
  • added: method HeredocArgumentClosingParenthesis.on_csend(_)
  • added: method HeredocIndentation.on_new_investigation()
  • added: method IndentationStyle.on_new_investigation()
  • added: method IndentationWidth.on_begin(_)
  • added: method IndentationWidth.on_case_match(_)
  • added: method IndentationWidth.on_itblock(_)
  • added: method IndentationWidth.on_numblock(_)
  • added: method LineContinuationLeadingSpace.on_dstr(_)
  • added: method LineContinuationSpacing.on_new_investigation()
  • added: method LineEndStringConcatenationIndentation.autocorrect(_, _)
  • added: method LineEndStringConcatenationIndentation.on_dstr(_)
  • added: method LineLength.on_csend(_)
  • added: method LineLength.on_def(_)
  • added: method LineLength.on_defs(_)
  • added: method LineLength.on_dstr(_)
  • added: method LineLength.on_investigation_end()
  • added: method LineLength.on_itblock(_)
  • added: method LineLength.on_new_investigation()
  • added: method LineLength.on_numblock(_)
  • added: method LineLength.on_str(_)
  • added: method MultilineBlockLayout.on_itblock(_)
  • added: method MultilineBlockLayout.on_numblock(_)
  • added: method MultilineMethodArgumentLineBreaks.on_csend(_)
  • added: method MultilineMethodCallBraceLayout.on_csend(_)
  • added: method MultilineMethodParameterLineBreaks.on_def(_)
  • added: method MultilineMethodParameterLineBreaks.on_defs(_)
  • added: method RedundantLineBreak.on_csend(_)
  • added: method RedundantLineBreak.on_lvasgn(_)
  • added: method RedundantLineBreak.on_new_investigation()
  • added: method RedundantLineBreak.on_send(_)
  • added: method SingleLineBlockChain.on_csend(_)
  • added: method SingleLineBlockChain.on_send(_)
  • added: method SpaceAfterSemicolon.space_missing?(_, _)
  • added: method SpaceAroundKeyword.on_case_match(_)
  • added: method SpaceAroundKeyword.on_if_guard(_)
  • added: method SpaceAroundKeyword.on_in_pattern(_)
  • added: method SpaceAroundKeyword.on_itblock(_)
  • added: method SpaceAroundKeyword.on_match_pattern(_)
  • added: method SpaceAroundKeyword.on_match_pattern_p(_)
  • added: method SpaceAroundKeyword.on_numblock(_)
  • added: method SpaceAroundKeyword.on_unless_guard(_)
  • added: method SpaceAroundOperators.on_def(_)
  • added: method SpaceAroundOperators.on_defs(_)
  • added: method SpaceAroundOperators.on_match_alt(_)
  • added: method SpaceAroundOperators.on_match_as(_)
  • added: method SpaceAroundOperators.on_match_pattern(_)
  • added: method SpaceAroundOperators.on_sclass(_)
  • added: method SpaceAroundOperators.on_setter_method(_)
  • added: method SpaceBeforeBlockBraces.on_itblock(_)
  • added: method SpaceBeforeBlockBraces.on_numblock(_)
  • added: method SpaceBeforeBrackets.on_send(_)
  • added: method SpaceInsideArrayLiteralBrackets.on_array_pattern(_)
  • added: method SpaceInsideBlockBraces.on_itblock(_)
  • added: method SpaceInsideBlockBraces.on_numblock(_)
  • added: method SpaceInsideHashLiteralBraces.on_hash_pattern(_)
  • added: method TrailingWhitespace.on_heredoc(_)
  • added: property HashAlignment.offenses_by: accessor
  • added: property HashAlignment.unalignable_styles: accessor
  • added: static method ClassStructure.autocorrect_incompatible_with()
  • added: static method ExtraSpacing.autocorrect_incompatible_with()
  • added: static method FirstArgumentIndentation.autocorrect_incompatible_with()
  • added: static method FirstMethodArgumentLineBreak.autocorrect_incompatible_with()
  • added: static method FirstMethodParameterLineBreak.autocorrect_incompatible_with()
  • added: static method LineContinuationLeadingSpace.autocorrect_incompatible_with()
  • added: static method LineLength.autocorrect_incompatible_with()
  • added: static method MultilineArrayBraceLayout.autocorrect_incompatible_with()
  • added: static method MultilineBlockLayout.autocorrect_incompatible_with()
  • added: static method MultilineHashBraceLayout.autocorrect_incompatible_with()
  • added: static method MultilineMethodCallBraceLayout.autocorrect_incompatible_with()
  • added: static method MultilineMethodDefinitionBraceLayout.autocorrect_incompatible_with()
  • added: static method SingleLineBlockChain.autocorrect_incompatible_with()
  • added: static method SpaceBeforeFirstArg.autocorrect_incompatible_with()
  • added: static method SpaceInsideBlockBraces.autocorrect_incompatible_with()
  • removed: const BinaryOperatorWithIdenticalOperands.MATH_OPERATORS
  • removed: const Debugger.RESTRICT_ON_SEND
  • removed: const DeprecatedClassMethods.DEPRECATED_METHODS_OBJECT
  • removed: const DuplicateMethods.RESTRICT_ON_SEND
  • removed: const DuplicateRequire.REQUIRE_METHODS
  • removed: const ErbNewArguments.MESSAGES
  • removed: const FloatComparison.MSG
  • removed: const InheritException.ILLEGAL_CLASSES
  • removed: const MissingSuper.OBJECT_LIFECYCLE_CALLBACKS
  • removed: const NumberConversion.RESTRICT_ON_SEND
  • removed: const RedundantSafeNavigation.NIL_SPECIFIC_METHODS
  • removed: const SafeNavigationConsistency.MSG
  • removed: const StructNewOverride.STRUCT_MEMBER_NAME_TYPES
  • removed: const UriRegexp.URI_CONSTANTS
  • removed: const Void.DEFINED_MSG
  • removed: const Void.VOID_CONTEXT_TYPES
  • removed: method OutOfRangeRegexpRef.on_send(_)
  • removed: method SafeNavigationConsistency.check(_)
  • removed: method SafeNavigationConsistency.on_csend(_)
  • removed: method StructNewOverride.on_send(_)
  • added: class AmbiguousAssignment < Base
  • added: class AmbiguousOperatorPrecedence < Base
  • added: class AmbiguousRange < Base
  • added: class ArgumentMismatch < Base
  • added: class ArrayLiteralInRegexp < Base
  • added: class ConstantOverwrittenInRescue < Base
  • added: class ConstantReassignment < Base
  • added: class CopDirectiveSyntax < Base
  • added: class DataDefineOverride < Base
  • added: class DeprecatedConstants < Base
  • added: class DeprecatedReference < Base
  • added: class DuplicateBranch < Base
  • added: class DuplicateMagicComment < Base
  • added: class DuplicateMatchPattern < Base
  • added: class DuplicateRegexpCharacterClassElement < Base
  • added: class DuplicateSetElement < Base
  • added: class EmptyBlock < Base
  • added: class EmptyClass < Base
  • added: class EmptyInPattern < Base
  • added: class HashNewWithKeywordArgumentsAsDefault < Base
  • added: class IncompatibleIoSelectWithFiberScheduler < Base
  • added: class ItWithoutArgumentsInBlock < Base
  • added: class LambdaWithoutLiteralBlock < Base
  • added: class LiteralAssignmentInCondition < Base
  • added: class MisplacedMagicComment < Base
  • added: class MixedCaseRange < Base
  • added: class NameTypo < Base
  • added: class NoReturnInBeginEndBlocks < Base
  • added: class NonAtomicFileOperation < Base
  • added: class NumberedParameterAssignment < Base
  • added: class NumericOperationWithConstantResult < Base
  • added: class OrAssignmentToConstant < Base
  • added: class RedundantDirGlobSort < Base
  • added: class RedundantRegexpQuantifiers < Base
  • added: class RedundantTypeConversion < Base
  • added: class RefinementImportMethods < Base
  • added: class RequireRangeParentheses < Base
  • added: class RequireRelativeSelfPath < Base
  • added: class SharedMutableDefault < Base
  • added: class SuperArgumentMismatch < Base
  • added: class SuppressedExceptionInNumberConversion < Base
  • added: class SymbolConversion < Base
  • added: class ToEnumArguments < Base
  • added: class TripleQuotes < Base
  • added: class UnescapedBracketInRegexp < Base
  • added: class UnexpectedBlockArity < Base
  • added: class UnmodifiedReduceAccumulator < Base
  • added: class UnreachablePatternBranch < Base
  • added: class UnusedPrivateMethod < Base
  • added: class UselessConstantScoping < Base
  • added: class UselessDefaultValueArgument < Base
  • added: class UselessDefined < Base
  • added: class UselessNumericOperation < Base
  • added: class UselessOr < Base
  • added: class UselessRescue < Base
  • added: class UselessRuby2Keywords < Base
  • added: const AmbiguousAssignment.MISTAKES
  • added: const AmbiguousAssignment.MSG
  • added: const AmbiguousBlockAssociation.BLOCK_METHODS
  • added: const AmbiguousBlockAssociation.MSG_DO_END_BLOCK
  • added: const AmbiguousOperatorPrecedence.MSG
  • added: const AmbiguousOperatorPrecedence.PRECEDENCE
  • added: const AmbiguousOperatorPrecedence.RESTRICT_ON_SEND
  • added: const AmbiguousRange.MSG
  • added: const ArgumentMismatch.MSG
  • added: const ArrayLiteralInRegexp.MSG_ALTERNATION
  • added: const ArrayLiteralInRegexp.MSG_CHARACTER_CLASS
  • added: const ArrayLiteralInRegexp.MSG_UNKNOWN
  • added: const BinaryOperatorWithIdenticalOperands.RESTRICT_ON_SEND
  • added: const ConstantOverwrittenInRescue.MSG
  • added: const ConstantReassignment.CROSS_FILE_MSG
  • added: const ConstantReassignment.MSG
  • added: const ConstantReassignment.RESTRICT_ON_SEND
  • added: const CopDirectiveSyntax.COMMON_MSG
  • added: const CopDirectiveSyntax.INVALID_KEYWORD_MSG
  • added: const CopDirectiveSyntax.INVALID_MODE_NAME_MSG
  • added: const CopDirectiveSyntax.INVALID_SIGNED_ARGS_MSG
  • added: const CopDirectiveSyntax.MALFORMED_COP_NAMES_MSG
  • added: const CopDirectiveSyntax.MISSING_COP_NAME_MSG
  • added: const CopDirectiveSyntax.MISSING_MODE_NAME_MSG
  • added: const CopDirectiveSyntax.MULTIPLE_DIRECTIVES_MSG
  • added: const CopDirectiveSyntax.NEAR_MISS_KEYWORD_REGEXP
  • added: const CopDirectiveSyntax.NEXT_DIRECTIVE_AT_EOL_MSG
  • added: const CopDirectiveSyntax.UNKNOWN_COP_MSG
  • added: const DataDefineOverride.DATA_METHOD_NAMES
  • added: const DataDefineOverride.MEMBER_NAME_TYPES
  • added: const DataDefineOverride.MSG
  • added: const DataDefineOverride.RESTRICT_ON_SEND
  • added: const DeprecatedClassMethods.DIR_ENV_FILE_CONSTANTS
  • added: const DeprecatedClassMethods.PREFERRED_METHODS
  • added: const DeprecatedConstants.DO_NOT_USE_MSG
  • added: const DeprecatedConstants.SUGGEST_GOOD_MSG
  • added: const DeprecatedOpenSSLConstant.NO_ARG_ALGORITHM
  • added: const DeprecatedOpenSSLConstant.RESTRICT_ON_SEND
  • added: const DeprecatedReference.CONSTANT_MSG
  • added: const DeprecatedReference.DEPRECATED_TAG
  • added: const DeprecatedReference.DEPRECATION_DETAIL
  • added: const DeprecatedReference.METHOD_MSG
  • added: const DuplicateBranch.MSG
  • added: const DuplicateMagicComment.MSG
  • added: const DuplicateMatchPattern.MSG
  • added: const DuplicateMethods.INDEXABLE_METHOD_NAME
  • added: const DuplicateRegexpCharacterClassElement.MSG_REPEATED_ELEMENT
  • added: const DuplicateSetElement.MSG
  • added: const DuplicateSetElement.RESTRICT_ON_SEND
  • added: const EmptyBlock.MSG
  • added: const EmptyClass.CLASS_MSG
  • added: const EmptyClass.METACLASS_MSG
  • added: const EmptyInPattern.MSG
  • added: const ErbNewArguments.MESSAGE_EOUTVAR
  • added: const ErbNewArguments.MESSAGE_SAFE_LEVEL
  • added: const ErbNewArguments.MESSAGE_TRIM_MODE
  • added: const FloatComparison.MSG_CASE
  • added: const FloatComparison.MSG_EQUALITY
  • added: const FloatComparison.MSG_INEQUALITY
  • added: const HashNewWithKeywordArgumentsAsDefault.MSG
  • added: const HashNewWithKeywordArgumentsAsDefault.RESTRICT_ON_SEND
  • added: const IncompatibleIoSelectWithFiberScheduler.MSG
  • added: const IncompatibleIoSelectWithFiberScheduler.RESTRICT_ON_SEND
  • added: const InheritException.INDIRECT_MSG
  • added: const ItWithoutArgumentsInBlock.MSG
  • added: const ItWithoutArgumentsInBlock.RESTRICT_ON_SEND
  • added: const LambdaWithoutLiteralBlock.MSG
  • added: const LambdaWithoutLiteralBlock.RESTRICT_ON_SEND
  • added: const LiteralAsCondition.RESTRICT_ON_SEND
  • added: const LiteralAssignmentInCondition.MSG
  • added: const MisplacedMagicComment.MSG_ABOVE_SHEBANG
  • added: const MisplacedMagicComment.MSG_AFTER_CODE
  • added: const MisplacedMagicComment.MSG_ENCODING
  • added: const MixedCaseRange.MSG
  • added: const MixedCaseRange.RANGES
  • added: const MultipleComparison.SET_OPERATION_OPERATORS
  • added: const NameTypo.CONSTANT_MSG
  • added: const NameTypo.LITERAL_IDENTIFIER_PATTERN
  • added: const NameTypo.METHOD_MEMBER_REGEXP
  • added: const NameTypo.METHOD_MSG
  • added: const NestedPercentLiteral.FORMAT_SEQUENCE
  • added: const NoReturnInBeginEndBlocks.MSG
  • added: const NonAtomicFileOperation.MAKE_FORCE_METHODS
  • added: const NonAtomicFileOperation.MAKE_METHODS
  • added: const NonAtomicFileOperation.MSG_CHANGE_FORCE_METHOD
  • added: const NonAtomicFileOperation.MSG_REMOVE_FILE_EXIST_CHECK
  • added: const NonAtomicFileOperation.RECURSIVE_REMOVE_METHODS
  • added: const NonAtomicFileOperation.REMOVE_FORCE_METHODS
  • added: const NonAtomicFileOperation.REMOVE_METHODS
  • added: const NonAtomicFileOperation.RESTRICT_ON_SEND
  • added: const NumberConversion.CONVERSION_METHODS
  • added: const NumberConversion.METHODS
  • added: const NumberedParameterAssignment.LVAR_MSG
  • added: const NumberedParameterAssignment.NUMBERED_PARAMETER_RANGE
  • added: const NumberedParameterAssignment.NUM_PARAM_MSG
  • added: const NumericOperationWithConstantResult.MSG
  • added: const NumericOperationWithConstantResult.RESTRICT_ON_SEND
  • added: const OrAssignmentToConstant.MSG
  • added: const PercentStringArray.MSG_SPLIT_STRING
  • added: const RedundantCopDisableDirective.DEPARTMENT_MARKER
  • added: const RedundantCopEnableDirective.MSG_ORPHAN_POP
  • added: const RedundantDirGlobSort.GLOB_METHODS
  • added: const RedundantDirGlobSort.MSG
  • added: const RedundantDirGlobSort.RESTRICT_ON_SEND
  • added: const RedundantRegexpQuantifiers.MSG_REDUNDANT_QUANTIFIER
  • added: const RedundantRequireStatement.RUBY_22_LOADED_FEATURES
  • added: const RedundantSafeNavigation.GUARANTEED_INSTANCE_METHODS
  • added: const RedundantSafeNavigation.MSG_LITERAL
  • added: const RedundantSafeNavigation.MSG_NON_NIL
  • added: const RedundantSafeNavigation.NIL_METHODS
  • added: const RedundantSafeNavigation.SNAKE_CASE
  • added: const RedundantStringCoercion.RESTRICT_ON_SEND
  • added: const RedundantTypeConversion.CONVERSION_METHODS
  • added: const RedundantTypeConversion.MSG
  • added: const RedundantTypeConversion.RESTRICT_ON_SEND
  • added: const RedundantTypeConversion.TYPED_METHODS
  • added: const RefinementImportMethods.MSG
  • added: const RefinementImportMethods.MSG_REMOVED
  • added: const RefinementImportMethods.RESTRICT_ON_SEND
  • added: const RequireRangeParentheses.MSG
  • added: const RequireRelativeSelfPath.MSG
  • added: const RequireRelativeSelfPath.RESTRICT_ON_SEND
  • added: const ReturnInVoidContext.SCOPE_CHANGING_METHODS
  • added: const SafeNavigationChain.PLUS_MINUS_METHODS
  • added: const SafeNavigationConsistency.USE_DOT_MSG
  • added: const SafeNavigationConsistency.USE_SAFE_NAVIGATION_MSG
  • added: const SharedMutableDefault.MSG
  • added: const SharedMutableDefault.RESTRICT_ON_SEND
  • added: const SuperArgumentMismatch.BUILTIN_ROOTS
  • added: const SuperArgumentMismatch.CONTEXT_CHANGING_BLOCKS
  • added: const SuperArgumentMismatch.MSG
  • added: const SuppressedExceptionInNumberConversion.EXPECTED_EXCEPTION_CLASSES
  • added: const SuppressedExceptionInNumberConversion.MSG
  • added: const SymbolConversion.MSG
  • added: const SymbolConversion.MSG_CONSISTENCY
  • added: const SymbolConversion.RESTRICT_ON_SEND
  • added: const Syntax.LEVELS
  • added: const ToEnumArguments.MSG
  • added: const ToEnumArguments.RESTRICT_ON_SEND
  • added: const TrailingCommaInAttributeDeclaration.RESTRICT_ON_SEND
  • added: const TripleQuotes.MSG
  • added: const UnescapedBracketInRegexp.MSG
  • added: const UnescapedBracketInRegexp.RESTRICT_ON_SEND
  • added: const UnexpectedBlockArity.MSG
  • added: const UnmodifiedReduceAccumulator.MSG
  • added: const UnmodifiedReduceAccumulator.MSG_INDEX
  • added: const UnreachableLoop.CONTINUE_KEYWORDS
  • added: const UnreachablePatternBranch.MSG
  • added: const UnreachablePatternBranch.MSG_ELSE
  • added: const UnusedPrivateMethod.IDENTIFIER_PATTERN
  • added: const UnusedPrivateMethod.IMPLICITLY_INVOKED_METHODS
  • added: const UnusedPrivateMethod.MSG
  • added: const UnusedPrivateMethod.NAME_PREFIX_PATTERN
  • added: const UselessConstantScoping.MSG
  • added: const UselessDefaultValueArgument.MSG
  • added: const UselessDefaultValueArgument.RESTRICT_ON_SEND
  • added: const UselessDefined.MSG
  • added: const UselessDefined.TYPES
  • added: const UselessNumericOperation.MSG
  • added: const UselessNumericOperation.RESTRICT_ON_SEND
  • added: const UselessOr.MSG
  • added: const UselessOr.TRUTHY_RETURN_VALUE_METHODS
  • added: const UselessRescue.MSG
  • added: const UselessRuby2Keywords.MSG
  • added: const UselessRuby2Keywords.RESTRICT_ON_SEND
  • added: const Void.CONST_MSG
  • added: const Void.EXPRESSION_MSG
  • added: const Void.METHODS_REPLACEABLE_BY_EACH
  • added: const Void.NONMUTATING_METHODS_WITH_BANG_VERSION
  • added: constructor UnreachableCode(_ = …, _ = …)
  • added: method AmbiguousAssignment.on_csend()
  • added: method AmbiguousBlockAssociation.on_block(_)
  • added: method AmbiguousBlockAssociation.on_itblock(_)
  • added: method AmbiguousBlockAssociation.on_numblock(_)
  • added: method AmbiguousOperatorPrecedence.on_and(_)
  • added: method AmbiguousOperatorPrecedence.on_send(_)
  • added: method AmbiguousRange.on_erange(_)
  • added: method AmbiguousRange.on_irange(_)
  • added: method ArgumentMismatch.on_csend(_)
  • added: method ArgumentMismatch.on_send(_)
  • added: method ArrayLiteralInRegexp.on_interpolation(_)
  • added: method ConstantOverwrittenInRescue.on_resbody(_)
  • added: method ConstantReassignment.on_casgn(_)
  • added: method ConstantReassignment.on_class(_)
  • added: method ConstantReassignment.on_module(_)
  • added: method ConstantReassignment.on_send(_)
  • added: method CopDirectiveSyntax.on_new_investigation()
  • added: method DataDefineOverride.on_send(_)
  • added: method DeprecatedConstants.on_const(_)
  • added: method DeprecatedReference.on_const(_)
  • added: method DeprecatedReference.on_csend(_)
  • added: method DeprecatedReference.on_new_investigation()
  • added: method DeprecatedReference.on_send(_)
  • added: method DuplicateBranch.on_branching_statement(_)
  • added: method DuplicateBranch.on_case(_)
  • added: method DuplicateBranch.on_case_match(_)
  • added: method DuplicateBranch.on_if(_)
  • added: method DuplicateBranch.on_rescue(_)
  • added: method DuplicateMagicComment.on_new_investigation()
  • added: method DuplicateMatchPattern.on_case_match(_)
  • added: method DuplicateMethods.on_new_investigation()
  • added: method DuplicateRegexpCharacterClassElement.each_repeated_character_class_element_loc(_)
  • added: method DuplicateRegexpCharacterClassElement.on_regexp(_)
  • added: method DuplicateSetElement.on_csend(_)
  • added: method DuplicateSetElement.on_send(_)
  • added: method EmptyBlock.on_block(_)
  • added: method EmptyClass.on_class(_)
  • added: method EmptyClass.on_sclass(_)
  • added: method EmptyInPattern.on_case_match(_)
  • added: method FloatComparison.on_case(_)
  • added: method FloatComparison.on_csend(_)
  • added: method HashCompareByIdentity.on_csend(_)
  • added: method HashNewWithKeywordArgumentsAsDefault.on_send(_)
  • added: method IncompatibleIoSelectWithFiberScheduler.on_send(_)
  • added: method InterpolationCheck.on_dstr(_)
  • added: method ItWithoutArgumentsInBlock.deprecated_it_method?(_)
  • added: method ItWithoutArgumentsInBlock.on_send(_)
  • added: method LambdaWithoutLiteralBlock.on_send(_)
  • added: method LiteralAsCondition.on_and(_)
  • added: method LiteralAsCondition.on_case_match(_)
  • added: method LiteralAsCondition.on_or(_)
  • added: method LiteralAssignmentInCondition.on_if(_)
  • added: method LiteralAssignmentInCondition.on_until(_)
  • added: method LiteralAssignmentInCondition.on_while(_)
  • added: method MisplacedMagicComment.on_new_investigation()
  • added: method MixedCaseRange.each_unsafe_regexp_range(_)
  • added: method MixedCaseRange.on_erange(_)
  • added: method MixedCaseRange.on_irange(_)
  • added: method MixedCaseRange.on_regexp(_)
  • added: method NameTypo.on_const(_)
  • added: method NameTypo.on_csend(_)
  • added: method NameTypo.on_new_investigation()
  • added: method NameTypo.on_send(_)
  • added: method NextWithoutAccumulator.on_itblock(_)
  • added: method NextWithoutAccumulator.on_numblock(_)
  • added: method NoReturnInBeginEndBlocks.on_casgn(_)
  • added: method NoReturnInBeginEndBlocks.on_cvasgn(_)
  • added: method NoReturnInBeginEndBlocks.on_gvasgn(_)
  • added: method NoReturnInBeginEndBlocks.on_ivasgn(_)
  • added: method NoReturnInBeginEndBlocks.on_lvasgn(_)
  • added: method NoReturnInBeginEndBlocks.on_op_asgn(_)
  • added: method NoReturnInBeginEndBlocks.on_or_asgn(_)
  • added: method NonAtomicFileOperation.on_send(_)
  • added: method NonDeterministicRequireOrder.on_numblock(_)
  • added: method NumberConversion.on_csend(_)
  • added: method NumberedParameterAssignment.on_lvasgn(_)
  • added: method NumericOperationWithConstantResult.on_csend(_)
  • added: method NumericOperationWithConstantResult.on_op_asgn(_)
  • added: method NumericOperationWithConstantResult.on_send(_)
  • added: method OrAssignmentToConstant.on_or_asgn(_)
  • added: method OutOfRangeRegexpRef.after_csend(_)
  • added: method OutOfRangeRegexpRef.after_send(_)
  • added: method OutOfRangeRegexpRef.on_in_pattern(_)
  • added: method RedundantDirGlobSort.on_send(_)
  • added: method RedundantRegexpQuantifiers.on_regexp(_)
  • added: method RedundantSafeNavigation.on_or(_)
  • added: method RedundantStringCoercion.on_send(_)
  • added: method RedundantTypeConversion.on_csend(_)
  • added: method RedundantTypeConversion.on_send(_)
  • added: method RedundantWithIndex.on_itblock(_)
  • added: method RedundantWithIndex.on_numblock(_)
  • added: method RedundantWithObject.on_itblock(_)
  • added: method RedundantWithObject.on_numblock(_)
  • added: method RefinementImportMethods.on_send(_)
  • added: method RequireRangeParentheses.on_erange(_)
  • added: method RequireRangeParentheses.on_irange(_)
  • added: method RequireRelativeSelfPath.on_send(_)
  • added: method SafeNavigationConsistency.on_and(_)
  • added: method SafeNavigationConsistency.on_or(_)
  • added: method SelfAssignment.on_csend(_)
  • added: method SelfAssignment.on_send(_)
  • added: method SharedMutableDefault.on_send(_)
  • added: method SuperArgumentMismatch.on_super(_)
  • added: method SuppressedExceptionInNumberConversion.on_rescue(_)
  • added: method SymbolConversion.dstr_correction(_)
  • added: method SymbolConversion.on_hash(_)
  • added: method SymbolConversion.on_send(_)
  • added: method SymbolConversion.on_sym(_)
  • added: method SymbolConversion.symbol_conversion_correction(_)
  • added: method ToEnumArguments.on_send(_)
  • added: method ToJSON.on_defs(_)
  • added: method TripleQuotes.on_dstr(_)
  • added: method UnescapedBracketInRegexp.on_regexp(_)
  • added: method UnescapedBracketInRegexp.on_send(_)
  • added: method UnexpectedBlockArity.on_block(_)
  • added: method UnexpectedBlockArity.on_itblock(_)
  • added: method UnexpectedBlockArity.on_numblock(_)
  • added: method UnmodifiedReduceAccumulator.on_block(_)
  • added: method UnmodifiedReduceAccumulator.on_itblock(_)
  • added: method UnmodifiedReduceAccumulator.on_numblock(_)
  • added: method UnreachableCode.after_block(_)
  • added: method UnreachableCode.on_block(_)
  • added: method UnreachableCode.on_itblock(_)
  • added: method UnreachableCode.on_numblock(_)
  • added: method UnreachableLoop.on_itblock(_)
  • added: method UnreachableLoop.on_numblock(_)
  • added: method UnreachablePatternBranch.on_case_match(_)
  • added: method UnusedPrivateMethod.on_def(_)
  • added: method UnusedPrivateMethod.on_new_investigation()
  • added: method UselessAccessModifier.on_begin(_)
  • added: method UselessAccessModifier.on_itblock(_)
  • added: method UselessAccessModifier.on_numblock(_)
  • added: method UselessAssignment.autocorrect(_, _)
  • added: method UselessAssignment.chained_assignment?(_)
  • added: method UselessAssignment.check_for_unused_assignment(_, _)
  • added: method UselessAssignment.ignored_assignment?(_, _, _)
  • added: method UselessAssignment.offense_range(_)
  • added: method UselessAssignment.remove_exception_assignment_part(_, _)
  • added: method UselessAssignment.remove_local_variable_assignment_part(_, _)
  • added: method UselessAssignment.remove_trailing_character_from_operator(_, _)
  • added: method UselessAssignment.rename_variable_with_underscore(_, _)
  • added: method UselessAssignment.replace_named_capture_group_with_non_capturing_group(_, _, _)
  • added: method UselessAssignment.sequential_assignment?(_)
  • added: method UselessAssignment.uncorrectable_assignment?(_)
  • added: method UselessAssignment.variable_in_loop_condition?(_, _)
  • added: method UselessConstantScoping.on_casgn(_)
  • added: method UselessDefaultValueArgument.on_csend(_)
  • added: method UselessDefaultValueArgument.on_send(_)
  • added: method UselessDefined.on_defined?(_)
  • added: method UselessNumericOperation.on_csend(_)
  • added: method UselessNumericOperation.on_op_asgn(_)
  • added: method UselessNumericOperation.on_send(_)
  • added: method UselessOr.on_or(_)
  • added: method UselessRescue.on_rescue(_)
  • added: method UselessRuby2Keywords.on_send(_)
  • added: method Void.on_ensure(_)
  • added: method Void.on_itblock(_)
  • added: method Void.on_numblock(_)
  • added: module Utils
  • added: static method AmbiguousOperator.autocorrect_incompatible_with()
  • added: static method ConstantOverwrittenInRescue.autocorrect_incompatible_with()
  • added: static method HeredocMethodCallPosition.autocorrect_incompatible_with()
  • added: static method UnusedMethodArgument.autocorrect_incompatible_with()
  • added: static property UnusedPrivateMethod.cached_reference_names: accessor
  • removed: class DeprecatedClassMethod
  • removed: constructor DeprecatedClassMethod(deprecated:, replacement:, class_constant: …)
  • removed: method DeprecatedClassMethod.class_nodes()
  • removed: property DeprecatedClassMethod.class_constant: reader
  • removed: property DeprecatedClassMethod.deprecated_method: reader
  • removed: property DeprecatedClassMethod.replacement_method: reader
  • added: class REQUIRE_METHODS < Set.new(%i[require require_relative])
  • added: class NilReceiverChecker
  • added: const NilReceiverChecker.NIL_METHODS
  • added: constructor NilReceiverChecker(_, _)
  • added: method NilReceiverChecker.cant_be_nil?()
  • added: class CollectionLiteralLength < Base
  • added: const ClassLength.LABEL
  • added: const CollectionLiteralLength.MSG
  • added: const CollectionLiteralLength.RESTRICT_ON_SEND
  • added: const ModuleLength.LABEL
  • added: const ParameterLists.OPTIONAL_PARAMETERS_MSG
  • added: method BlockLength.on_itblock(_)
  • added: method BlockLength.on_numblock(_)
  • added: method ClassLength.on_sclass(_)
  • added: method CollectionLiteralLength.on_array(_)
  • added: method CollectionLiteralLength.on_hash(_)
  • added: method CollectionLiteralLength.on_index(_)
  • added: method CollectionLiteralLength.on_send(_)
  • added: method MethodLength.on_itblock(_)
  • added: method MethodLength.on_numblock(_)
  • added: method ParameterLists.on_def(_)
  • added: method ParameterLists.on_defs(_)
  • changed: static method AbcSizeCalculator.calculate(_) → static method AbcSizeCalculator.calculate(_, discount_repeated_attributes: …)
  • added: const RepeatedAttributeDiscount.VAR_SETTER_TO_GETTER
  • added: constructor RepeatedAttributeDiscount(_, discount_repeated_attributes: …)
  • added: method RepeatedAttributeDiscount.calculate_node(_)
  • added: method RepeatedAttributeDiscount.discount_repeated_attributes?()
  • added: method RepeatedAttributeDiscount.evaluate_branch_nodes(_)
  • added: module RepeatedAttributeDiscount
  • removed: class PredicateName < Base
  • removed: method MemoizedInstanceVariableName.on_def(_)
  • removed: method MemoizedInstanceVariableName.on_defs(_)
  • removed: method PredicateName.on_def(_)
  • removed: method PredicateName.on_defs(_)
  • removed: method PredicateName.on_send(_)
  • added: class BlockForwarding < Base
  • added: class InclusiveLanguage < Base
  • added: class PredicateMethod < Base
  • added: class PredicatePrefix < Base
  • added: const BlockForwarding.MSG
  • added: const InclusiveLanguage.EMPTY_ARRAY
  • added: const InclusiveLanguage.MSG
  • added: const InclusiveLanguage.MSG_FOR_FILE_PATH
  • added: const MemoizedInstanceVariableName.DYNAMIC_DEFINE_METHODS
  • added: const MemoizedInstanceVariableName.INITIALIZE_METHODS
  • added: const MethodName.MSG_FORBIDDEN
  • added: const MethodName.OPERATOR_METHODS
  • added: const MethodName.RESTRICT_ON_SEND
  • added: const PredicateMethod.MSG_NON_PREDICATE
  • added: const PredicateMethod.MSG_PREDICATE
  • added: const VariableName.MSG_FORBIDDEN
  • added: constructor InclusiveLanguage(_ = …, _ = …)
  • added: method BlockForwarding.on_def(_)
  • added: method BlockForwarding.on_defs(_)
  • added: method InclusiveLanguage.on_new_investigation()
  • added: method MemoizedInstanceVariableName.on_defined?(_)
  • added: method MemoizedInstanceVariableName.on_or_asgn(_)
  • added: method MethodName.on_alias(_)
  • added: method PredicateMethod.on_def(_)
  • added: method PredicateMethod.on_defs(_)
  • added: method PredicatePrefix.on_def(_)
  • added: method PredicatePrefix.on_defs(_)
  • added: method PredicatePrefix.on_send(_)
  • added: method PredicatePrefix.validate_config()
  • added: method VariableName.on_gvasgn(_)
  • added: method VariableName.valid_name?(_, _, _ = …)
  • added: method VariableNumber.on_def(_)
  • added: method VariableNumber.on_defs(_)
  • added: method VariableNumber.on_gvasgn(_)
  • added: method VariableNumber.on_sym(_)
  • added: method VariableNumber.valid_name?(_, _, _ = …)
  • added: static method BlockForwarding.autocorrect_incompatible_with()
  • added: class WordLocation < Struct.new(:word, :position)
  • added: class Correction < Struct.new(:begin_pos, :end_pos, :replacement)
  • added: method Correction.length()
  • added: module NOT_GIVEN
  • added: class CompoundHash < Base
  • added: class IoMethods < Base
  • added: const CompoundHash.COMBINATOR_IN_HASH_MSG
  • added: const CompoundHash.MONUPLE_HASH_MSG
  • added: const CompoundHash.REDUNDANT_HASH_MSG
  • added: const CompoundHash.RESTRICT_ON_SEND
  • added: const IoMethods.MSG
  • added: const IoMethods.RESTRICT_ON_SEND
  • added: method CompoundHash.contained_in_hash_method?(_)
  • added: method CompoundHash.on_csend(_)
  • added: method CompoundHash.on_op_asgn(_)
  • added: method CompoundHash.on_send(_)
  • added: method CompoundHash.outer_bad_hash_combinator?(_)
  • added: method IoMethods.on_send(_)
  • removed: class DoubleCopDisableDirective < Base
  • removed: const AccessorGrouping.ACCESSOR_METHODS
  • removed: const AutoResourceCleanup.TARGET_METHODS
  • removed: const CommentAnnotation.MSG
  • removed: const ConditionalAssignment.INDENTATION_WIDTH
  • removed: const ConditionalAssignment.LINE_LENGTH
  • removed: const ConditionalAssignment.MAX
  • removed: const ConditionalAssignment.WIDTH
  • removed: const DoubleCopDisableDirective.MSG
  • removed: const Encoding.MSG_UNNECESSARY
  • removed: const IfWithSemicolon.MSG
  • removed: const MultilineIfThen.NON_MODIFIER_THEN
  • removed: const MultilineTernaryOperator.MSG
  • removed: const OneLineConditional.MSG
  • removed: const OptionalBooleanParameter.BOOLEAN_TYPES
  • removed: const PerlBackrefs.MSG
  • removed: const RedundantSortBy.MSG
  • removed: constructor MethodCallWithArgsParentheses(*)
  • removed: method DoubleCopDisableDirective.on_new_investigation()
  • removed: method HashSyntax.autocorrect(_)
  • removed: method LambdaCall.autocorrect(_, _)
  • removed: method MethodCallWithArgsParentheses.autocorrect(_)
  • removed: method MutableConstant.on_or_asgn(_)
  • removed: method NumericLiterals.autocorrect(_)
  • removed: method RedundantException.fix_compact(_)
  • removed: method RedundantException.fix_exploded(_)
  • removed: method RescueModifier.autocorrect(_)
  • removed: method SafeNavigation.check_node(_)
  • removed: method SafeNavigation.use_var_only_in_unless_modifier?(_, _)
  • removed: method SignalException.on_new_investigation()
  • removed: method StringLiterals.autocorrect(_)
  • removed: method TernaryParentheses.only_closing_parenthesis_is_last_line?(_)
  • removed: module AnnotationComment
  • changed: class CharacterLiteral < Cop → class CharacterLiteral < Base
  • changed: class HashSyntax < Cop → class HashSyntax < Base
  • changed: class IpAddresses < Cop → class IpAddresses < Base
  • changed: class NumericLiterals < Cop → class NumericLiterals < Base
  • changed: class RescueModifier < Cop → class RescueModifier < Base
  • changed: class StringLiterals < Cop → class StringLiterals < Base
  • changed: class StringLiteralsInInterpolation < Cop → class StringLiteralsInInterpolation < Base
  • changed: method CharacterLiteral.autocorrect(_) → method CharacterLiteral.autocorrect(_, _)
  • changed: method StringLiteralsInInterpolation.autocorrect(_) → method StringLiteralsInInterpolation.autocorrect(_, _)
  • changed: method UnlessElse.range_between_condition_and_else(_, _) → method UnlessElse.range_between_condition_and_else(_)
  • added: class AmbiguousEndlessMethodDefinition < Base
  • added: class ArgumentsForwarding < Base
  • added: class ArrayFirstLast < Base
  • added: class ArrayIntersect < Base
  • added: class ArrayIntersectWithSingleElement < Base
  • added: class BitwisePredicate < Base
  • added: class CollectionCompact < Base
  • added: class CollectionQuerying < Base
  • added: class CombinableDefined < Base
  • added: class ComparableBetween < Base
  • added: class ComparableClamp < Base
  • added: class ConcatArrayLiterals < Base
  • added: class DataInheritance < Base
  • added: class DigChain < Base
  • added: class DirEmpty < Base
  • added: class DirectiveScope < Base
  • added: class DocumentDynamicEvalDefinition < Base
  • added: class EmptyClassDefinition < Base
  • added: class EmptyHeredoc < Base
  • added: class EmptyStringInsideInterpolation < Base
  • added: class EndlessMethod < Base
  • added: class EnvHome < Base
  • added: class ExactRegexpMatch < Base
  • added: class FetchEnvVar < Base
  • added: class FileEmpty < Base
  • added: class FileNull < Base
  • added: class FileOpen < Base
  • added: class FileRead < Base
  • added: class FileTouch < Base
  • added: class FileWrite < Base
  • added: class HashConversion < Base
  • added: class HashExcept < Base
  • added: class HashFetchChain < Base
  • added: class HashLookupMethod < Base
  • added: class HashSlice < Base
  • added: class IfWithBooleanLiteralBranches < Base
  • added: class InPatternThen < Base
  • added: class InvertibleUnlessCondition < Base
  • added: class ItAssignment < Base
  • added: class ItBlockParameter < Base
  • added: class KeywordArgumentsMerging < Base
  • added: class MagicCommentFormat < Base
  • added: class MapCompactWithConditionalBlock < Base
  • added: class MapIntoArray < Base
  • added: class MapJoin < Base
  • added: class MapToHash < Base
  • added: class MapToSet < Base
  • added: class MinMaxComparison < Base
  • added: class ModuleMemberExistenceCheck < Base
  • added: class MultilineInPatternThen < Base
  • added: class NegatedIfElseCondition < Base
  • added: class NegativeArrayIndex < Base
  • added: class NestedFileDirname < Base
  • added: class NilLambda < Base
  • added: class NumberedParameters < Base
  • added: class NumberedParametersLimit < Base
  • added: class ObjectThen < Base
  • added: class OneClassPerFile < Base
  • added: class OpenStructUse < Base
  • added: class OperatorMethodCall < Base
  • added: class PartitionInsteadOfDoubleSelect < Base
  • added: class PredicateWithKind < Base
  • added: class QuotedSymbols < Base
  • added: class ReduceToHash < Base
  • added: class RedundantArgument < Base
  • added: class RedundantArrayConstructor < Base
  • added: class RedundantArrayFlatten < Base
  • added: class RedundantConstantBase < Base
  • added: class RedundantCurrentDirectoryInPath < Base
  • added: class RedundantDoubleSplatHashBraces < Base
  • added: class RedundantEach < Base
  • added: class RedundantFilterChain < Base
  • added: class RedundantFormat < Base
  • added: class RedundantHeredocDelimiterQuotes < Base
  • added: class RedundantInitialize < Base
  • added: class RedundantInterpolationUnfreeze < Base
  • added: class RedundantLineContinuation < Base
  • added: class RedundantMinMaxBy < Base
  • added: class RedundantRegexpArgument < Base
  • added: class RedundantRegexpConstructor < Base
  • added: class RedundantSelfAssignmentBranch < Base
  • added: class RedundantStringEscape < Base
  • added: class RedundantStructKeywordInit < Base
  • added: class RequireOrder < Base
  • added: class ReturnNilInPredicateMethodDefinition < Base
  • added: class ReverseFind < Base
  • added: class SafeNavigationChainLength < Base
  • added: class SelectByKind < Base
  • added: class SelectByRange < Base
  • added: class SelectByRegexp < Base
  • added: class SendWithLiteralMethodName < Base
  • added: class SingleLineDoEndBlock < Base
  • added: class StaticClass < Base
  • added: class StringChars < Base
  • added: class SuperArguments < Base
  • added: class SuperWithArgsParentheses < Base
  • added: class SwapValues < Base
  • added: class TallyMethod < Base
  • added: class TimeNow < Base
  • added: class TopLevelMethodDefinition < Base
  • added: class UnlessLogicalOperators < Base
  • added: class YAMLFileRead < Base
  • added: class YodaExpression < Base
  • added: const AmbiguousEndlessMethodDefinition.MSG
  • added: const ArgumentsForwarding.ARGS_MSG
  • added: const ArgumentsForwarding.BLOCK_MSG
  • added: const ArgumentsForwarding.FORWARDING_LVAR_TYPES
  • added: const ArgumentsForwarding.FORWARDING_MSG
  • added: const ArgumentsForwarding.KWARGS_MSG
  • added: const ArrayFirstLast.MSG
  • added: const ArrayFirstLast.RESTRICT_ON_SEND
  • added: const ArrayIntersect.ACTIVE_SUPPORT_PREDICATES
  • added: const ArrayIntersect.ARRAY_SIZE_METHODS
  • added: const ArrayIntersect.MSG
  • added: const ArrayIntersect.NEGATED_METHODS
  • added: const ArrayIntersect.PREDICATES
  • added: const ArrayIntersect.RESTRICT_ON_SEND
  • added: const ArrayIntersect.STRAIGHT_METHODS
  • added: const ArrayIntersectWithSingleElement.MSG
  • added: const ArrayIntersectWithSingleElement.RESTRICT_ON_SEND
  • added: const BitwisePredicate.MSG
  • added: const BitwisePredicate.RESTRICT_ON_SEND
  • added: const ClassEqualityComparison.CLASS_NAME_METHODS
  • added: const CollectionCompact.FILTER_METHODS
  • added: const CollectionCompact.MSG
  • added: const CollectionCompact.RESTRICT_ON_SEND
  • added: const CollectionCompact.TO_ENUM_METHODS
  • added: const CollectionQuerying.MSG
  • added: const CollectionQuerying.NO_BLOCK_REPLACEMENTS
  • added: const CollectionQuerying.REPLACEMENTS
  • added: const CollectionQuerying.RESTRICT_ON_SEND
  • added: const CombinableDefined.MSG
  • added: const CombinableDefined.OPERATORS
  • added: const CommentAnnotation.MSG_COLON_STYLE
  • added: const CommentAnnotation.MSG_SPACE_STYLE
  • added: const CommentedKeyword.METHOD_OR_END_DEFINITIONS
  • added: const CommentedKeyword.REGEXP
  • added: const CommentedKeyword.STEEP_REGEXP
  • added: const CommentedKeyword.SUBCLASS_DEFINITION
  • added: const ComparableBetween.MSG
  • added: const ComparableClamp.MSG
  • added: const ComparableClamp.MSG_MIN_MAX
  • added: const ComparableClamp.RESTRICT_ON_SEND
  • added: const ConcatArrayLiterals.MSG
  • added: const ConcatArrayLiterals.MSG_FOR_PERCENT_LITERALS
  • added: const ConcatArrayLiterals.RESTRICT_ON_SEND
  • added: const DataInheritance.MSG
  • added: const DigChain.MSG
  • added: const DigChain.RESTRICT_ON_SEND
  • added: const DirEmpty.MSG
  • added: const DirEmpty.RESTRICT_ON_SEND
  • added: const DirectiveScope.MSG_ENABLE_PAIR
  • added: const DirectiveScope.MSG_PAIR
  • added: const DirectiveScope.MSG_PUSH_POP
  • added: const DisableCopsWithinSourceCodeDirective.MSG_FOR_COPS
  • added: const DisableCopsWithinSourceCodeDirective.MSG_MISSING_REASON
  • added: const DocumentDynamicEvalDefinition.BLOCK_COMMENT_REGEXP
  • added: const DocumentDynamicEvalDefinition.COMMENT_REGEXP
  • added: const DocumentDynamicEvalDefinition.MSG
  • added: const DocumentDynamicEvalDefinition.RESTRICT_ON_SEND
  • added: const Documentation.DIRECTIVE_COMMENT_REGEXP
  • added: const EmptyCaseCondition.NOT_SUPPORTED_PARENT_TYPES
  • added: const EmptyClassDefinition.MSG_CLASS_KEYWORD
  • added: const EmptyClassDefinition.MSG_CLASS_NEW
  • added: const EmptyElse.EMPTY_STYLES
  • added: const EmptyElse.NIL_STYLES
  • added: const EmptyHeredoc.MSG
  • added: const EmptyStringInsideInterpolation.INTERPOLATED_TYPES
  • added: const EmptyStringInsideInterpolation.MSG_TERNARY
  • added: const EmptyStringInsideInterpolation.MSG_TRAILING_CONDITIONAL
  • added: const Encoding.MSG
  • added: const EndlessMethod.CORRECTION_STYLES
  • added: const EndlessMethod.MSG
  • added: const EndlessMethod.MSG_MULTI_LINE
  • added: const EndlessMethod.MSG_REQUIRE_ALWAYS
  • added: const EndlessMethod.MSG_REQUIRE_SINGLE
  • added: const EnvHome.MSG
  • added: const EnvHome.RESTRICT_ON_SEND
  • added: const EvalWithLocation.MSG_EVAL
  • added: const EvalWithLocation.MSG_INCORRECT_FILE
  • added: const ExactRegexpMatch.BOOLEAN_METHODS
  • added: const ExactRegexpMatch.MSG
  • added: const ExactRegexpMatch.RESTRICT_ON_SEND
  • added: const FetchEnvVar.MSG_WITHOUT_NIL
  • added: const FetchEnvVar.MSG_WITH_NIL
  • added: const FetchEnvVar.RESTRICT_ON_SEND
  • added: const FileEmpty.MSG
  • added: const FileEmpty.RESTRICT_ON_SEND
  • added: const FileNull.MSG
  • added: const FileNull.REGEXP
  • added: const FileOpen.MSG
  • added: const FileOpen.RESTRICT_ON_SEND
  • added: const FileRead.MSG
  • added: const FileRead.READ_FILE_START_TO_FINISH_MODES
  • added: const FileRead.RESTRICT_ON_SEND
  • added: const FileTouch.APPEND_FILE_MODES
  • added: const FileTouch.MSG
  • added: const FileTouch.RESTRICT_ON_SEND
  • added: const FileWrite.MSG
  • added: const FileWrite.RESTRICT_ON_SEND
  • added: const FileWrite.TRUNCATING_WRITE_MODES
  • added: const For.IMPLICIT_PARAMETERS
  • added: const FormatString.AUTOCORRECTABLE_METHODS
  • added: const HashConversion.MSG_LITERAL_HASH_ARG
  • added: const HashConversion.MSG_LITERAL_MULTI_ARG
  • added: const HashConversion.MSG_SPLAT
  • added: const HashConversion.MSG_TO_H
  • added: const HashConversion.RESTRICT_ON_SEND
  • added: const HashEachMethods.ARRAY_CONVERTER_METHODS
  • added: const HashEachMethods.UNUSED_BLOCK_ARG_MSG
  • added: const HashFetchChain.MSG
  • added: const HashFetchChain.RESTRICT_ON_SEND
  • added: const HashLookupMethod.BRACKET_MSG
  • added: const HashLookupMethod.FETCH_MSG
  • added: const HashLookupMethod.RESTRICT_ON_SEND
  • added: const HashSyntax.NO_MIXED_KEYS_STYLES
  • added: const IfUnlessModifier.MSG_USE_MODIFIER_PARENS
  • added: const IfWithBooleanLiteralBranches.MSG
  • added: const IfWithBooleanLiteralBranches.MSG_FOR_ELSIF
  • added: const IfWithSemicolon.LOWER_PRECEDENCE_THAN_TERNARY_TYPES
  • added: const IfWithSemicolon.MSG_IF_ELSE
  • added: const IfWithSemicolon.MSG_NEWLINE
  • added: const IfWithSemicolon.MSG_TERNARY
  • added: const InPatternThen.MSG
  • added: const InverseMethods.RESTRICT_ON_SEND
  • added: const InverseMethods.SAFE_NAVIGATION_INCOMPATIBLE_METHODS
  • added: const InvertibleUnlessCondition.MSG
  • added: const ItAssignment.MSG
  • added: const ItBlockParameter.MSG_AVOID_IT_PARAMETER
  • added: const ItBlockParameter.MSG_AVOID_IT_PARAMETER_MULTILINE
  • added: const ItBlockParameter.MSG_USE_IT_PARAMETER
  • added: const ItBlockParameter.SCOPE_TYPES
  • added: const KeywordArgumentsMerging.MSG
  • added: const LambdaCall.MSG
  • added: const MagicCommentFormat.KEBAB_SEPARATOR
  • added: const MagicCommentFormat.MSG
  • added: const MagicCommentFormat.MSG_VALUE
  • added: const MagicCommentFormat.SNAKE_SEPARATOR
  • added: const MapCompactWithConditionalBlock.MSG
  • added: const MapCompactWithConditionalBlock.RESTRICT_ON_SEND
  • added: const MapIntoArray.MSG
  • added: const MapJoin.MSG
  • added: const MapJoin.RESTRICT_ON_SEND
  • added: const MapToHash.MSG
  • added: const MapToHash.RESTRICT_ON_SEND
  • added: const MapToSet.MSG
  • added: const MapToSet.RESTRICT_ON_SEND
  • added: const MinMaxComparison.COMPARISON_OPERATORS
  • added: const MinMaxComparison.GREATER_OPERATORS
  • added: const MinMaxComparison.LESS_OPERATORS
  • added: const MinMaxComparison.MSG
  • added: const ModuleMemberExistenceCheck.METHODS_WITHOUT_INHERIT_PARAM
  • added: const ModuleMemberExistenceCheck.METHODS_WITH_INHERIT_PARAM
  • added: const ModuleMemberExistenceCheck.METHOD_REPLACEMENTS
  • added: const ModuleMemberExistenceCheck.MSG
  • added: const ModuleMemberExistenceCheck.RESTRICT_ON_SEND
  • added: const MultilineInPatternThen.MSG
  • added: const MultilineTernaryOperator.MSG_IF
  • added: const MultilineTernaryOperator.MSG_SINGLE_LINE
  • added: const MultilineTernaryOperator.SINGLE_LINE_TYPES
  • added: const NegatedIfElseCondition.MSG
  • added: const NegatedIfElseCondition.NEGATED_EQUALITY_METHODS
  • added: const NegativeArrayIndex.LENGTH_METHODS
  • added: const NegativeArrayIndex.MSG
  • added: const NegativeArrayIndex.MSG_RANGE
  • added: const NegativeArrayIndex.PRESERVING_METHODS
  • added: const NegativeArrayIndex.RESTRICT_ON_SEND
  • added: const NestedFileDirname.MSG
  • added: const NestedFileDirname.RESTRICT_ON_SEND
  • added: const NilLambda.MSG
  • added: const NonNilCheck.MSG_FOR_REDUNDANCY
  • added: const NonNilCheck.MSG_FOR_REPLACEMENT
  • added: const NumberedParameters.MSG_DISALLOW
  • added: const NumberedParameters.MSG_MULTI_LINE
  • added: const NumberedParametersLimit.DEFAULT_MAX_VALUE
  • added: const NumberedParametersLimit.MSG
  • added: const NumberedParametersLimit.NUMBERED_PARAMETER_PATTERN
  • added: const ObjectThen.MSG
  • added: const ObjectThen.RESTRICT_ON_SEND
  • added: const OneClassPerFile.MSG
  • added: const OneLineConditional.MSG_MULTILINE
  • added: const OneLineConditional.MSG_SUFFIX
  • added: const OneLineConditional.MSG_TERNARY
  • added: const OpenStructUse.MSG
  • added: const OperatorMethodCall.INVALID_SYNTAX_ARG_TYPES
  • added: const OperatorMethodCall.MSG
  • added: const OperatorMethodCall.RESTRICT_ON_SEND
  • added: const PartitionInsteadOfDoubleSelect.CANDIDATE_METHODS
  • added: const PartitionInsteadOfDoubleSelect.MSG
  • added: const PartitionInsteadOfDoubleSelect.RESTRICT_ON_SEND
  • added: const PartitionInsteadOfDoubleSelect.SELECT_METHODS
  • added: const PerlBackrefs.MESSAGE_FORMAT
  • added: const PredicateWithKind.KIND_METHODS
  • added: const PredicateWithKind.MSG
  • added: const PredicateWithKind.RESTRICT_ON_SEND
  • added: const QuotedSymbols.MSG_DOUBLE
  • added: const QuotedSymbols.MSG_SINGLE
  • added: const RaiseArgs.ACCEPTABLE_ARG_TYPES
  • added: const ReduceToHash.MSG
  • added: const ReduceToHash.RESTRICT_ON_SEND
  • added: const RedundantArgument.MSG
  • added: const RedundantArgument.NO_RECEIVER_METHODS
  • added: const RedundantArrayConstructor.MSG
  • added: const RedundantArrayConstructor.RESTRICT_ON_SEND
  • added: const RedundantArrayFlatten.MSG
  • added: const RedundantArrayFlatten.RESTRICT_ON_SEND
  • added: const RedundantBegin.SPACE_INSIDE_PARENS_STYLES
  • added: const RedundantCondition.ARGUMENT_WITH_OPERATOR_TYPES
  • added: const RedundantConstantBase.MSG
  • added: const RedundantCurrentDirectoryInPath.CURRENT_DIRECTORY_PREFIX
  • added: const RedundantCurrentDirectoryInPath.MSG
  • added: const RedundantCurrentDirectoryInPath.REDUNDANT_CURRENT_DIRECTORY_PREFIX
  • added: const RedundantCurrentDirectoryInPath.RESTRICT_ON_SEND
  • added: const RedundantDoubleSplatHashBraces.MERGE_METHODS
  • added: const RedundantDoubleSplatHashBraces.MSG
  • added: const RedundantEach.MSG
  • added: const RedundantEach.MSG_WITH_INDEX
  • added: const RedundantEach.MSG_WITH_OBJECT
  • added: const RedundantEach.RESTRICT_ON_SEND
  • added: const RedundantFilterChain.MSG
  • added: const RedundantFilterChain.RAILS_METHODS
  • added: const RedundantFilterChain.RESTRICT_ON_SEND
  • added: const RedundantFormat.ACCEPTABLE_LITERAL_TYPES
  • added: const RedundantFormat.MSG
  • added: const RedundantFormat.RESTRICT_ON_SEND
  • added: const RedundantHeredocDelimiterQuotes.MSG
  • added: const RedundantHeredocDelimiterQuotes.STRING_INTERPOLATION_OR_ESCAPED_CHARACTER_PATTERN
  • added: const RedundantInitialize.MSG
  • added: const RedundantInitialize.MSG_EMPTY
  • added: const RedundantInterpolationUnfreeze.MSG
  • added: const RedundantLineContinuation.LINE_CONTINUATION
  • added: const RedundantLineContinuation.LINE_CONTINUATION_PATTERN
  • added: const RedundantLineContinuation.MSG
  • added: const RedundantLineContinuation.STRING_LITERAL_BEGINNING_TOKEN_TYPES
  • added: const RedundantLineContinuation.STRING_LITERAL_ENDING_TOKEN_TYPES
  • added: const RedundantLineContinuation.STRING_TOKEN_TYPES
  • added: const RedundantMinMaxBy.MSG_BLOCK
  • added: const RedundantMinMaxBy.MSG_ITBLOCK
  • added: const RedundantMinMaxBy.MSG_NUMBLOCK
  • added: const RedundantMinMaxBy.REPLACEMENTS
  • added: const RedundantParentheses.ALLOWED_NODE_TYPES
  • added: const RedundantRegexpArgument.DETERMINISTIC_REGEX
  • added: const RedundantRegexpArgument.MSG
  • added: const RedundantRegexpArgument.RESTRICT_ON_SEND
  • added: const RedundantRegexpArgument.STR_SPECIAL_CHARS
  • added: const RedundantRegexpConstructor.MSG
  • added: const RedundantRegexpConstructor.RESTRICT_ON_SEND
  • added: const RedundantRegexpEscape.INTERPOLATION_SIGILS
  • added: const RedundantReturn.RESTRICT_ON_SEND
  • added: const RedundantSelfAssignmentBranch.MSG
  • added: const RedundantSelfAssignmentBranch.STATEMENT_BODY_TYPES
  • added: const RedundantSortBy.MSG_BLOCK
  • added: const RedundantSortBy.MSG_ITBLOCK
  • added: const RedundantSortBy.MSG_NUMBLOCK
  • added: const RedundantStringEscape.MSG
  • added: const RedundantStructKeywordInit.MSG
  • added: const RedundantStructKeywordInit.RESTRICT_ON_SEND
  • added: const RegexpLiteral.DELIMITERS_KEEPING_ESCAPE
  • added: const RegexpLiteral.PAIR_DELIMITER_PATTERNS
  • added: const RequireOrder.MSG
  • added: const RequireOrder.RESTRICT_ON_SEND
  • added: const ReturnNilInPredicateMethodDefinition.MSG
  • added: const ReverseFind.MSG
  • added: const ReverseFind.RESTRICT_ON_SEND
  • added: const SafeNavigationChainLength.MSG
  • added: const SelectByKind.CLASS_CHECK_METHODS
  • added: const SelectByKind.MSG
  • added: const SelectByKind.RESTRICT_ON_SEND
  • added: const SelectByKind.SELECT_METHODS
  • added: const SelectByRange.FIND_METHODS
  • added: const SelectByRange.MSG
  • added: const SelectByRange.RESTRICT_ON_SEND
  • added: const SelectByRange.SELECT_METHODS
  • added: const SelectByRegexp.MSG
  • added: const SelectByRegexp.REGEXP_METHODS
  • added: const SelectByRegexp.REGEXP_METHODS_NEGATED
  • added: const SelectByRegexp.RESTRICT_ON_SEND
  • added: const SelectByRegexp.SELECT_METHODS
  • added: const SendWithLiteralMethodName.METHOD_NAME_PATTERN
  • added: const SendWithLiteralMethodName.MSG
  • added: const SendWithLiteralMethodName.RESERVED_WORDS
  • added: const SendWithLiteralMethodName.RESTRICT_ON_SEND
  • added: const SendWithLiteralMethodName.STATIC_METHOD_NAME_NODE_TYPES
  • added: const SingleArgumentDig.IGNORED_ARGUMENT_TYPES
  • added: const SingleLineDoEndBlock.MSG
  • added: const SingleLineMethods.NOT_SUPPORTED_ENDLESS_METHOD_BODY_TYPES
  • added: const SlicingWithRange.MSG_USELESS_RANGE
  • added: const StabbyLambdaParentheses.RESTRICT_ON_SEND
  • added: const StaticClass.MSG
  • added: const StringChars.BAD_ARGUMENTS
  • added: const StringChars.MSG
  • added: const StringChars.RESTRICT_ON_SEND
  • added: const SuperArguments.ASSIGN_TYPES
  • added: const SuperArguments.MSG
  • added: const SuperArguments.MSG_INLINE_BLOCK
  • added: const SuperWithArgsParentheses.MSG
  • added: const SwapValues.MSG
  • added: const SwapValues.SIMPLE_ASSIGNMENT_TYPES
  • added: const SymbolArray.DELIMITERS
  • added: const SymbolArray.REDEFINABLE_OPERATORS
  • added: const SymbolArray.SPECIAL_GVARS
  • added: const SymbolProc.LAMBDA_OR_PROC
  • added: const SymbolProc.MSG_LAMBDA_LITERAL
  • added: const TallyMethod.COUNTING_METHODS
  • added: const TallyMethod.MSG_EACH_WITH_OBJECT
  • added: const TallyMethod.MSG_GROUP_BY
  • added: const TallyMethod.RESTRICT_ON_SEND
  • added: const TimeNow.MSG
  • added: const TimeNow.RESTRICT_ON_SEND
  • added: const TopLevelMethodDefinition.MSG
  • added: const TopLevelMethodDefinition.RESTRICT_ON_SEND
  • added: const TrailingUnderscoreVariable.ARRAY_OPENING
  • added: const UnlessLogicalOperators.FORBID_LOGICAL_OPERATORS
  • added: const UnlessLogicalOperators.FORBID_MIXED_LOGICAL_OPERATORS
  • added: const YAMLFileRead.MSG
  • added: const YAMLFileRead.RESTRICT_ON_SEND
  • added: const YodaCondition.ENFORCE_YODA_STYLES
  • added: const YodaCondition.EQUALITY_ONLY_STYLES
  • added: const YodaCondition.RESTRICT_ON_SEND
  • added: const YodaExpression.ARGUMENT_ONLY_TYPES
  • added: const YodaExpression.MSG
  • added: const YodaExpression.RESTRICT_ON_SEND
  • added: method AmbiguousEndlessMethodDefinition.on_def(_)
  • added: method AmbiguousEndlessMethodDefinition.on_defs(_)
  • added: method ArgumentsForwarding.on_def(_)
  • added: method ArgumentsForwarding.on_defs(_)
  • added: method ArrayFirstLast.on_csend(_)
  • added: method ArrayFirstLast.on_send(_)
  • added: method ArrayIntersect.on_block(_)
  • added: method ArrayIntersect.on_csend(_)
  • added: method ArrayIntersect.on_itblock(_)
  • added: method ArrayIntersect.on_numblock(_)
  • added: method ArrayIntersect.on_send(_)
  • added: method ArrayIntersectWithSingleElement.on_csend(_)
  • added: method ArrayIntersectWithSingleElement.on_send(_)
  • added: method BisectedAttrAccessor.after_class(_)
  • added: method BisectedAttrAccessor.after_module(_)
  • added: method BisectedAttrAccessor.after_sclass(_)
  • added: method BisectedAttrAccessor.on_new_investigation()
  • added: method BitwisePredicate.on_send(_)
  • added: method BlockDelimiters.on_csend(_)
  • added: method BlockDelimiters.on_itblock(_)
  • added: method BlockDelimiters.on_numblock(_)
  • added: method BlockDelimiters.on_super(_)
  • added: method BlockDelimiters.on_yield(_)
  • added: method ClassCheck.on_csend(_)
  • added: method CollectionCompact.on_csend(_)
  • added: method CollectionCompact.on_send(_)
  • added: method CollectionMethods.on_csend(_)
  • added: method CollectionMethods.on_itblock(_)
  • added: method CollectionMethods.on_numblock(_)
  • added: method CollectionQuerying.on_send(_)
  • added: method CombinableDefined.on_and(_)
  • added: method CombinableLoops.on_itblock(_)
  • added: method CombinableLoops.on_numblock(_)
  • added: method ComparableBetween.on_and(_)
  • added: method ComparableClamp.on_if(_)
  • added: method ComparableClamp.on_send(_)
  • added: method ConcatArrayLiterals.on_csend(_)
  • added: method ConcatArrayLiterals.on_send(_)
  • added: method ConditionalAssignment.on_case_match(_)
  • added: method ConditionalCorrectorHelper.same_line?(_, _)
  • added: method DataInheritance.on_class(_)
  • added: method DateTime.on_csend(_)
  • added: method DigChain.on_csend(_)
  • added: method DigChain.on_send(_)
  • added: method DirEmpty.on_send(_)
  • added: method DirectiveScope.on_new_investigation()
  • added: method DocumentDynamicEvalDefinition.on_send(_)
  • added: method EachWithObject.on_itblock(_)
  • added: method EachWithObject.on_numblock(_)
  • added: method EmptyClassDefinition.on_casgn(_)
  • added: method EmptyClassDefinition.on_class(_)
  • added: method EmptyHeredoc.on_heredoc(_)
  • added: method EmptyStringInsideInterpolation.on_interpolation(_)
  • added: method EndlessMethod.on_def(_)
  • added: method EndlessMethod.on_defs(_)
  • added: method EnvHome.on_send(_)
  • added: method ExactRegexpMatch.on_csend(_)
  • added: method ExactRegexpMatch.on_send(_)
  • added: method FetchEnvVar.on_send(_)
  • added: method FileEmpty.on_send(_)
  • added: method FileNull.on_new_investigation()
  • added: method FileNull.on_str(_)
  • added: method FileOpen.on_csend(_)
  • added: method FileOpen.on_send(_)
  • added: method FileRead.on_send(_)
  • added: method FileTouch.on_send(_)
  • added: method FileWrite.evidence(_)
  • added: method FileWrite.on_send(_)
  • added: method For.on_itblock(_)
  • added: method For.on_numblock(_)
  • added: method FormatString.on_new_investigation()
  • added: method GuardClause.on_block(_)
  • added: method GuardClause.on_itblock(_)
  • added: method GuardClause.on_numblock(_)
  • added: method HashConversion.on_send(_)
  • added: method HashEachMethods.check_unused_block_args(_, _, _)
  • added: method HashEachMethods.on_block_pass(_)
  • added: method HashEachMethods.on_itblock(_)
  • added: method HashEachMethods.on_numblock(_)
  • added: method HashFetchChain.on_csend(_)
  • added: method HashFetchChain.on_send(_)
  • added: method HashLookupMethod.on_csend(_)
  • added: method HashLookupMethod.on_send(_)
  • added: method IdenticalConditionalBranches.on_case_match(_)
  • added: method IfWithBooleanLiteralBranches.on_if(_)
  • added: method InPatternThen.on_in_pattern(_)
  • added: method InverseMethods.on_csend(_)
  • added: method InverseMethods.on_itblock(_)
  • added: method InverseMethods.on_numblock(_)
  • added: method InvertibleUnlessCondition.on_if(_)
  • added: method ItAssignment.on_arg(_)
  • added: method ItAssignment.on_blockarg(_)
  • added: method ItAssignment.on_kwarg(_)
  • added: method ItAssignment.on_kwoptarg(_)
  • added: method ItAssignment.on_kwrestarg(_)
  • added: method ItAssignment.on_lvasgn(_)
  • added: method ItAssignment.on_optarg(_)
  • added: method ItAssignment.on_restarg(_)
  • added: method ItBlockParameter.on_block(_)
  • added: method ItBlockParameter.on_itblock(_)
  • added: method ItBlockParameter.on_new_investigation()
  • added: method ItBlockParameter.on_numblock(_)
  • added: method KeywordArgumentsMerging.on_kwsplat(_)
  • added: method Lambda.on_itblock(_)
  • added: method LambdaCall.on_csend(_)
  • added: method MagicCommentFormat.on_new_investigation()
  • added: method MapCompactWithConditionalBlock.on_csend(_)
  • added: method MapCompactWithConditionalBlock.on_send(_)
  • added: method MapIntoArray.after_leaving_scope(_, _)
  • added: method MapIntoArray.on_block(_)
  • added: method MapIntoArray.on_itblock(_)
  • added: method MapIntoArray.on_numblock(_)
  • added: method MapJoin.on_csend(_)
  • added: method MapJoin.on_send(_)
  • added: method MapToHash.on_csend(_)
  • added: method MapToHash.on_send(_)
  • added: method MapToSet.on_csend(_)
  • added: method MapToSet.on_send(_)
  • added: method MethodCallWithArgsParentheses.on_csend(_)
  • added: method MethodCallWithArgsParentheses.on_send(_)
  • added: method MethodCallWithArgsParentheses.on_yield(_)
  • added: method MethodCallWithoutArgsParentheses.on_csend(_)
  • added: method MethodCallWithoutArgsParentheses.on_investigation_end()
  • added: method MethodCallWithoutArgsParentheses.on_new_investigation()
  • added: method MethodCalledOnDoEndBlock.on_itblock(_)
  • added: method MethodCalledOnDoEndBlock.on_numblock(_)
  • added: method MinMaxComparison.on_if(_)
  • added: method MissingElse.on_case_match(_)
  • added: method ModuleMemberExistenceCheck.on_csend(_)
  • added: method ModuleMemberExistenceCheck.on_send(_)
  • added: method MultilineBlockChain.on_itblock(_)
  • added: method MultilineBlockChain.on_numblock(_)
  • added: method MultilineInPatternThen.on_in_pattern(_)
  • added: method NegatedIfElseCondition.on_if(_)
  • added: method NegatedIfElseCondition.on_new_investigation()
  • added: method NegativeArrayIndex.on_csend(_)
  • added: method NegativeArrayIndex.on_send(_)
  • added: method NestedFileDirname.on_send(_)
  • added: method Next.on_itblock(_)
  • added: method Next.on_numblock(_)
  • added: method NilLambda.on_block(_)
  • added: method NumberedParameters.on_numblock(_)
  • added: method NumberedParametersLimit.on_numblock(_)
  • added: method ObjectThen.on_block(_)
  • added: method ObjectThen.on_csend(_)
  • added: method ObjectThen.on_itblock(_)
  • added: method ObjectThen.on_numblock(_)
  • added: method ObjectThen.on_send(_)
  • added: method OneClassPerFile.on_class(_)
  • added: method OneClassPerFile.on_module(_)
  • added: method OneClassPerFile.on_new_investigation()
  • added: method OpenStructUse.on_const(_)
  • added: method OperatorMethodCall.on_send(_)
  • added: method OptionalArguments.on_defs(_)
  • added: method PartitionInsteadOfDoubleSelect.on_block(_)
  • added: method PartitionInsteadOfDoubleSelect.on_csend(_)
  • added: method PartitionInsteadOfDoubleSelect.on_itblock(_)
  • added: method PartitionInsteadOfDoubleSelect.on_numblock(_)
  • added: method PartitionInsteadOfDoubleSelect.on_send(_)
  • added: method PerlBackrefs.on_back_ref(_)
  • added: method PerlBackrefs.on_gvar(_)
  • added: method PredicateWithKind.on_csend(_)
  • added: method PredicateWithKind.on_send(_)
  • added: method Proc.on_itblock(_)
  • added: method Proc.on_numblock(_)
  • added: method QuotedSymbols.on_sym(_)
  • added: method ReduceToHash.on_csend(_)
  • added: method ReduceToHash.on_send(_)
  • added: method RedundantArgument.on_csend(_)
  • added: method RedundantArgument.on_send(_)
  • added: method RedundantArrayConstructor.on_send(_)
  • added: method RedundantArrayFlatten.on_csend(_)
  • added: method RedundantArrayFlatten.on_send(_)
  • added: method RedundantBegin.on_case(_)
  • added: method RedundantBegin.on_case_match(_)
  • added: method RedundantBegin.on_if(_)
  • added: method RedundantBegin.on_itblock(_)
  • added: method RedundantBegin.on_numblock(_)
  • added: method RedundantBegin.on_until(_)
  • added: method RedundantBegin.on_while(_)
  • added: method RedundantConstantBase.on_cbase(_)
  • added: method RedundantCurrentDirectoryInPath.on_send(_)
  • added: method RedundantDoubleSplatHashBraces.on_hash(_)
  • added: method RedundantEach.on_csend(_)
  • added: method RedundantEach.on_send(_)
  • added: method RedundantFilterChain.on_csend(_)
  • added: method RedundantFilterChain.on_send(_)
  • added: method RedundantFormat.on_send(_)
  • added: method RedundantHeredocDelimiterQuotes.on_heredoc(_)
  • added: method RedundantInitialize.on_def(_)
  • added: method RedundantInterpolationUnfreeze.on_dstr(_)
  • added: method RedundantLineContinuation.on_new_investigation()
  • added: method RedundantMinMaxBy.on_block(_)
  • added: method RedundantMinMaxBy.on_itblock(_)
  • added: method RedundantMinMaxBy.on_numblock(_)
  • added: method RedundantParentheses.on_investigation_end()
  • added: method RedundantParentheses.on_new_investigation()
  • added: method RedundantRegexpArgument.on_csend(_)
  • added: method RedundantRegexpArgument.on_send(_)
  • added: method RedundantRegexpConstructor.on_send(_)
  • added: method RedundantReturn.on_send(_)
  • added: method RedundantSelf.on_if(_)
  • added: method RedundantSelf.on_in_pattern(_)
  • added: method RedundantSelf.on_itblock(_)
  • added: method RedundantSelf.on_numblock(_)
  • added: method RedundantSelf.on_resbody(_)
  • added: method RedundantSelf.on_until(_)
  • added: method RedundantSelf.on_while(_)
  • added: method RedundantSelfAssignment.on_csend(_)
  • added: method RedundantSelfAssignmentBranch.on_lvasgn(_)
  • added: method RedundantSort.on_csend(_)
  • added: method RedundantSortBy.on_itblock(_)
  • added: method RedundantSortBy.on_numblock(_)
  • added: method RedundantStringEscape.on_str(_)
  • added: method RedundantStructKeywordInit.on_csend(_)
  • added: method RedundantStructKeywordInit.on_send(_)
  • added: method RequireOrder.on_send(_)
  • added: method ReturnNilInPredicateMethodDefinition.on_def(_)
  • added: method ReturnNilInPredicateMethodDefinition.on_defs(_)
  • added: method ReverseFind.on_csend(_)
  • added: method ReverseFind.on_send(_)
  • added: method SafeNavigationChainLength.on_csend(_)
  • added: method Sample.on_csend(_)
  • added: method SelectByKind.on_csend(_)
  • added: method SelectByKind.on_send(_)
  • added: method SelectByRange.on_csend(_)
  • added: method SelectByRange.on_send(_)
  • added: method SelectByRegexp.on_csend(_)
  • added: method SelectByRegexp.on_send(_)
  • added: method SendWithLiteralMethodName.on_csend(_)
  • added: method SendWithLiteralMethodName.on_send(_)
  • added: method SingleLineDoEndBlock.on_block(_)
  • added: method SingleLineDoEndBlock.on_itblock(_)
  • added: method SingleLineDoEndBlock.on_numblock(_)
  • added: method SlicingWithRange.on_csend(_)
  • added: method StaticClass.on_class(_)
  • added: method StringChars.on_csend(_)
  • added: method StringChars.on_send(_)
  • added: method StringConcatenation.on_new_investigation()
  • added: method StringLiteralsInInterpolation.on_regexp(_)
  • added: method Strip.on_csend(_)
  • added: method SuperArguments.on_super(_)
  • added: method SuperWithArgsParentheses.on_super(_)
  • added: method SwapValues.on_asgn(_)
  • added: method SymbolProc.on_itblock(_)
  • added: method SymbolProc.on_numblock(_)
  • added: method TallyMethod.on_csend(_)
  • added: method TallyMethod.on_send(_)
  • added: method TimeNow.on_csend(_)
  • added: method TimeNow.on_send(_)
  • added: method TopLevelMethodDefinition.on_block(_)
  • added: method TopLevelMethodDefinition.on_def(_)
  • added: method TopLevelMethodDefinition.on_defs(_)
  • added: method TopLevelMethodDefinition.on_itblock(_)
  • added: method TopLevelMethodDefinition.on_numblock(_)
  • added: method TopLevelMethodDefinition.on_send(_)
  • added: method TrailingBodyOnClass.on_sclass(_)
  • added: method TrailingMethodEndStatement.on_defs(_)
  • added: method UnlessLogicalOperators.on_if(_)
  • added: method UnpackFirst.on_csend(_)
  • added: method WordArray.on_new_investigation()
  • added: method YAMLFileRead.on_send(_)
  • added: method YodaExpression.on_new_investigation()
  • added: method YodaExpression.on_send(_)
  • added: method ZeroLengthPredicate.on_csend(_)
  • added: static method AccessModifierDeclarations.autocorrect_incompatible_with()
  • added: static method AndOr.autocorrect_incompatible_with()
  • added: static method ArgumentsForwarding.autocorrect_incompatible_with()
  • added: static method BlockDelimiters.autocorrect_incompatible_with()
  • added: static method CaseLikeIf.autocorrect_incompatible_with()
  • added: static method ClassAndModuleChildren.autocorrect_incompatible_with()
  • added: static method CombinableLoops.autocorrect_incompatible_with()
  • added: static method ConcatArrayLiterals.autocorrect_incompatible_with()
  • added: static method ConditionalAssignment.autocorrect_incompatible_with()
  • added: static method EndlessMethod.autocorrect_incompatible_with()
  • added: static method ExplicitBlockArgument.autocorrect_incompatible_with()
  • added: static method For.autocorrect_incompatible_with()
  • added: static method GuardClause.autocorrect_incompatible_with()
  • added: static method HashAsLastArrayItem.autocorrect_incompatible_with()
  • added: static method HashConversion.autocorrect_incompatible_with()
  • added: static method HashSyntax.autocorrect_incompatible_with()
  • added: static method IfUnlessModifier.autocorrect_incompatible_with()
  • added: static method IfUnlessModifierOfIfUnless.autocorrect_incompatible_with()
  • added: static method ItBlockParameter.autocorrect_incompatible_with()
  • added: static method Lambda.autocorrect_incompatible_with()
  • added: static method MapIntoArray.joining_forces()
  • added: static method MapToHash.autocorrect_incompatible_with()
  • added: static method MethodCallWithArgsParentheses.autocorrect_incompatible_with()
  • added: static method MethodDefParentheses.autocorrect_incompatible_with()
  • added: static method MutableConstant.autocorrect_incompatible_with()
  • added: static method NegatedIfElseCondition.autocorrect_incompatible_with()
  • added: static method NestedParenthesizedCalls.autocorrect_incompatible_with()
  • added: static method RedundantBegin.autocorrect_incompatible_with()
  • added: static method RedundantDoubleSplatHashBraces.autocorrect_incompatible_with()
  • added: static method RedundantInterpolationUnfreeze.autocorrect_incompatible_with()
  • added: static method RedundantRegexpEscape.autocorrect_incompatible_with()
  • added: static method RescueModifier.autocorrect_incompatible_with()
  • added: static method Semicolon.autocorrect_incompatible_with()
  • added: static method SendWithLiteralMethodName.autocorrect_incompatible_with()
  • added: static method SoleNestedConditional.autocorrect_incompatible_with()
  • added: static method StructInheritance.autocorrect_incompatible_with()
  • added: class SendNodeClassifier
  • added: constructor SendNodeClassifier(_, _, _, _, **)
  • added: method SendNodeClassifier.classification()
  • added: method SendNodeClassifier.forwarded_block_arg()
  • added: method SendNodeClassifier.forwarded_kwrest_arg()
  • added: method SendNodeClassifier.forwarded_rest_arg()
  • added: class Macro
  • added: constructor Macro(_)
  • added: method Macro.all_bisected?()
  • added: method Macro.attr_names()
  • added: method Macro.bisect(*)
  • added: method Macro.bisected_names()
  • added: method Macro.reader?()
  • added: method Macro.rest()
  • added: method Macro.visibility()
  • added: method Macro.writer?()
  • added: property Macro.attrs: reader
  • added: property Macro.bisection: reader
  • added: property Macro.node: reader
  • added: static method Macro.macro?(_)
  • added: class CommentRange
  • added: const CommentRange.DIRECTIVE_REGEXP
  • added: constructor CommentRange(_)
  • added: method CommentRange.directives()
  • added: method CommentRange.values()
  • added: property CommentRange.comment: reader
  • added: class VALUE_REGEXP < Regexp.new("(?:#{DIRECTIVE_REGEXP}:\s*)(.*?)(?=;|$)")
  • removed: method OmitParentheses.on_csend(_)
  • removed: method OmitParentheses.on_send(_)
  • removed: method OmitParentheses.on_super(_)
  • removed: method OmitParentheses.on_yield(_)
  • removed: method RequireParentheses.message(_ = …)
  • removed: method RequireParentheses.on_csend(_)
  • removed: method RequireParentheses.on_send(_)
  • removed: method RequireParentheses.on_super(_)
  • removed: method RequireParentheses.on_yield(_)
  • added: method OmitParentheses.on_investigation_end()
  • removed: method AssignmentSorter.tsort_each_child(_)
  • removed: method AssignmentSorter.tsort_each_node()
  • changed: constructor GenericCorrector(_, _, _) → constructor GenericCorrector(_, _, _, _, _)
  • added: method AssignmentSorter.dependencies_for_assignment(_)
  • added: method AssignmentSorter.tsort()
  • added: property GenericCorrector.rescue_result: reader
  • added: property GenericCorrector.rhs: reader
  • added: class LINE_BEGINS_REGEX_CACHE < Hash.new
  • added: method LINE_BEGINS_REGEX_CACHE.begins_its_line?(_)
  • added: method LINE_BEGINS_REGEX_CACHE.double_quotes_required?(_)
  • added: method LINE_BEGINS_REGEX_CACHE.escape_string(_)
  • added: method LINE_BEGINS_REGEX_CACHE.first_part_of_call_chain(_)
  • added: method LINE_BEGINS_REGEX_CACHE.needs_escaping?(_)
  • added: method LINE_BEGINS_REGEX_CACHE.to_string_literal(_)
  • added: const FormatString.INTERPOLATION
  • added: method FormatSequence.variable_width?()
  • added: method FormatSequence.variable_width_argument_number()
  • added: property FormatSequence.arg_number: reader
  • removed: method Variable.in_modifier_if?(_)
  • added: method Assignment.exception_assignment?()
  • added: method Assignment.for_assignment?()
  • added: method Assignment.reassigned!()
  • added: method Assignment.rest_assignment?()
  • added: method Variable.covers?(_, _)
  • added: method Variable.exception_may_reach?(_, _)
  • added: method Variable.in_modifier_conditional?(_, _)
  • added: method Variable.mark_last_as_reassigned!(_)
  • added: method Variable.modifier_conditional_of(_)
  • added: property Assignment.reassigned: reader
  • added: property Assignment.reassigned?: reader
  • removed: method LogicalOperator.always_run?()
  • removed: module LogicalOperator
  • added: class AndAsgn < Base
  • added: class CaseMatch < Base
  • added: class OpAsgn < Base
  • added: class OrAsgn < Base
  • added: method CaseMatch.always_run?()
  • added: method Operator.always_run?()
  • added: module Operator
  • added: class DIRECTIVE_COMMENT_REGEXP < Regexp.new("#{DIRECTIVE_HEADER_PATTERN}(?:\\s+#{COPS_PATTERN}|\\s+#{PUSH_POP_ARGS_PATTERN})?" .gsub(' ', '\s*'))
  • added: class DIRECTIVE_MARKER_REGEXP < Regexp.new(DIRECTIVE_MARKER_PATTERN.gsub(' ', '\s*'))
  • added: class MALFORMED_DIRECTIVE_WITHOUT_COP_NAME_REGEXP < Regexp.new("\\A#{DIRECTIVE_HEADER_PATTERN}\\s*\\z".gsub(' ', '\s*'))
  • removed: method RegexpNode.parsed_tree()
  • removed: static property RegexpNode.parsed_cache: reader
  • added: method Comment.source()
  • added: method Comment.source_range()
  • added: method Range.single_line?()
  • added: method RegexpNode.assign_properties(*)
  • added: module Comment
  • added: module Range
  • added: module RegexpParser
  • added: property ProcessedSource.config: accessor
  • added: property ProcessedSource.registry: accessor
  • added: property RegexpNode.parsed_tree: reader
  • added: class Map < ::Parser::Source::Map
  • added: constructor Map(_, body:, quantifier: …, begin_l: …, end_l: …)
  • added: module Expression
  • added: property Map.begin: reader
  • added: property Map.body: reader
  • added: property Map.end: reader
  • added: property Map.quantifier: reader
  • added: method Base.expression()
  • added: method Base.loc()
  • added: method CharacterSet.build_location()
  • added: module Base
  • added: module CharacterSet
  • added: property Base.origin: accessor
  • removed: method JUnitFormatter.classname_attribute_value(_)
  • removed: method JUnitFormatter.offenses_for_cop(_, _)
  • removed: method JUnitFormatter.relevant_for_output?(_, _)
  • changed: method OffenseCountFormatter.report_summary(_) → method OffenseCountFormatter.report_summary(_, _)
  • added: class GitHubActionsFormatter < BaseFormatter
  • added: class MarkdownFormatter < BaseFormatter
  • added: class SARIFFormatter < BaseFormatter
  • added: const DisabledConfigFormatter.EXCLUDED_CONFIG_KEYS
  • added: const FormatterSet.BUILTIN_FORMATTER_NAMES
  • added: const GitHubActionsFormatter.ESCAPE_MAP
  • added: const HTMLFormatter.CSS_PATH
  • added: const JUnitFormatter.ESCAPE_MAP
  • added: const SARIFFormatter.INFORMATION_URI
  • added: const SARIFFormatter.SARIF_VERSION
  • added: const SARIFFormatter.SCHEMA_URI
  • added: const SARIFFormatter.SEVERITY_LEVELS
  • added: constructor MarkdownFormatter(_, _ = …)
  • added: constructor SARIFFormatter(_, _ = …)
  • added: method BaseFormatter.file_problems(_, _, _)
  • added: method FormatterSet.file_problems(_, _, _)
  • added: method GitHubActionsFormatter.file_finished(_, _)
  • added: method GitHubActionsFormatter.file_started(_, _)
  • added: method GitHubActionsFormatter.finished(_)
  • added: method GitHubActionsFormatter.started(_)
  • added: method JSONFormatter.correction_for(_)
  • added: method JSONFormatter.edits_for(_)
  • added: method JSONFormatter.file_problems(_, _, _)
  • added: method JSONFormatter.hash_for_edit_range(_)
  • added: method JSONFormatter.hash_for_problems(_, _, _)
  • added: method JSONFormatter.problem_counts(_)
  • added: method JUnitFormatter.file_started(_, _)
  • added: method MarkdownFormatter.file_finished(_, _)
  • added: method MarkdownFormatter.finished(_)
  • added: method MarkdownFormatter.started(_)
  • added: method OffenseCountFormatter.cop_information(_)
  • added: method SARIFFormatter.file_finished(_, _)
  • added: method SARIFFormatter.file_started(_, _)
  • added: method SARIFFormatter.finished(_)
  • added: property MarkdownFormatter.files: reader
  • added: property MarkdownFormatter.summary: reader
  • removed: const ERBContext.SEVERITY_COLORS
  • removed: method ERBContext.hightlight_source_tag(_)
  • added: class CSSContext
  • added: class FileOffenses < Struct.new(:path, :offenses, keyword_init: true)
  • added: class Summary < Struct.new(:offense_count, :inspected_files, :target_files, keyword_init: true)
  • added: const CSSContext.SEVERITY_COLORS
  • added: method CSSContext.binding()
  • added: method ERBContext.highlight_source_tag(_)
  • added: method ERBContext.render_css()
  • added: class FailureElement
  • added: class TestCaseElement
  • added: constructor FailureElement(type:, message:, text:)
  • added: constructor TestCaseElement(classname:, name:)
  • added: property FailureElement.message: reader
  • added: property FailureElement.text: reader
  • added: property FailureElement.type: reader
  • added: property TestCaseElement.classname: reader
  • added: property TestCaseElement.failures: reader
  • added: property TestCaseElement.name: reader
  • changed: constructor Report(_, _, _, _, _, safe_auto_correct: …) → constructor Report(_, _, _, _, _, safe_autocorrect: …)
  • added: class Plugin < LintRoller::Plugin
  • added: method Plugin.about()
  • added: method Plugin.rules(_)
  • added: method Plugin.supported?(_)
  • added: class Diagnostic
  • added: class DisableCommentEdits
  • added: class Logger
  • added: class Routes
  • added: class Runtime
  • added: class Server
  • added: class Severity
  • added: const Routes.CONFIGURATION_FILE_PATTERNS
  • added: const Routes.EXECUTE_COMMANDS
  • added: const Severity.SEVERITIES
  • added: constructor Diagnostic(_, _, _, _, _ = …)
  • added: constructor DisableCommentEdits(offense:, document_encoding:, processed_source:)
  • added: constructor Routes(_)
  • added: constructor Runtime(_, lsp_mode: …)
  • added: constructor Server(_)
  • added: method Diagnostic.to_lsp_code_actions()
  • added: method Diagnostic.to_lsp_diagnostic(_)
  • added: method DisableCommentEdits.edits()
  • added: method Routes.for(_)
  • added: method Routes.handle_method_missing(_)
  • added: method Routes.handle_unsupported_method(_, _ = …)
  • added: method Runtime.errors()
  • added: method Runtime.format(_, _, command:, prism_result: …, options: …)
  • added: method Runtime.offenses(_, _, _ = …, prism_result: …)
  • added: method Runtime.raw_offenses(_, _, prism_result: …, options: …)
  • added: method Runtime.reset_project_index()
  • added: method Runtime.uncorrected_offenses()
  • added: method Runtime.warnings()
  • added: method Server.configure(_)
  • added: method Server.format(_, _, command:)
  • added: method Server.offenses(_, _)
  • added: method Server.reset_project_index()
  • added: method Server.start()
  • added: method Server.stop()
  • added: method Server.write(_)
  • added: property Runtime.layout_mode: writer
  • added: property Runtime.lint_mode: writer
  • added: property Runtime.raise_cop_error: writer
  • added: property Runtime.safe_autocorrect: writer
  • added: static method Logger.log(_, prefix: …)
  • added: static method Severity.find_by(_)
  • added: class StdinRunner < RuboCop::Runner
  • added: const StdinRunner.DEFAULT_RUBOCOP_OPTIONS
  • added: constructor StdinRunner(_)
  • added: method StdinRunner.formatted_source()
  • added: method StdinRunner.reset_project_index()
  • added: method StdinRunner.run(_, _, _, prism_result: …)
  • added: property StdinRunner.config_for_working_directory: reader
  • added: property StdinRunner.offenses: reader
  • added: property StdinRunner.processed_source: reader
  • added: class ConfigurationError < StandardError
  • added: class AutocorrectionRequest
  • added: class ExplainTool
  • added: class Scope
  • added: class Server
  • added: const AutocorrectionRequest.DEFAULT_MAX_OFFENSES_PER_COP
  • added: const AutocorrectionRequest.PROPERTIES
  • added: const ExplainTool.ANNOTATIONS
  • added: const ExplainTool.DESCRIPTION
  • added: const ExplainTool.INPUT_SCHEMA
  • added: const Scope.PROPERTIES
  • added: const Server.AUTOCORRECTION_DESCRIPTION
  • added: const Server.INSPECTION_DESCRIPTION
  • added: constructor AutocorrectionRequest(_, safety: …, contextual: …, dry_run: …, max_offenses_per_cop: …)
  • added: constructor ExplainTool(_)
  • added: constructor Scope(inline:, only: …, except: …, changed: …)
  • added: constructor Server(_)
  • added: method AutocorrectionRequest.dry_run?()
  • added: method AutocorrectionRequest.format_options()
  • added: method AutocorrectionRequest.runtime_options()
  • added: method ExplainTool.to_tool()
  • added: method Scope.cop_options()
  • added: method Scope.select_files(_)
  • added: method Server.start()
  • added: module SourceFiles
  • added: property AutocorrectionRequest.limit: reader
  • added: property AutocorrectionRequest.scope: reader
  • added: static method SourceFiles.read(_, _)
  • added: static method SourceFiles.write(_, _)
  • removed: method EmacsComment.encoding()
  • added: const EmacsComment.REGEXP
  • added: const SimpleComment.FSTRING_LITERAL_COMMENT
  • added: const VimComment.KEYWORDS
  • added: const VimComment.REGEXP
  • added: method EditorComment.encoding()
  • added: method EditorComment.without(_)
  • added: method EmacsComment.new_frozen_string_literal(_)
  • added: method SimpleComment.new_frozen_string_literal(_)
  • added: method SimpleComment.without(_)
  • added: method VimComment.extract_rbs_inline_value()
  • added: method VimComment.extract_typed()
  • added: method VimComment.shareable_constant_value()
  • added: method VimComment.warn_indent()
  • added: class ConfigurationIntegrator
  • added: class LoadError < Error
  • added: class Loader
  • added: class NotSupportedError < Error
  • added: const Loader.DEFAULT_PLUGIN_CONFIG
  • added: constructor LoadError(_)
  • added: constructor NotSupportedError(_)
  • added: method LoadError.message()
  • added: method NotSupportedError.message()
  • added: static method ConfigurationIntegrator.integrate_plugins_into_rubocop_config(_, _)
  • added: static method Loader.load(_)
  • changed: method ExpectOffense.expect_correction(_, loop: …) → method ExpectOffense.expect_correction(_, loop: …, source: …)
  • changed: method ExpectOffense.expect_offense(_, _ = …, severity: …, **) → method ExpectOffense.expect_offense(_, _ = …, severity: …, chomp: …, **)
  • added: class ParallelFormatter < ::RSpec::Core::Formatters::BaseTextFormatter
  • added: method ExpectOffense.parse_annotations(_, raise_error: …, **)
  • added: method ExpectOffense.parse_processed_source(_, _ = …)
  • added: method ExpectOffense.set_formatter_options()
  • added: method ParallelFormatter.dump_failures(_)
  • added: method ParallelFormatter.dump_pending(*)
  • added: method ParallelFormatter.dump_summary(_)
  • changed: class InfiniteCorrectionLoop < RuntimeError → class InfiniteCorrectionLoop < StandardError
  • added: class CLI
  • added: class Cache
  • added: class Core
  • added: class InvalidTokenError < StandardError
  • added: class ServerStopRequest < StandardError
  • added: class SocketReader
  • added: class UnknownServerCommandError < StandardError
  • added: const CLI.EXCLUSIVE_OPTIONS
  • added: const CLI.NO_DETACH_OPTIONS
  • added: const CLI.SERVER_OPTIONS
  • added: const CLI.STATUS_ERROR
  • added: const CLI.STATUS_SUCCESS
  • added: const Cache.GEMFILE_NAMES
  • added: const Cache.LOCKFILE_NAMES
  • added: const Core.JSON_FORMATS
  • added: constructor CLI()
  • added: constructor SocketReader(_)
  • added: method CLI.exit?()
  • added: method CLI.run(_ = …)
  • added: method Core.start(_, _, detach: …)
  • added: method Core.token()
  • added: method SocketReader.read!()
  • added: module ClientCommand
  • added: module Helper
  • added: module ServerCommand
  • added: static method Cache.acquire_lock()
  • added: static method Cache.cache_path()
  • added: static method Cache.dir()
  • added: static method Cache.dir_path()
  • added: static method Cache.inherit_from_data(_)
  • added: static method Cache.lock_path()
  • added: static method Cache.pid_path(create_dir: …)
  • added: static method Cache.pid_running?()
  • added: static method Cache.port_path()
  • added: static method Cache.project_dir()
  • added: static method Cache.project_dir_cache_key()
  • added: static method Cache.require_data(_)
  • added: static method Cache.restart_key(args_config_file_path: …)
  • added: static method Cache.status_path()
  • added: static method Cache.stderr_path()
  • added: static method Cache.token_path()
  • added: static method Cache.version_path()
  • added: static method Cache.write_pid_file()
  • added: static method Cache.write_port_and_token_files(port:, token:)
  • added: static method Cache.write_status_file(_)
  • added: static method Cache.write_version_file(_)
  • added: static method Core.token()
  • added: static method Helper.redirect(stdin: …, stdout: …, stderr: …)
  • added: static property Cache.cache_root_path: accessor
  • added: class Base
  • added: class Exec < Base
  • added: class Restart < Base
  • added: class Start < Base
  • added: class Status < Base
  • added: class Stop < Base
  • added: constructor Start(detach: …)
  • added: method Base.run()
  • added: method Exec.run()
  • added: method Restart.run()
  • added: method Start.run()
  • added: method Status.run()
  • added: method Stop.run()
  • added: static method Base.args_config_file_path()
  • added: class Base
  • added: class Exec < Base
  • added: class Stop < Base
  • added: constructor Base(_, token: …, cwd: …)
  • added: method Base.run()
  • added: method Exec.run()
  • added: method Stop.run()
  • added: method Runner.run()
  • added: module Runner
  • added: class Header < Struct.new(:token, :cwd, :command, :args)
  • added: class Request < Struct.new(:header, :body)
  • removed: const RubyVersionFile.FILENAME
  • added: class GemspecFile < Source
  • added: class MiseTomlFile < RubyVersionFile
  • added: class RuboCopEnvVar < Source
  • added: class ToolVersionsFile < RubyVersionFile
  • added: method GemspecFile.name()
  • added: method RuboCopEnvVar.name()
  • added: class Entry < Struct.new(:cop_name, :path)
  • added: class DuplicationCheckHandler < Psych::TreeBuilder
  • added: constructor DuplicationCheckHandler()
  • added: method DuplicationCheckHandler.end_mapping()
  • added: module RuboCop
  • added: class Addon < RubyLsp::Addon
  • added: class RuntimeAdapter
  • added: const Addon.RESTART_WATCHERS
  • added: constructor Addon()
  • added: constructor RuntimeAdapter(_)
  • added: method Addon.activate(_, _)
  • added: method Addon.deactivate()
  • added: method Addon.name()
  • added: method Addon.register_additional_file_watchers(_, _)
  • added: method Addon.version()
  • added: method Addon.workspace_did_change_watched_files(_)
  • added: method RuntimeAdapter.reload_config()
  • added: method RuntimeAdapter.run_diagnostic(_, _)
  • added: method RuntimeAdapter.run_formatting(_, _)
  • added: method RuntimeAdapter.run_range_formatting(_, _, _)