chore(deps): update bundler to v1.88.0#95
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
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.87.0→1.88.0Release Notes
rubocop/rubocop (rubocop)
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][])Configuration
📅 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.