Update dependency rubocop to v1 - #3
Conversation
8087ea8 to
d63b91c
Compare
a656d9c to
f6b8e54
Compare
f6b8e54 to
2f74f46
Compare
|
Kudos, SonarCloud Quality Gate passed! |
2f74f46 to
6268252
Compare
6268252 to
2e16f17
Compare
2e16f17 to
8c0bccf
Compare
8c0bccf to
c48cc89
Compare
c48cc89 to
6b5946f
Compare
|
Kudos, SonarCloud Quality Gate passed! |
6b5946f to
1c955c3
Compare
1c955c3 to
e393b43
Compare
308f7e9 to
37f9cb4
Compare
37f9cb4 to
e8f0855
Compare
|
Kudos, SonarCloud Quality Gate passed! |
e8f0855 to
142bcdd
Compare
|
Kudos, SonarCloud Quality Gate passed! |
142bcdd to
d9db27e
Compare
d9db27e to
bc2483b
Compare
bc2483b to
eee04da
Compare
eee04da to
4d992fe
Compare
4d992fe to
44168ef
Compare
44168ef to
fb00941
Compare
fb00941 to
daa0c60
Compare
6be5825 to
3ca9d43
Compare
3ca9d43 to
68e5dca
Compare
68e5dca to
cbbea76
Compare
74250a5 to
2bd5f4a
Compare
2bd5f4a to
b456d6c
Compare
|
b456d6c to
94d447e
Compare
94d447e to
9610231
Compare
9610231 to
4bf01cd
Compare
4bf01cd to
60afa04
Compare
60afa04 to
83d3358
Compare
83d3358 to
9f87cbc
Compare
|
9f87cbc to
4d61a35
Compare
4d61a35 to
8e81b28
Compare
8e81b28 to
24f903f
Compare
24f903f to
41930a5
Compare
41930a5 to
661d76b
Compare
|
661d76b to
085bfdd
Compare
|
085bfdd to
36975ec
Compare
|
36975ec to
f32661e
Compare
f32661e to
da86c00
Compare
da86c00 to
0c40f14
Compare
|
0c40f14 to
1fbcdcb
Compare
1fbcdcb to
d03647b
Compare
|
d03647b to
6f14b01
Compare
|















