Codebase list facter / run/8723a8de-75ee-43fa-8d0d-556166a1df82/main .rubocop.yml
run/8723a8de-75ee-43fa-8d0d-556166a1df82/main

Tree @run/8723a8de-75ee-43fa-8d0d-556166a1df82/main (Download .tar.gz)

.rubocop.yml @run/8723a8de-75ee-43fa-8d0d-556166a1df82/mainraw · history · blame

---
inherit_from: .rubocop_todo.yml

AllCops:
  TargetRubyVersion: 2.3
  Exclude:
    - acceptance/**/*
    - vendor/**/*

require:
  - rubocop-performance
  - rubocop-rspec

Layout/LineLength:
  Max: 120

Lint/RaiseException:
  Enabled: true

Lint/StructNewOverride:
  Enabled: true

Metrics/MethodLength:
  Max: 20
  Exclude:
    - 'lib/facter/custom_facts/util/values.rb'
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/core/execution/windows.rb'
    - 'lib/facter/custom_facts/core/execution/base.rb'
    - 'lib/facter/framework/detector/os_detector.rb'
    - 'lib/facter/resolvers/bsd/ffi/ffi_helper.rb'
    - 'install.rb'
    - 'scripts/generate_changelog.rb'
    - 'lib/facter/resolvers/aix/ffi/ffi_helper.rb'


Metrics/ModuleLength:
  Max: 100
  Exclude:
    - 'lib/facter.rb'
    - 'agent/lib/facter-ng.rb'
    - 'lib/facter/config.rb'
    - 'lib/facter/resolvers/aix/ffi/ffi_helper.rb'

Metrics/BlockLength:
  Exclude:
    - !ruby/regexp /(?:(?!.+_spec.rb).)*$/

Naming/ClassAndModuleCamelCase:
  Exclude:
    - 'spec/mocks/**/*'

Metrics/AbcSize:
  Max: 16
  Exclude:
    - 'spec/custom_facts/util/parser_spec.rb'
    - 'spec/custom_facts/core/logging_spec.rb'
    - 'lib/facter/custom_facts/util/values.rb'
    - 'lib/facter/custom_facts/util/loader.rb'
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/core/execution/windows.rb'
    - 'lib/facter/custom_facts/core/execution/base.rb'
    - 'lib/facter/custom_facts/core/resolvable.rb'
    - 'lib/facter/resolvers/bsd/ffi/ffi_helper.rb'
    - 'install.rb'
    - 'scripts/generate_changelog.rb'
    - 'lib/facter/resolvers/aix/ffi/ffi_helper.rb'
    - 'lib/facter/custom_facts/core/execution/popen3.rb'
    - 'lib/facter.rb'
    - 'lib/facter/framework/parsers/query_parser.rb'
    - 'lib/facter/framework/core/fact_manager.rb'

Metrics/PerceivedComplexity:
  Exclude:
    - 'lib/facter/custom_facts/util/values.rb'
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/core/execution/windows.rb'
    - 'lib/facter/custom_facts/core/execution/posix.rb'
    - 'install.rb'
    - 'lib/facter/resolvers/aix/ffi/ffi_helper.rb'

Metrics/CyclomaticComplexity:
  Exclude:
    - 'lib/facter/resolvers/windows/product_release.rb'
    - 'lib/facter/custom_facts/util/values.rb'
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/core/execution/windows.rb'
    - 'lib/facter/custom_facts/core/execution/posix.rb'
    - 'lib/facter/facts/linux/cloud/provider.rb'
    - 'lib/facter/facts/windows/cloud/provider.rb'
    - 'lib/facter/framework/detector/os_detector.rb'
    - 'install.rb'
    - 'scripts/generate_changelog.rb'
    - 'lib/facter/resolvers/aix/ffi/ffi_helper.rb'

Metrics/ClassLength:
  Exclude:
    - 'lib/facter/resolvers/partitions.rb'
    - 'lib/facter/custom_facts/core/execution/base.rb'
    - 'lib/facter/custom_facts/util/fact.rb'
    - 'lib/facter/resolvers/windows/networking.rb'
    - 'lib/facter/custom_facts/util/collection.rb'
    - 'lib/facter/framework/core/options/option_store.rb'
    - 'lib/facter/framework/cli/cli.rb'
    - 'lib/facter/framework/core/cache_manager.rb'
    - 'install.rb'
    - 'scripts/generate_changelog.rb'
    - 'lib/facter/resolvers/solaris/networking.rb'
    - 'lib/facter/framework/logging/logger.rb'
    - 'lib/facter/framework/core/fact_manager.rb'

Naming/AccessorMethodName:
  Exclude:
    - 'lib/facter/custom_facts/core/suitable.rb'

Naming/MethodName:
  Exclude:
    - 'spec/mocks/**/*'

Naming/PredicateName:
  Exclude:
    - 'lib/facter/custom_facts/core/suitable.rb'

Naming/FileName:
  Exclude:
    - 'lib/facter.rb'
    - 'agent/lib/facter-ng.rb'

RSpec/ExampleLength:
  Enabled: false

RSpec/DescribedClass:
  EnforcedStyle: explicit

RSpec/NestedGroups:
  Max: 6

Style/Documentation:
  Enabled: false

Style/ClassVars:
  Exclude:
    - !ruby/regexp /(?:(?!.+_resolver.rb).)*$/

Style/FrozenStringLiteralComment:
  Exclude:
    - 'spec/custom_facts/util/normalization_spec.rb'
    - 'spec/custom_facts/core/execution/windows_spec.rb'
    - 'spec/custom_facts/core/execution/posix_spec.rb'
    - 'lib/facter/custom_facts/util/resolution.rb'
    - 'lib/facter/custom_facts/core/execution/windows.rb'
    - 'lib/facter/custom_facts/core/execution/posix.rb'

Style/TrivialAccessors:
  AllowDSLWriters: true

Style/CaseEquality:
  Exclude:
    - 'spec/custom_facts/util/confine_spec.rb'
    - 'lib/facter/custom_facts/util/confine.rb'

Style/DoubleNegation:
  Exclude:
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/util/confine.rb'
    - 'lib/facter/custom_facts/core/execution/windows.rb'
    - 'lib/facter/custom_facts/core/execution/posix.rb'

Style/MethodMissingSuper:
  Exclude:
    - 'lib/facter.rb'

Style/MissingRespondToMissing:
  Exclude:
    - 'lib/facter.rb'

Style/StderrPuts:
  Exclude:
    - 'lib/facter/custom_facts/core/logging.rb'

Style/ModuleFunction:
  Exclude:
    - 'lib/facter/custom_facts/core/logging.rb'

Style/HashEachMethods:
  Enabled: false  # not implemented in ruby 2.3

Style/HashTransformKeys:
  Enabled: false  # not implemented in ruby 2.3

Style/HashTransformValues:
  Enabled: false  # not implemented in ruby 2.3