google-style.yml in google-style-1.25.0 vs google-style.yml in google-style-1.25.1

- old
+ new

@@ -1,105 +1,232 @@ # Copyright 2019 Google LLC - +# # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at - +# # https://www.apache.org/licenses/LICENSE-2.0 - +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. AllCops: - SuggestExtensions: true + NewCops: disable + SuggestExtensions: false TargetRubyVersion: 2.5 +# Enforcing a blank line often worsens vertical layout. Layout/EmptyLineAfterGuardClause: Enabled: false -Layout/EmptyLines: # for the extra line between copyright and code + +# For the extra line between copyright and code. +Layout/EmptyLines: Enabled: false + +# This tends to be problematic, especially for nested hashes. In many cases, +# our code adheres to the "table" style, but we do not want to enforce it. Layout/HashAlignment: - EnforcedColonStyle: table - EnforcedHashRocketStyle: table + Enabled: false + +# Our current preferred line length. Layout/LineLength: Max: 120 + +# Added in Rubocop 1.7 Layout/SpaceBeforeBrackets: Enabled: true + +# Added in Rubocop 1.7 Lint/AmbiguousAssignment: Enabled: true + +# Added in Rubocop 1.8 Lint/DeprecatedConstants: Enabled: true + +# Added in Rubocop 1.3 Lint/DuplicateBranch: Enabled: true + +# Added in Rubocop 1.1 Lint/DuplicateRegexpCharacterClassElement: Enabled: true + +# Added in Rubocop 1.1 Lint/EmptyBlock: Enabled: true + +# Added in Rubocop 1.3 Lint/EmptyClass: Enabled: true + +# Added in Rubocop 1.8 Lint/LambdaWithoutLiteralBlock: Enabled: true + +# Added in Rubocop 1.2 Lint/NoReturnInBeginEndBlocks: Enabled: true + +# Added in Rubocop 1.9 +Lint/NumberedParameterAssignment: + Enabled: true + +# Added in Rubocop 1.9 +Lint/OrAssignmentToConstant: + Enabled: true + +# Added in Rubocop 1.8 Lint/RedundantDirGlobSort: Enabled: true + +# Added in Rubocop 1.9 +Lint/SymbolConversion: + Enabled: true + +# Added in Rubocop 1.1 Lint/ToEnumArguments: Enabled: true + +# Added in Rubocop 1.9 +Lint/TripleQuotes: + Enabled: true + +# Added in Rubocop 1.5 Lint/UnexpectedBlockArity: Enabled: true + +# Added in Rubocop 1.1 Lint/UnmodifiedReduceAccumulator: Enabled: true + Metrics/AbcSize: Max: 30 + Metrics/CyclomaticComplexity: Max: 10 + Metrics/MethodLength: Max: 25 + +# Sometimes problematic for API calls which might have a lot of parameters, +# and for generated code. Metrics/ParameterLists: Enabled: false + Metrics/PerceivedComplexity: Max: 10 + +# Does not allow distinguishing verbs (e.g. is vs has). Also causes problems +# for generated code that might have generated method names. +Naming/PredicateName: + Enabled: false + +# Numbers are occasionally semantically useful in names, and also occasionally +# appear in generated code. Naming/VariableNumber: Enabled: false + +# Better to separate accessors for yardoc and type declarations. +Style/AccessorGrouping: + EnforcedStyle: separated + +# Added in Rubocop 1.1 Style/ArgumentsForwarding: Enabled: true + +# Problematic for generated code which might include unicode in comments. +Style/AsciiComments: + Enabled: false + +# There are cases where we use the === operator as a general interface, e.g. +# when specifying type checker objects. +Style/CaseEquality: + Enabled: false + +# Added in Rubocop 1.2 Style/CollectionCompact: Enabled: true + +# Added in Rubocop 1.1 Style/DocumentDynamicEvalDefinition: Enabled: true + +# We prefer consistent method indentation. Style/EmptyMethod: EnforcedStyle: expanded + +# Added in Rubocop 1.8 Style/EndlessMethod: Enabled: true + +# Frozen string literals are no more as of Ruby 3. Style/FrozenStringLiteralComment: Enabled: false + +# Added in Rubocop 1.7 Style/HashExcept: Enabled: true + +# It is sometimes preferable to use the non-modifier form even for single-line +# expressions, for readability. +Style/IfUnlessModifier: + Enabled: false + +# Added in Rubocop 1.9 +Style/IfWithBooleanLiteralBranches: + Enabled: true + +# We adopt Seattle-style paren usage Style/MethodCallWithArgsParentheses: AllowParenthesesInCamelCaseMethod: true AllowParenthesesInChaining: true AllowParenthesesInMultilineCall: true Enabled: true EnforcedStyle: omit_parentheses + +# We adopt Seattle-style paren usage Style/MethodDefParentheses: EnforcedStyle: require_no_parentheses + +# Enable use of the different semantics of module_function and extend self. +Style/ModuleFunction: + Enabled: false + +# Added in Rubocop 1.2 Style/NegatedIfElseCondition: Enabled: true + +# Added in Rubocop 1.3 Style/NilLambda: Enabled: true + +# Added in Rubocop 1.4 Style/RedundantArgument: Enabled: true + +# The idiom is useful in a variety of cases. We prefer to allow it. Style/RescueModifier: Enabled: false + +# We prefer standardizing on double-quoted strings for readability. Style/StringLiterals: EnforcedStyle: double_quotes + +# Added in Rubocop 1.1 Style/SwapValues: Enabled: true + +# We prefer traditional bracket style for all arrays. Style/SymbolArray: EnforcedStyle: brackets + +# There are some cases where a full method shows intent better than an attr. Style/TrivialAccessors: Enabled: false + +# We prefer traditional bracket style for all arrays. Style/WordArray: EnforcedStyle: brackets