#13077: Add new global StringLiteralsFrozenByDefault option for correct analysis with RUBYOPT=--enable=frozen-string-literal. (@earlopain)
#13080: Add new DocumentationExtension global option to serve documentation with extensions different than .html. (@earlopain)
#13074: Add new Lint/UselessNumericOperation cop to check for inconsequential numeric operations. (@zopolis4)
#13061: Add new Style/RedundantInterpolationUnfreeze cop to check for dup and @+ on interpolated strings in Ruby >= 3.0. (@earlopain)
Bug fixes
#13093: Fix an error for Lint/ImplicitStringConcatenation when implicitly concatenating a string literal with a line break and string interpolation. ([@koic][])
#13098: Fix an error for Style/IdenticalConditionalBranches when handling empty case branches. ([@koic][])
#13113: Fix an error for Style/IfWithSemicolon when a nested if with a semicolon is used. ([@koic][])
#13097: Fix an error for Style/InPatternThen when using alternative pattern matching deeply. ([@koic][])
#13159: Fix an error for Style/OneLineConditional when using if/then/else/end with multiple expressions in the then body. ([@koic][])
#13092: Fix an incorrect autocorrect for Layout/EmptyLineBetweenDefs when two method definitions are on the same line separated by a semicolon. ([@koic][])
#13116: Fix an incorrect autocorrect for Style/IfWithSemicolon when a single-line if/;/end has an argument in the then body expression. ([@koic][])
#13161: Fix incorrect autocorrect for Style/IfWithSemicolon when using multiple expressions in the else body. ([@koic][])
#13132: Fix incorrect autocorrect for Style/TrailingBodyOnMethodDefinition when an expression precedes a method definition on the same line with a semicolon. ([@koic][])
#13164: Fix incorrect autocorrect behavior for Layout/BlockAlignment when EnforcedStyleAlignWith: either (default). ([@koic][])
#13087: Fix an incorrect autocorrect for Style/MultipleComparison when expression with more comparisons precedes an expression with less comparisons. ([@fatkodima][])
#13172: Fix an error for Layout/EmptyLinesAroundExceptionHandlingKeywords when ensure or else and end are on the same line. ([@koic][])
#13107: Fix an error for Lint/ImplicitStringConcatenation when there are multiple adjacent string interpolation literals on the same line. ([@koic][])
#13111: Fix an error for Style/GuardClause when if clause is empty and correction would not fit on single line because of Layout/LineLength. (@earlopain)
#13137: Fix an error for Style/ParallelAssignment when using __FILE__. (@earlopain)
#13143: Fix an error during TargetRubyVersion detection if the gemspec is not valid syntax. (@earlopain)
#13131: Fix false negatives for Lint/Void when using ensure, defs and numblock. ([@vlad-pisanov][])
#13174: Fix false negatives for Style/MapIntoArray when initializing the destination using Array[], Array([]), or Array.new([]). ([@vlad-pisanov][])
#13173: Fix false negatives for Style/EmptyLiteral when using Array[], Hash[], Array.new([]) and Hash.new([]). ([@vlad-pisanov][])
#13126: Fix a false positive for Style/Alias when using multiple alias in def. ([@koic][])
#13085: Fix a false positive for Style/EmptyElse when a comment-only else is used after elsif and AllowComments: true is set. ([@koic][])
#13118: Fix a false positive for Style/MapIntoArray when splatting. (@earlopain)
#13105: Fix false positives for Style/ArgumentsForwarding when forwarding kwargs/block arg with non-matching additional args. ([@koic][])
#13139: Fix false positives for Style/RedundantCondition when using modifier if or unless. ([@koic][])
#13134: Fix false negative for Lint/Void when using using frozen literals. ([@vlad-pisanov][])
#13148: Fix incorrect autocorrect for Lint/EmptyConditionalBody when missing elsif body with end on the same line. ([@koic][])
#13109: Fix an error for the Lockfile parser when it contains incompatible BUNDLED WITH versions. (@earlopain)
#13112: Fix detection of TargetRubyVersion through the gemfile if the gemfile ruby version is below 2.7. (@earlopain)
#13155: Fixes an error when the server cache directory has too long path, causing rubocop to fail even with caching disabled. ([@protocol7][])
Changes
#13050: Allow get_!, set_!, get_?, set_?, get_=, and set_= in Naming/AccessorMethodName. ([@koic][])
#13103: Make Lint/UselessAssignment autocorrection safe. ([@koic][])
#13099: Make Style/RedundantRegexpArgument respect the EnforcedStyle of Style/StringLiterals. ([@koic][])
#13077: Add new global StringLiteralsFrozenByDefault option for correct analysis with RUBYOPT=--enable=frozen-string-literal. ([@earlopain][])
#13080: Add new DocumentationExtension global option to serve documentation with extensions different than .html. ([@earlopain][])
#13074: Add new Lint/UselessNumericOperation cop to check for inconsequential numeric operations. ([@zopolis4][])
#13061: Add new Style/RedundantInterpolationUnfreeze cop to check for dup and @+ on interpolated strings in Ruby >= 3.0. ([@earlopain][])
Bug fixes
#13093: Fix an error for Lint/ImplicitStringConcatenation when implicitly concatenating a string literal with a line break and string interpolation. ([@koic][])
#13098: Fix an error for Style/IdenticalConditionalBranches when handling empty case branches. ([@koic][])
#13113: Fix an error for Style/IfWithSemicolon when a nested if with a semicolon is used. ([@koic][])
#13097: Fix an error for Style/InPatternThen when using alternative pattern matching deeply. ([@koic][])
#13159: Fix an error for Style/OneLineConditional when using if/then/else/end with multiple expressions in the then body. ([@koic][])
#13092: Fix an incorrect autocorrect for Layout/EmptyLineBetweenDefs when two method definitions are on the same line separated by a semicolon. ([@koic][])
#13116: Fix an incorrect autocorrect for Style/IfWithSemicolon when a single-line if/;/end has an argument in the then body expression. ([@koic][])
#13161: Fix incorrect autocorrect for Style/IfWithSemicolon when using multiple expressions in the else body. ([@koic][])
#13132: Fix incorrect autocorrect for Style/TrailingBodyOnMethodDefinition when an expression precedes a method definition on the same line with a semicolon. ([@koic][])
#13164: Fix incorrect autocorrect behavior for Layout/BlockAlignment when EnforcedStyleAlignWith: either (default). ([@koic][])
#13087: Fix an incorrect autocorrect for Style/MultipleComparison when expression with more comparisons precedes an expression with less comparisons. ([@fatkodima][])
#13172: Fix an error for Layout/EmptyLinesAroundExceptionHandlingKeywords when ensure or else and end are on the same line. ([@koic][])
#13107: Fix an error for Lint/ImplicitStringConcatenation when there are multiple adjacent string interpolation literals on the same line. ([@koic][])
#13111: Fix an error for Style/GuardClause when if clause is empty and correction would not fit on single line because of Layout/LineLength. ([@earlopain][])
#13137: Fix an error for Style/ParallelAssignment when using __FILE__. ([@earlopain][])
#13143: Fix an error during TargetRubyVersion detection if the gemspec is not valid syntax. ([@earlopain][])
#13131: Fix false negatives for Lint/Void when using ensure, defs and numblock. ([@vlad-pisanov][])
#13174: Fix false negatives for Style/MapIntoArray when initializing the destination using Array[], Array([]), or Array.new([]). ([@vlad-pisanov][])
#13173: Fix false negatives for Style/EmptyLiteral when using Array[], Hash[], Array.new([]) and Hash.new([]). ([@vlad-pisanov][])
#13126: Fix a false positive for Style/Alias when using multiple alias in def. ([@koic][])
#13085: Fix a false positive for Style/EmptyElse when a comment-only else is used after elsif and AllowComments: true is set. ([@koic][])
#13118: Fix a false positive for Style/MapIntoArray when splatting. ([@earlopain][])
#13105: Fix false positives for Style/ArgumentsForwarding when forwarding kwargs/block arg with non-matching additional args. ([@koic][])
#13139: Fix false positives for Style/RedundantCondition when using modifier if or unless. ([@koic][])
#13134: Fix false negative for Lint/Void when using using frozen literals. ([@vlad-pisanov][])
#13148: Fix incorrect autocorrect for Lint/EmptyConditionalBody when missing elsif body with end on the same line. ([@koic][])
#13109: Fix an error for the Lockfile parser when it contains incompatible BUNDLED WITH versions. ([@earlopain][])
#13112: Fix detection of TargetRubyVersion through the gemfile if the gemfile ruby version is below 2.7. ([@earlopain][])
#13155: Fixes an error when the server cache directory has too long path, causing rubocop to fail even with caching disabled. ([@protocol7][])
Changes
#13050: Allow get_!, set_!, get_?, set_?, get_=, and set_= in Naming/AccessorMethodName. ([@koic][])
#13103: Make Lint/UselessAssignment autocorrection safe. ([@koic][])
#13099: Make Style/RedundantRegexpArgument respect the EnforcedStyle of Style/StringLiterals. ([@koic][])
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Updates the requirements on rubocop to permit the latest version.
Release notes
Sourced from rubocop's releases.
... (truncated)
Changelog
Sourced from rubocop's changelog.
... (truncated)
Commits
c8edd7d
Cut 1.669c106a5
Update Changelog1e4b4c8
Add newLint/UselessNumericOperation
copd6b05cd
[Fix #13150] Don't considerget_!
,set_!
,get_?
,set_?
,get_=
, and ...9e1e493
[Fix #13061] Add newStyle/RedundantInterpolationUnfreeze
cop0431023
Fix false negatives forStyle/EmptyLiteral
when usingArray[]
,Hash[]
, ...a2ef5b4
Fix false negatives forStyle/MapIntoArray
when initializing the destinatio...2382ecb
Fix false negative forLint/Void
when using using frozen literalsbe6e656
Merge pull request #13172 from koic/fix_error_for_layout_empty_lines_around_e...d8e0c87
Merge pull request #13175 from Earlopain/no-forwardableDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show