inherit_mode: merge: - Exclude # see: https://stackoverflow.com/a/70818366/473923 - AllowedNames AllCops: TargetRubyVersion: 2.7 DisplayCopNames: true ExtraDetails: true NewCops: enable Exclude: - ".builders/**/*" - "spec/samples/**/*" - "lib/drawio_dsl/drawio_extensions.rb" Metrics/BlockLength: Exclude: - "**/spec/**/*" - "*.gemspec" IgnoredMethods: - configure - context - define - describe - draw - factory - feature - guard - included - it - let - let! - scenario - setup - shared_context - shared_examples - shared_examples_for - transaction Layout/LineLength: Max: 200 # Ignores annotate output IgnoredPatterns: ['\A# \*\*'] IgnoreCopDirectives: true Exclude: - "lib/drawio_dsl/configuration_shapes.rb" Lint/UnusedMethodArgument: AllowUnusedKeywordArguments: true Style/BlockComments: Enabled: false Include: - "**/spec/*" Style/RegexpLiteral: Enabled: false # My Preferences - Start Metrics/ClassLength: Enabled: false Metrics/ModuleLength: Exclude: - "**/spec/**/*" - "lib/drawio_dsl/drawio_shapes.rb" - "lib/drawio_dsl/schema/shapes/diagram.rb" - "lib/drawio_dsl/dom_builder_shapes.rb" Metrics/AbcSize: Exclude: - "lib/drawio_dsl/drawio_shapes.rb" - "lib/drawio_dsl/configuration.rb" - "lib/drawio_dsl/configuration_shapes.rb" - "lib/drawio_dsl/configuration_themes.rb" - "lib/drawio_dsl/schema/line.rb" Metrics/CyclomaticComplexity: Exclude: - "lib/drawio_dsl/drawio_shapes.rb" - "lib/drawio_dsl/schema/line.rb" Metrics/MethodLength: Max: 25 Exclude: - "lib/drawio_dsl/drawio_shapes.rb" - "lib/drawio_dsl/schema/shapes/shape.rb" - "lib/drawio_dsl/schema/shapes/page.rb" - "lib/drawio_dsl/configuration_shapes.rb" - "lib/drawio_dsl/configuration_themes.rb" Metrics/PerceivedComplexity: Exclude: - "lib/drawio_dsl/drawio_shapes.rb" - "lib/drawio_dsl/schema/line.rb" Naming/MemoizedInstanceVariableName: Enabled: false Naming/AccessorMethodName: Enabled: false Naming/VariableNumber: Enabled: false Naming/MethodParameterName: AllowedNames: - as - x - y - w - h Style/EmptyMethod: Exclude: - "**/spec/**/*" Style/MultilineBlockChain: Exclude: - "**/spec/**/*" Metrics/ParameterLists: Exclude: - "**/spec/**/*" Layout/EmptyLineBetweenDefs: Exclude: - "**/spec/**/*" Style/Documentation: Enabled: false Lint/AmbiguousBlockAssociation: Exclude: - "**/spec/**/*" Style/AccessorGrouping: Enabled: false Layout/SpaceBeforeComma: Enabled: false # My Preferences - End