This PR contains the following updates:
'~> 0.66.0'→'~> 1.89.0'Release Notes
rubocop/rubocop (rubocop)
v1.89.0Compare Source
New features
DelegatingMethodsoption toLint/DuplicateMethodsto register customdelegate-shaped methods. ([@bbatsov][])DisallowedCopsconfiguration option toStyle/DisableCopsWithinSourceCodeDirective. ([@hammadxcm][])AllowYARDCommentBlockSeparatoroption toLayout/LeadingCommentSpace. ([@koic][])Lint/DeprecatedReferencecop to detect references to methods and constants documented as@deprecated, powered by the project index. ([@bbatsov][])Lint/NameTypocop. ([@bbatsov][])Lint/UnusedPrivateMethodcop for project-wide dead-code detection via the project index (disabled by default). ([@bbatsov][])Style/DisableCopsWithinSourceCodeDirectiveimpossible to disable via directive comments when explicitly enabled withEnabled: true. ([@rafaelfranca][])textDocument/codeActionrequests in the built-in language server, so LSP clients that request code actions (Eglot, Helix, Flycheck, ...) can apply RuboCop's autocorrects, not only clients that read them off the published diagnostic. ([@bbatsov][])NewCopsin department configuration to enable pending cops per department, including cops added up to a specific version (e.g.Style: NewCops: '1.19'). ([@koic][])Layout/IndentationWidthandStyle/ClassAndModuleChildren. ([@ioquatix][], [@koic][])Bug fixes
Lint/ToEnumArgumentswhen explicit extra keyword arguments are passed (e.g.def m(x:); to_enum(:m, x: x, y: 1); end), which raisesArgumentErrorwhen the enumerator is used. ([@RedZapdos123][])Layout/HashAlignmentwhen usingEnforcedHashRocketStyle: tableand a hash key spans multiple lines. ([@dduugg][])Lint/UselessAssignmentwith modifier conditions. ([@bbatsov][])Lint/Voidwith setter methods. ([@bbatsov][])Naming/VariableNumberwhen using an empty symbol hash key. ([@koic][])Style/MutableConstantwithData.define. ([@bbatsov][])Style/MissingRespondToMissingwhenrespond_to_missing?is defined in a reopening of the class andUseProjectIndexis enabled. ([@bbatsov][])Lint/LiteralAsConditionwhen a literal condition has an empty branch. ([@koic][])Lint/UselessRuby2Keywordswhenruby2_keywordsis used with a symbol but no method definition is found. ([@koic][])Metrics/MethodLengthwhen a method contains a heredoc and__ENCODING__. ([@koic][])Style/ArrayIntersectcop when the block-based check callsmember?/include?without an explicit receiver. ([@dduugg][])Style/NegativeArrayIndexcop. ([@viralpraxis][])Style/RedundantFormatwhen a format string uses a positional argument number beyond the 64-bit range. ([@koic][])Style/RedundantFormatwhen the argument for a positional variable width is missing. ([@koic][])Lint/LiteralInInterpolation. ([@bbatsov][])Style/ArrayIntersectwhen using safe navigationnone?with a block. ([@koic][])Style/MultipleComparisonthat dropped an allowed method comparison appearing between the compared values. ([@bbatsov][])Style/RedundantFileExtensionInRequirethat produced invalid Ruby when a backslash preceded the.rbextension. ([@bbatsov][])Lint/Voidto no longer autocorrect a constant used in a void context, since removing it can change behavior through constant autoloading side effects. ([@bbatsov][])Lint/InheritExceptionwhenExceptionis inherited indirectly through a project class (UseProjectIndex). ([@bbatsov][])Lint/AmbiguousAssignmentwhen using attribute or index assignment. ([@sngsmz][])Layout/ClassStructurewhen class body elements are wrapped inbeginblocks. ([@koic][])Layout/ClassStructurewhen usingprivate_class_methodorpublic_class_methoddef modifiers. ([@koic][])Style/ArrayIntersectwhen the receiver ofinclude?in a block is not an array literal. ([@koic][])Style/MultilineIfThenwhen using the Prism parser engine and anelsifwithoutthenfollows a branch usingthenwith a body on the same line. ([@koic][])Lint/DuplicateMethodsfor anonymous classes (Class.new) passed as arguments to the same named-receiver method call (e.g.T.cast). EachClass.newblock is an independent class, so methods defined in different blocks should not be treated as duplicates. ([@rafaelfranca][])Style/RedundantConstantBaseinside namespaces when the constant provably resolves identically without::(UseProjectIndex). ([@bbatsov][])Style/LambdaandStyle/SymbolProcproducing a syntax error like->(x)(&:method)when both cops run onlambda { |x| x.method }. ([@koic][])UseProjectIndex). ([@bbatsov][])Layout/LineLengthautocorrection for endless methods with block bodies. ([@hervetatche][])Lint/ConstantReassignmentwhen a built-in constant name is assigned andUseProjectIndexis enabled. ([@bbatsov][])Style/ClassAndModuleChildrenignoringEnforcedStyleForClassesandEnforcedStyleForModules, and skip autocorrection when mixed per-type styles make the result ambiguous. ([@bbatsov][])Layout/MultilineMethodCallIndentationwhen a line has multiple chained calls before a single-line block. ([@hammadxcm][])Style/RedundantLineContinuationby verifying backslash removal against a reparse of the source instead of hand-written grammar rules. ([@bbatsov][])Naming/PredicatePrefixandNaming/AccessorMethodNamewhen the method overrides an ancestor method defined in the project (UseProjectIndex). ([@bbatsov][])Style/StaticClasswhen the class is subclassed elsewhere in the project (UseProjectIndex). ([@bbatsov][])Style/MethodCallWithArgsParenthesesomit_parenthesesstyle by verifying each omission by reparsing before registering an offense. ([@bbatsov][])Changes
Style/Documentationto accept a reopened class or module documented at another definition site whenUseProjectIndexis enabled. ([@bbatsov][])rubocop-i18nto suggested extensions. ([@tejasbubane][])executeCommandProviderand the supported code action kinds in the language server's capabilities, so clients can discover therubocop.formatAutocorrectsandrubocop.formatAutocorrectsAllcommands. ([@bbatsov][])AllCops/UseProjectIndexis enabled. ([@bbatsov][])Lint/AmbiguousBlockAssociationto detectdo...endblocks likely intended for enumerable methods in arguments. ([@hammadxcm][])Layout/LineLengthperformance on files with large collection literals. ([@koic][])Style/ConditionalAssignmentskip cases it cannot safely rewrite instead of emitting invalid code or erroring on unusual branch shapes. ([@bbatsov][])Style/IfUnlessModifieroffense message when the condition is part of a larger expression. ([@rafa-el-souza][])Style/DisableCopsWithinSourceCodeDirectiveperformance on largeAllowedCopsandDisallowedCopslists by matching directives against memoized sets instead of rebuilding an array lookup per comment. ([@corsonknowles][])Style/RedundantLineContinuationperformance on files with many adjacent string literals joined by line continuations. ([@koic][])Lint/DuplicateMethodsto detect duplicates across files whenUseProjectIndexis enabled. ([@bbatsov][])Style/IfUnlessModifier,Style/WhileUntilModifier,Style/GuardClause, and other modifier cops respectLayout/LineLengthexemptions (allowed patterns, cop directives, allowed URIs) when checking whether the modifier form fits on one line. ([@bbatsov][])Lint/SafeNavigationChainautocorrection as unsafe. ([@koic][])Lint/ConstantResolutionto report only genuinely ambiguous constants whenUseProjectIndexis enabled. ([@bbatsov][])Style/RedundantAssignmentoffenses when there are comments between assignment and reference. ([@lovro-bikic][])Style/ClassAndModuleChildrenautocorrection to consult the project index for the namespace kind and definition sites whenUseProjectIndexis enabled. ([@bbatsov][])Lint/MissingSuperto skip the constructor offense when the project index shows no ancestor definesinitialize(UseProjectIndex). ([@bbatsov][])Style/Copyrightto validateAutocorrectNoticeonly when autocorrection is requested (-a/-A), so plain inspection no longer raises a warning. ([@koic][])Layout/RedundantLineBreakto verify each correction by reparsing before registering an offense. ([@bbatsov][])Style/RedundantParenthesesto verify each correction by reparsing before registering an offense. ([@bbatsov][])Style/SoleNestedConditionalto only register an offense when its correction is verified to parse. ([@bbatsov][])v1.88.2Compare Source
Bug fixes
Lint/ToJSON, which did not flag singletondef self.to_jsondefinitions. ([@bbatsov][])Lint/UnreachableCode, which only flagged the first statement after a flow-of-control statement instead of every unreachable statement that followed it. ([@bbatsov][])Lint/UselessNumericOperation, which only flagged bare method-call receivers and ignored local variables, instance/class/global variables, and constants (e.g.@x + 0,CONST * 1). ([@bbatsov][])Lint/Voidwhere safe-navigation calls to nonmutating methods (e.g.x&.sort) were not flagged whenCheckForMethodsWithNoSideEffectsis enabled. ([@bbatsov][])Style/ArrayIntersectwith the block form usinginclude?(e.g.array1.any? { |e| array2.include?(e) }), which was only detected formember?. ([@bbatsov][])Style/CollectionCompact, which did not flaggrep_v(nil)/grep_v(NilClass)on a safe-navigation call (e.g.array&.grep_v(nil)). ([@bbatsov][])Style/DefWithParentheseswith a single-line definition whose body follows a semicolon (e.g.def foo(); end), where the parentheses can be safely omitted. ([@bbatsov][])Style/MixinUsagewhen including multiple modules in one statement. ([@bbatsov][])Style/ModuleFunctionwhen the module body is a single statement. ([@bbatsov][])Style/RedundantCurrentDirectoryInPathwith double-quoted strings containing interpolation. ([@bbatsov][])Style/RedundantHeredocDelimiterQuoteswith double-quoted delimiters whose body contains interpolation or escapes. ([@bbatsov][])Gemspec/DuplicatedAssignmentwith multiple specifications. ([@bbatsov][])Layout/CommentIndentationwith a comment above an inline access modifier (e.g.private def foo) whenLayout/AccessModifierIndentationis configured withEnforcedStyle: outdent. ([@grk][])Style/InvertibleUnlessConditionwith a multi-statement begin condition. ([@bbatsov][])Style/ArgumentsForwardingandStyle/MethodDefParentheseswhen autocorrection conflicts while adding parentheses to method definition arguments. ([@koic][])Lint/ToJSONthat produced invalid Ruby (def to_json(*_args)()) when the method had explicit empty parentheses. ([@bbatsov][])Style/MethodCallWithoutArgsParentheseswhen empty parentheses span multiple lines and the method call has a block. ([@koic][])Style/HashConversionwith a splat argument, which previously produced an invalid hash literal. ([@bbatsov][])Style/HashLookupMethodwith safe navigation, where the suggested bracket form would be the unreadablehash&.[](key). ([@bbatsov][])Style/IdenticalConditionalBranchesthat hoisted the moved expression to column zero instead of matching the surrounding indentation. ([@bbatsov][])Style/InvertibleUnlessConditionwith mixed&&/||conditions, which lost the required parentheses when inverting. ([@bbatsov][])Style/TrivialAccessorswhenAllowPredicates: falseis set and a trivial reader is defined as a predicate class method. ([@koic][])Layout/LineLengthwithSplitStringswhen an over-long string is indented under a multi-line parent. ([@bbatsov][])Style/MissingRespondToMissingwhenmethod_missingis defined at the top level or alongside sibling classes. ([@bbatsov][])Layout/ElseAlignmentwhen usingelsewithin a block that is part of a larger expression. ([@koic][])Layout/MultilineMethodCallIndentationwhen a method chain is nested inside a parenthesized argument list or a grouped expression within a hash pair value. ([@koic][])Style/StructInheritanceautocorrect dropping leading indentation when class is inside a module or namespace. ([@amckinnie][])Style/DocumentationMethodignoringAllowedMethodsfor inline modifier defs. ([@bbatsov][])Style/LambdaCallwhen the argument list contains a comment, which the autocorrect would have dropped. ([@bbatsov][])Changes
on_new_investigation,on_investigation_end, andon_other_fileonly to cops that refine them, and by skippingafter_*dispatch when no cop needs it. ([@bbatsov][])Lint/Debuggerperformance on code without debugger calls. ([@bbatsov][])Lint/NumericOperationWithConstantResultautocorrect as unsafe because it drops the operands, discarding their side effects and silencing cases where the result is not actually constant (e.g.x / xraises whenxis0). ([@bbatsov][])AllowedPatterns,ForbiddenPatterns, andAllowedMethodsby compiling the configured patterns only once. ([@bbatsov][])Style/IfUnlessModifierand other modifier cops on files with many comments or conditionals. ([@bbatsov][])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](https://redirect.github.com/bbConfiguration
📅 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.