gems rubocop 1.70.0
RuboCop 1.70

one day ago

New features

  • #13474: Add new Style/ItAssignment cop to detect local assignments to it inside blocks. (@dvandersluis)
  • #11013: Add new Lint/SharedMutableDefault cop to alert on mutable Hash defaults. (@corsonknowles)
  • #13612: Create new cop Lint/ConstantReassignment. (@lovro-bikic)
  • #13628: Make LSP server support quick fix code action. (@koic)
  • #13607: Support passing the target ruby version through an environment variable. (@elliottt)
  • #13628: Add support for Ruby LSP as a built-in add-on. (@koic)
  • #13284: Add new target_gem_version API to change behavior of a cop at runtime depending on which gem version is present. (@earlopain)

Bug fixes

  • #13589: Fix Lint/NonAtomicFileOperation to detect offenses with fully qualified constants. (@viralpraxis)
  • #13630: Fix CLI --format option to accept fully qualified formatter class names. (@viralpraxis)
  • #13624: Don't show warnings from Lint/Syntax when a syntax error occurs. (@earlopain)
  • #13605: Fix RuboCop::Cop::Util.to_string_literal to work correctly with frozen strings. (@viralpraxis)
  • #12393: Fix false negatives for Lint/Void inside of non-modifier conditionals. (@GabeIsman)
  • #13623: Fix false negatives for Style/MultipleComparison when setting AllowMethodComparison: false and comparing with simple method calls. (@koic)
  • #13644: Fix a false positive for Layout/EmptyLinesAroundAccessModifier when an access modifier and an expression are on the same line. (@koic)
  • #13645: Fix a false positive for Style/MethodCallWithArgsParentheses when setting EnforcedStyle: omit_parentheses and last argument is an endless range. (@earlopain)
  • #13614: Fix false positives for Style/RaiseArgs with anonymous splat and triple dot forwarding. (@earlopain)
  • #13591: Fix false positives for Lint/NestedMethodDefinition when defining a method on a constant or a method call. (@koic)
  • #13594: Fix false positives for Style/MultipleComparison when using multiple safe navigation method calls. (@koic)
  • #13654: Fix false positives for Style/RedundantInitialize when empty initialize method has arguments. (@marocchino)
  • #13608: Fix crash when running rubocop -d on a config with a remote inherit_from that causes a duplicate setting warning. (@dvandersluis)
  • #12430: Fix false negatives in Style/RedundantLineContinuation with multiple line continuations. (@dvandersluis)
  • #13638: Fix false positive for Naming/BlockForwarding when method just returns the block argument. (@mvz)
  • #13599: Fix incorrect autocorrect for Layout/HashAlignment when there is a multiline positional argument and Layout/ArgumentAlignment is configured with EnforcedStyle: with_fixed_indentation. (@dvandersluis)
  • #13586: Fix regression in Layout/SpaceAroundOperators when different comparison operators were aligned with each other. (@dvandersluis)
  • #13603: Fix Lint/LiteralInInterpolation cop error on invalid string literal. (@viralpraxis)
  • #13582: Fix Lint/NonAtomicFileOperation cop error on non-constant receiver. (@viralpraxis)
  • #13598: Fix Lint/Void cop error on if without body. (@viralpraxis)
  • #13634: Fix Style/ClassAndModuleChildren cop error on compact enforced style and unindented body. (@viralpraxis)
  • #13642: Fix Style/FloatDivision cop error if #to_f has implicit receiver. (@viralpraxis)
  • #13517: Fixes Style/HashExcept to recognize safe navigation when ActiveSupportExtensionsEnabled config is enabled. (@lovro-bikic)
  • #13585: Fix Style/HashSyntax cop error on implicit call method. (@viralpraxis)
  • #13632: Fix Style/MissingElse cop error if Style/EmptyElse's EnforcedStyle is not both and if expression contains elsif. (@viralpraxis)
  • #13659: Fix Style/MissingElse cop error if Style/EmptyElse's EnforcedStyle is not both and if expression contains multiple elsif. (@viralpraxis)
  • #13596: Fix Style/RedundantCondition cop error on parentheses and modifier if in else. (@viralpraxis)
  • #13616: Fix incorrect autocorrect for Style/RedundantRegexpArgument when the regex contains a single quote. (@mrzasa)
  • #13619: Fix Style/YodaExpression cop error in case of suffix form of operator. (@viralpraxis)
  • #13578: Update Layout/LineContinuationSpacing to ignore continuations inside a regexp or xstr. (@dvandersluis)
  • #13601: Update Style/SuperArguments to handle super with a block or with a chained method with a block. (@dvandersluis)
  • #13568: Fix NoMethodError in ConfigValidator when a Cop's config is not a Hash and raise ValidationError instead. (@amomchilov)

Changes

  • #13665: Add support for safe navigation to Style/ObjectThen. (@dvandersluis)
  • #13657: Add support for safe navigation to Layout/HashAlignment. (@dvandersluis)
  • #13656: Add support for safe navigation to Layout/HeredocArgumentClosingParenthesis. (@dvandersluis)
  • #13655: Add support for safe navigation to Layout/LineLength. (@dvandersluis)
  • #13662: Add support for safe navigation to Style/SendWithLiteralMethodName. (@dvandersluis)
  • #13557: Fix false positives for Lint/NumericOperationWithConstantResult. (@earlopain)
  • #13658: Fix invalid autocorrect for Style/SlicingWithRange when calling .[] or &.[] with a correctable range. (@dvandersluis)
  • #13548: Enhance Lint/DuplicateSetElement to detect offences within SortedSet. (@viralpraxis)
  • #13646: Update Layout/TrailingWhitespace to support blank characters other than space and tab. (@krororo)
  • #13652: Update Metrics/MethodLength to make use of AllowedMethods and AllowedPatterns for methods defined dynamically with define_method. (@dvandersluis)
  • #13606: Update Style/AccessModifierDeclarations to add AllowModifiersOnAliasMethod configuration (default true). (@dvandersluis)
  • #13662: Update Style/RedundantSelfAssignment to handle safe navigation on the right-hand side of the assignment. (@dvandersluis)

Don't miss a new rubocop release

NewReleases is sending notifications on new releases.