Update dependency rubocop to v1.88.1#18
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
6cbd964 to
e026ba8
Compare
e026ba8 to
62d4a60
Compare
62d4a60 to
254b791
Compare
219f7f1 to
c0657c4
Compare
c0657c4 to
5511303
Compare
5511303 to
244e633
Compare
244e633 to
29b2b18
Compare
29b2b18 to
411dd97
Compare
411dd97 to
ce1224e
Compare
ce1224e to
972f804
Compare
972f804 to
4919b48
Compare
4919b48 to
142f7f5
Compare
142f7f5 to
0063337
Compare
0063337 to
55df5f4
Compare
bac3216 to
5411f5d
Compare
5411f5d to
9e86e38
Compare
9e86e38 to
fdee303
Compare
fdee303 to
28728be
Compare
28728be to
edc8eb3
Compare
edc8eb3 to
97250c1
Compare
97250c1 to
9a88738
Compare
9a88738 to
b409c12
Compare
b409c12 to
d62c9ff
Compare
d62c9ff to
0fa4a84
Compare
0fa4a84 to
e24ee8a
Compare
e24ee8a to
a44f7b4
Compare
a44f7b4 to
c607efd
Compare
c607efd to
1311019
Compare
1311019 to
315a612
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.57.1→1.88.1Release Notes
rubocop/rubocop (rubocop)
v1.88.1Compare Source
Bug fixes
Bundler/GemCommentwith a non-literal gem option key. ([@bbatsov][])Layout/ClassStructurewhen a class body is a single safe-navigation call (e.g.test&.private_methods(def foo; end)). ([@bbatsov][])Gemspec/DevelopmentDependencieswhenAllowedGemsis nil. ([@bbatsov][])Metrics/MethodLengthwith an anonymousdefine_method. ([@bbatsov][])Naming/InclusiveLanguagewith nil or emptyFlaggedTerms. ([@bbatsov][])Security/IoMethodswith a non-string-literal argument. ([@bbatsov][])Style/EmptyStringInsideInterpolationwith a modifier conditional. ([@bbatsov][])Style/OpenStructUsewith a bareOpenStructroot node. ([@bbatsov][])Style/TrailingUnderscoreVariablewhen a nested destructuring group consists only of underscore variables. ([@bbatsov][])Security/MarshalLoadwith a proc argument. ([@bbatsov][])Style/MethodDefParentheseswith named rest arguments underEnforcedStyle: require_no_parentheses. ([@bbatsov][])Style/MultilineMethodSignaturewhere a signature that fits on one line was skipped because the multi-line source length was measured instead of the collapsed width. ([@bbatsov][])Style/OptionalArgumentswith singleton methods. ([@bbatsov][])Style/RedundantFilterChainwith numbered-parameter blocks. ([@bbatsov][])Lint/ToEnumArgumentswhen a braced hash is passed to keyword parameters (e.g.to_enum(:m, { required: required })), which raisesArgumentErrorwhen the enumerator is used. ([@RedZapdos123][])Naming/FileNamewhen a class or module name contains multiple consecutiveAllowedAcronyms. ([@camallen][])Style/DirEmptywith a block. ([@bbatsov][])Style/EmptyLiteralwith numbered anditblock parameters. ([@bbatsov][])Style/EnvHome. ([@bbatsov][])Style/InlineCommentwithrubocop:tododirectives. ([@bbatsov][])Style/MultilineIfThen. ([@bbatsov][])Style/NumericPredicatewhen an allowed method encloses a numbered-parameter oritblock. ([@bbatsov][])Style/OptionHashwhen the options hash is forwarded with an explicitsuper. ([@bbatsov][])Style/RedundantFormatwith a lone format sequence. ([@bbatsov][])Style/RedundantSelfwith a rescue exception variable. ([@bbatsov][])Style/Semicolonwith a semicolon inside a string literal. ([@bbatsov][])Layout/ConditionPositionthat dropped a body statement sharing the condition's line via a semicolon. ([@bbatsov][])Layout/EmptyCommentthat deleted a heredoc when removing an empty comment trailing its opener. ([@bbatsov][])Layout/EmptyLineBetweenDefsthat inserted a blank line inside a heredoc body when an endless method's body was a heredoc. ([@bbatsov][])Layout/SpaceAroundOperatorsthat turned**=and/=compound assignments into**//, dropping the assignment. ([@bbatsov][])Naming/MemoizedInstanceVariableName. ([@bbatsov][])Naming/RescuedExceptionsVariableName. ([@bbatsov][])Style/DataInheritancewith a brace block. ([@bbatsov][])Style/EmptyCaseConditionas ayield/superargument. ([@bbatsov][])Style/EmptyCaseConditionwith low-precedencewhenvalues. ([@bbatsov][])Style/EmptyClassDefinitionwith a namespaced constant. ([@bbatsov][])Style/EmptyHeredoc. ([@bbatsov][])Style/EvenOdd. ([@bbatsov][])Style/ExactRegexpMatchwith a single quote. ([@bbatsov][])Style/FileNull. ([@bbatsov][])Style/For. ([@bbatsov][])Style/FormatStringwith a low-precedence argument. ([@bbatsov][])Style/FormatStringwith a splat argument. ([@bbatsov][])Style/HashSlice. ([@bbatsov][])Style/HashSyntaxwith a multi-pair bracelessreturn. ([@bbatsov][])Style/IfWithSemicolonthat changed semantics when the condition was an assignment, by parenthesizing it in the resulting ternary. ([@bbatsov][])Style/KeywordArgumentsMergingwith a block-pass argument. ([@bbatsov][])Style/KeywordParametersOrderthat inserted a spurious blank line when a keyword optional parameter already trailed the parameters list. ([@bbatsov][])Style/MapIntoArraywith a block-pass argument. ([@bbatsov][])Style/MethodCallWithoutArgsParentheseswithit()in a numbered block. ([@bbatsov][])Style/MinMaxComparisonwithunless. ([@bbatsov][])Style/MultilineMemoizationwithrescue/ensure. ([@bbatsov][])Style/MultilineMethodSignature. ([@bbatsov][])Style/NilLambdawhen a non-lambda proc returnsnilwithreturn. ([@bbatsov][])Style/ParallelAssignmentwith a%ielement needing quoting. ([@bbatsov][])Style/ParallelAssignmentwith a%welement needing escaping. ([@bbatsov][])Style/PercentLiteralDelimitersthat produced invalid Ruby for a%ssymbol whose content contains the preferred delimiter. ([@bbatsov][])Style/PerlBackrefsthat rewrote$+/$LAST_PAREN_MATCHto the non-equivalentRegexp.last_match(-1); these are no longer flagged. ([@bbatsov][])Style/RedundantExceptionthat changed the exception message when raisingRuntimeErrorwith anilmessage. ([@bbatsov][])Style/RedundantFormatwith anilargument. ([@bbatsov][])Style/RedundantLineContinuationthat corrupted an earlier line when removing a line continuation at the end of a multi-line file. ([@bbatsov][])Style/RedundantRegexpEscapethat stripped a necessary\@​/\$escape after#in%r{}/%r//literals, enabling unintended interpolation. ([@bbatsov][])Style/RedundantStructKeywordInitwhenkeyword_initis not the last pair. ([@bbatsov][])Style/SingleLineDoEndBlockwhen the block body contains a heredoc. ([@bbatsov][])Style/StringHashKeyswhen the hash key is a heredoc. ([@bbatsov][])Style/TernaryParentheseswhen the condition is a modifierif/unlessexpression. ([@bbatsov][])Gemspec/RequireMFAwith multiple specifications. ([@bbatsov][])Lint/AssignmentInConditionandStyle/RedundantParentheseswhen an assignment is a statement of a multi-statementbeginin a condition. ([@koic][])Style/AccessorGroupingwith a single-line trailing comment. ([@bbatsov][])--fail-fastnot reporting offenses and exiting with a zero status when offenses are found. ([@koic][])Layout/BlockAlignmentwhenEnforcedStyleAlignWith: start_of_blockis used anddois on a continuation line of a parenthesisless multiline method call. ([@koic][])Style/HashTransformKeysandStyle/HashTransformValueswith a splat. ([@bbatsov][])Style/Lambdawith block-local arguments. ([@bbatsov][])Layout/IndentationWidthwhen the body of a multiline grouped expression in parentheses is not indented. ([@koic][])Bundler/OrderedGemsandGemspec/OrderedDependencieswhen the last declaration has no trailing newline, which joined two declarations into a single line. ([@koic][])Lint/UnescapedBracketInRegexpwhen a character class starts with a bare](e.g./[^]]/). ([@koic][])Changes
Style/MapCompactWithConditionalBlockautocorrect as unsafe becausecompactalso removesnilelements already present in the collection. ([@bbatsov][])Metrics/PerceivedComplexityto weight simplecase/inpattern branches the same ascase/whenbranches. ([@koic][])v1.88.0Compare Source
New features
Recursiveoption toStyle/MutableConstant. When enabled, the cop checks and freezes mutable literals nested inside arrays and hashes. The option is disabled by default to preserve existing behavior. ([@paracycle][])Bug fixes
Lint/RedundantSplatExpansionwhen splatting an empty literal (e.g.when *[]orrescue *[]), which expanded to invalid or semantically different code. ([@bbatsov][])Lint/RegexpAsConditionwhen the regexp literal is negated (e.g.if !/foo/), which inverted the condition. ([@bbatsov][])Lint/SymbolConversionwhen the receiver is an interpolated string containing an embedded double quote (e.g."foo#{bar}\"qux".to_sym), which produced a syntax error. ([@bbatsov][])Style/CombinableLoopswhen aforloop has an empty body, and stop autocorrecting consecutiveforloops whose iteration variables differ (which produced code referencing an undefined variable). ([@bbatsov][])Style/ConstantVisibilitywhen a visibility declaration has a numeric literal argument (e.g.private_constant 42). ([@bbatsov][])Lint/OrderedMagicCommentswhen anencodingmagic comment is preceded by a magic comment other thanfrozen_string_literal(e.g.shareable_constant_value). ([@bbatsov][])Lint/RedundantWithIndexwhen the block takes no arguments (e.g.ary.each_with_index { do_something }). ([@bbatsov][])Lint/RequireRelativeSelfPathwhen requiring the current file by name with its extension (e.g.require_relative 'foo.rb') and the file path is absolute. ([@bbatsov][])Lint/SafeNavigationChainwhen an ordinary method is chained after a parenthesized safe navigation call (e.g.(x&.foo).bar). ([@bbatsov][])Lint/SafeNavigationWithEmptywhen the receiver of&.empty?is a local variable, instance variable, constant, or other non-method-call expression. ([@bbatsov][])Lint/SendWithMixinArgumentwhensend/public_send/__send__is called with no explicit receiver or with aselfreceiver (e.g.send(:include, Bar)). ([@bbatsov][])Lint/ToEnumArgumentswhen more positional arguments are passed than the method accepts (e.g.def m(x); to_enum(:m, x, extra); end), which raisesArgumentErrorwhen the enumerator is used. ([@bbatsov][])Lint/UnescapedBracketInRegexpwhen an unescaped]is preceded by an escaped backslash (e.g./abc\\]123/). ([@bbatsov][])Style/ArrayIntersectWithSingleElementwith a splat argument (e.g.array.intersect?([*foo])), which is not a single element and was incorrectly rewritten toarray.include?(*foo). ([@bbatsov][])Style/ColonMethodCallwith chained JRuby interop calls (e.g.Java::com::something_method). ([@bbatsov][])Style/ConditionalAssignmentwithEnforcedStyle: assign_inside_conditionwhen assigning anunlesswithout anelsebranch (e.g.x = unless cond; 1; end), which was rewritten to move the assignment inside theunlessand changed behavior when the condition was true. ([@bbatsov][])Layout/BlockAlignmentwithEnforcedStyleAlignWith: start_of_linewhen a block is passed as a method argument. ([@augustocbx][])Lint/RaiseExceptionwhenraise Exceptionis used inside a module nested within an allowed implicit namespace (e.g.Gem). ([@bbatsov][])Lint/RedundantDirGlobSortwhensortis given a comparator block or a block-pass argument, which is not redundant with the default sorting. ([@bbatsov][])Lint/ShadowingOuterLocalVariablewhen a block argument has the same name as a pattern variable from a differentinbranch of the samecase. ([@bbatsov][])Lint/SuppressedExceptionInNumberConversionwhen the numeric constructor already passesexception: false(e.g.Integer(arg, exception: false) rescue nil), which also produced an autocorrect with a duplicateexception: falsekeyword. ([@bbatsov][])Lint/TopLevelReturnWithArgumentwhen areturnwith an argument is inside a numbered-parameter block or anitblock. ([@bbatsov][])Lint/UselessRuby2Keywordswhenruby2_keywordsin a nested class or module refers to a method of the same name defined in an outer scope. ([@bbatsov][])Lint/UselessSetterCallwhen a multiple assignment uses nested destructuring (e.g.(a, b), c = arg, other_arg), which misaligned variables with the right-hand side values. ([@bbatsov][])Style/ZeroLengthPredicatewhenFile::Stat.new(...).size.zero?is used. ([@augustocbx][])--start-serverto wait until the server is running before returning, which fixes a flaky--restart-serverspec and a race for commands run right after starting the server. ([@koic][])Style/Aliasnot detecting block scope for numbered-parameter anditblocks, which caused a false positive foralias_methodand a false negative foraliasinside such blocks. ([@bbatsov][])Style/IfUnlessModifierandStyle/Nextcorrect the same conditional. ([@fynsta][])Style/FileWritewhen a literal or variable is passed towritein the block form. ([@koic][])Style/RedundantFormatwhen the format string is a heredoc with format arguments. ([@fynsta][])Style/AndOrwhen an operand isnext,break, oryieldwith an argument (e.g.foo and next 1), which produced invalid Ruby likefoo && next 1. ([@bbatsov][])Style/ArrayFirstLastwhenarr[0]/arr[-1]is the target of a compound assignment (e.g.arr[0] += 1), which producedarr.first += 1and raisedNoMethodError. ([@bbatsov][])Style/ArrayIntersectwhere a negated predicate on a safe-navigation chain (e.g.a&.intersection(b)&.none?) was rewritten to!a&.intersect?(b), flipping the result when the receiver isnil. ([@bbatsov][])Style/BlockDelimitersthat converted a single-linedo...endblock containing a block-levelrescueorensureto{...}, producing invalid Ruby. ([@bbatsov][])Style/CaseEqualitywhen the argument is an operator or unary expression (e.g.Array === a + b), which produced mis-parsed code likea + b.is_a?(Array). ([@bbatsov][])Style/ClassEqualityComparisoninside a namespace when the class name string is already fully qualified (e.g.bar.class.name == '::Bar'), which producedinstance_of?(::::Bar)and was a syntax error. ([@bbatsov][])Style/ClassEqualityComparisonwhen comparingClassitself to a string literal (e.g.var.class == 'Date'), which producedvar.instance_of?('Date')and raisedTypeError; such comparisons are no longer autocorrected. ([@bbatsov][])Style/ClassMethodsDefinitionsthat corrupted a preceding comment containingdef <name>and left the method undefined as a class method. ([@bbatsov][])Style/ComparableClampwhen the clamped value is an operator expression (e.g.a + b), which produced mis-parsed code likea + b.clamp(low, high). ([@bbatsov][])Style/ConcatArrayLiteralswith an empty array literal argument (e.g.arr.concat([], [b])), which produced invalid Ruby likearr.push(, b). ([@bbatsov][])Style/DigChainthat duplicated a trailing comment and dropped indentation when the chain was inside a method or block. ([@bbatsov][])Lint/UselessTimeswhen a1.timesblock takes a single destructured (|(a, b)|) or splat (|*a|) argument, which produced a body referencing an undefined variable. ([@bbatsov][])Style/ConditionalAssignmentwithEnforcedStyle: assign_inside_conditionand a single-linecase. ([@fynsta][])Style/ParallelAssignmentwhen the right-hand side contains a heredoc. ([@fynsta][])Style/Semicolonwhen a heredoc is opened before the semicolon. ([@fynsta][])Style/WordArraywhen the array contains heredocs. ([@fynsta][])Lint/UselessAssignmentthat rewrote a first-seenfoo &&= 1tofoo && 1, raisingNameErrorat runtime. ([@bbatsov][])Includepattern could match directories above the project root. ([@augustocbx][])Lint/InterpolationCheckwhen interpolation appears in a multiline single-quoted string. ([@bbatsov][])Lint/NonLocalExitFromIteratorwhen the iterator receiver uses safe navigation. ([@bbatsov][])Lint/RedundantSafeNavigationwith&.respond_to?on a guaranteed-instance receiver (e.g.foo.to_s&.respond_to?(:class)) and with&.to_husing a numbered-parameter oritblock (e.g.foo&.to_h { _1 } || {}). ([@bbatsov][])Lint/RescueTypewhen rescuing fromtrue,false, a rational literal (1r), or a complex literal (1i), all of which raise aTypeErrorat runtime. ([@bbatsov][])Lint/SelfAssignmentwith||=and&&=on constants, attributes, and hash keys (e.g.Foo ||= Foo,foo.bar ||= foo.bar,hash['foo'] ||= hash['foo']). ([@bbatsov][])Lint/SharedMutableDefaultwhen a mutable default is combined with acapacity:keyword argument and given as an array orArray.new/Hash.new(e.g.Hash.new([], capacity: 42)). ([@bbatsov][])Lint/FloatComparisonwhen comparing against a parenthesized zero ornil. ([@bbatsov][])Lint/IncompatibleIoSelectWithFiberSchedulerwhen the single array argument element is a splat. ([@bbatsov][])Lint/LiteralAssignmentInConditionwhen a literal is assigned inside a block in the condition. ([@bbatsov][])Style/DateTime: a bareto_datetimecall on implicit self is no longer flagged, and historic-date calls using safe navigation (e.g.DateTime&.iso8601(str, Date::ENGLAND)) are now exempted. ([@bbatsov][])Layout/BlockAlignmentwhen there is a line break between method arguments before the block. ([@koic][])Lint/EnsureReturnandLint/NoReturnInBeginEndBlocksforreturninside a nested method definition or lambda. ([@bbatsov][])Style/WhileUntilDowhen the loop body is on the same line as thedokeyword. ([@koic][])Lint/ErbNewArgumentswhen a keyword argument follows thesafe_levelargument. ([@bbatsov][])Lint/LambdaWithoutLiteralBlockthat dropped safe navigation from the block argument. ([@bbatsov][])Lint/NumericOperationWithConstantResultwhen using safe navigation, as the result isnilwhen the receiver isnil. ([@bbatsov][])Lint/RedundantCopDisableDirectiveandLint/RedundantCopEnableDirectivewhen a cop name in the directive is a prefix of another cop name in the same directive (e.g.Lint/AmbiguousOperatorandLint/AmbiguousOperatorPrecedence). ([@bbatsov][])Style/FileWritethat deleted or duplicated heredoc bodies when a heredoc was used as the filename, in an argument expression, or in an inline block. ([@fynsta][])Lint/UselessTimeswhen thetimesblock usesnext/break(which became a syntax error) or takes multiple block arguments (which became undefined references). ([@bbatsov][])Lint/ScriptPermissionto honor a cop-levelAutoCorrect: falsesetting and to not crash on sources without a file on disk (e.g. unsaved editor buffers). ([@bbatsov][])Lint/TrailingCommaInAttributeDeclarationto detect a trailing comma before a singleton method definition (e.g.def self.bar) and to not crash when adefis the sole argument (e.g.attr_reader def bar; end). ([@bbatsov][])Lint/LiteralInInterpolationwith embedded quotes and escaped interpolation text. ([@RedZapdos123][])Lint/LiteralInInterpolationwhen interpolated hashes contain symbols that require quoted syntax, such as:'foo-bar'. ([@RedZapdos123][]).rubocop_todo.ymlautocorrect safety comments for local custom cops configured in the project config. ([@RedZapdos123][])Lint/NumberConversionoffenses on safe navigation calls. ([@RedZapdos123][])--auto-gen-configto record--disable-pending-copsand--enable-pending-copsin the generated.rubocop_todo.ymlcommand so that--regenerate-todopreserves them. ([@augustocbx][])InternalAffairs/RedundantLetRuboCopConfigNewcrash whenlet(:config)has no enclosingdescribe. ([@bbatsov][])Changes
Lint/RequireRangeParenthesesoffense message, which incorrectly called the flagged (finite) range "endless". ([@bbatsov][])Lint/RefinementImportMethods(replacinginclude/prependwithimport_methods) and report that the functionality was removed (not just deprecated) on Ruby 3.2+. ([@bbatsov][])Lint/UnreachableCode,Metrics/AbcSize,Security/Eval) for consistency. ([@bbatsov][])Lint/RedundantWithObjectautocorrect unsafe, sinceeach_with_objectreturns the memo object while the correctedeachreturns the receiver. ([@bbatsov][])Bundler/GemComment'sIgnoredGemstoAllowedGems,Lint/NumberConversion'sIgnoredClassestoAllowedClasses,Lint/MissingCopEnableDirective'sMaximumRangeSizetoMaxRangeSize,Metrics/CollectionLiteralLength'sLengthThresholdtoMax, andStyle/FetchEnvVar'sAllowedVarstoAllowedVariables. ([@bbatsov][])v1.87.0Compare Source
New features
--enable-all-copsand--disable-all-copscommand line options that overrideAllCops/EnabledByDefaultandAllCops/DisabledByDefaultin configuration files. ([@koic][])Layout/EmptyLineAfterGuardClauseaccept the new# simplecov:disableand# simplecov:enabledirective comments. ([@koic][])AllCops/UseProjectIndexto enable cross-file detection inLint/ConstantReassignment(experimental). ([@koic][])Bug fixes
Lint/ParenthesesAsGroupedExpressionwhen the first argument is a call-like expression with its own parentheses, such asyield(...). ([@koic][])Style/YodaConditionwhen one side is an array or hash literal containing non-literal elements. ([@koic][])Style/Aliascausing a syntax error when the return value ofalias_methodis used, such as an argument topublic,private,protected, ormodule_function, or the right-hand side of an assignment. ([@koic][])Style/ClassAndModuleChildrencausing a syntax error when the namespace contains a method call (e.g.,class self.class::Foo; end). ([@koic][])Style/FileWritecausing a syntax error when the written heredoc is chained with another method call. ([@koic][])Style/HashConversioncausing a syntax error whenHash[...]is passed an anonymous splat (*). ([@koic][])Style/StructInheritancecausing a syntax error when the inheritedStruct.newis called without parentheses. ([@koic][])Layout/RedundantLineBreakwhen a single-line block is chained with a safe navigation method call. ([@koic][])Layout/IndentationWidthto indent block bodies relative to the method selector for trailing-dot multi-line method chains whenEnforcedStyleAlignWithisrelative_to_receiver. ([@ddbrendan][])Style/RedundantParenthesesthat swallowed chained method calls into a trailing inline comment on the line above the closing parenthesis. ([@hammadxcm][])Changes
FilePatterns#match?results per path so cops sharing the sameInclude/Excludeconfiguration do not each repeatFile.fnmatch?work on every file. ([@Darhazer][])v1.86.2Compare Source
New features
Bug fixes
Style/HashLookupMethodwhen chainingfetch(or[]) calls on the same expression. ([@koic][])Style/ReduceToHashwhen nestedeach_with_object/inject/reducecalls would build hashes. ([@koic][])Style/SoleNestedConditionalwhen autocorrecting nested conditionals containing comments. ([@koic][])constantsfromStyle/ModuleMemberExistenceCheck. ([@t-daisuke][])Style/RedundantSelfwhen an explicitselfreceiver in one scope matches the LHS of an||=,&&=, orop_asgnin another scope. ([@koic][])Lint/RequireRelativeSelfPathwhen a non-.rbfile usesrequire_relativewith its own basename. ([@koic][])Layout/ClosingParenthesisIndentationandLayout/CommentIndentation. ([@koic][])Lint/RedundantSafeNavigationwhen safe navigation appears inrescueorensurebodies. ([@koic][])Lint/RedundantSafeNavigationwhen safe navigation appears in the body ofunless. ([@koic][])Style/CopyrightwhenNoticepattern starts with\A#, uses\smetacharacters, or has multiple spaces after#. ([@koic][])Style/DocumentDynamicEvalDefinitionwhen the heredoc contains an escaped interpolation (\#{...}). ([@eyupcanakman][])--outdisables parallelization. ([@deivid-rodriguez][])TargetFinderto work correctly inside hidden parent directories. ([@alpaca-tc][])FrozenErrorinDisabledConfigFormatterfor frozen array config parameters. ([@koic][])Gemspec/RequireMFAcausing an infinite loop whenrubygems_mfa_requiredmetadata uses a symbol key. ([@koic][])--disable-uncorrectableand offense near heredoc. ([@jonas054][])Layout/MultilineMethodCallIndentationwhen a dot-aligned method chain is inside a hash pair value. ([@nicolas-finary][])Lint/MissingCopEnableDirectivewhen# rubocop:disableis wrapped in a# rubocop:push/# rubocop:popblock. ([@koic][])Style/RegexpLiteralwhen the regexp contains unbalanced braces that conflict with the preferred%rdelimiters. ([@koic][])Style/CopyrightwhenAutocorrectNoticelacks a#prefix orNoticepattern starts with^#. ([@koic][])Style/IfInsideElseautocorrect moving comments into the wrong branch when a comment precedes the nestedifin anelse. ([@hammadxcm][])Style/WhileUntilModifierwhen the body is a conditional. ([@fujitanisora][])v1.86.1Compare Source
Bug fixes
Style/AccessModifierDeclarationsinline autocorrect dropping comments between the access modifier and the following method definition. ([@dduugg][])Lint/DuplicateMethodsfalse positives for anonymous classes in constant assignments and method return values. ([@eugeneius][])Lint/DuplicateMethodsfalse positives with anonymous classes inside blocks (e.g. RSpeclet,describe). ([@ShkumbinDelija][])included_modulesfromStyle/ModuleMemberExistenceCheck. ([@koic][])Style/RedundantLineContinuationwhen using interpolated string literals. ([@koic][])file_to_include?when a relativeIncludepattern matches aConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.