# This configuration was generated by
# `rubocop --auto-gen-config`
# on 2017-09-04 17:00:36 +0200 using RuboCop version 0.49.1.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.

# Offense count: 3
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, IndentOneStep, IndentationWidth.
# SupportedStyles: case, end
Layout/CaseIndentation:
  Exclude:
    - 'tools/platform_check.rb'

# Offense count: 1
# Cop supports --auto-correct.
Layout/CommentIndentation:
  Exclude:
    - 'qps/client.rb'

# Offense count: 1
# Cop supports --auto-correct.
Layout/EmptyLineAfterMagicComment:
  Exclude:
    - 'tools/grpc-tools.gemspec'

# Offense count: 33
# Cop supports --auto-correct.
# Configuration parameters: AllowAdjacentOneLineDefs, NumberOfEmptyLines.
Layout/EmptyLineBetweenDefs:
  Exclude:
    - 'qps/client.rb'
    - 'qps/histogram.rb'
    - 'qps/proxy-worker.rb'
    - 'qps/server.rb'
    - 'qps/worker.rb'

# Offense count: 1
# Cop supports --auto-correct.
Layout/EmptyLines:
  Exclude:
    - 'qps/qps-common.rb'

# Offense count: 8
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
Layout/EmptyLinesAroundClassBody:
  Exclude:
    - 'pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb'
    - 'pb/grpc/testing/metrics_services_pb.rb'
    - 'pb/src/proto/grpc/testing/test_services_pb.rb'
    - 'qps/src/proto/grpc/testing/proxy-service_services_pb.rb'
    - 'qps/src/proto/grpc/testing/services_services_pb.rb'

# Offense count: 28
# Cop supports --auto-correct.
# Configuration parameters: AllowForAlignment, ForceEqualSignAlignment.
Layout/ExtraSpacing:
  Enabled: false

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: normal, rails
Layout/IndentationConsistency:
  Exclude:
    - 'pb/grpc/health/checker.rb'

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: Width, IgnoredPatterns.
Layout/IndentationWidth:
  Exclude:
    - 'pb/grpc/health/checker.rb'

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: symmetrical, new_line, same_line
Layout/MultilineHashBraceLayout:
  Exclude:
    - 'spec/generic/active_call_spec.rb'

# Offense count: 70
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: symmetrical, new_line, same_line
Layout/MultilineMethodCallBraceLayout:
  Enabled: false

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
# SupportedStyles: aligned, indented, indented_relative_to_receiver
Layout/MultilineMethodCallIndentation:
  Exclude:
    - 'spec/generic/rpc_desc_spec.rb'

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: symmetrical, new_line, same_line
Layout/MultilineMethodDefinitionBraceLayout:
  Exclude:
    - 'spec/generic/client_stub_spec.rb'

# Offense count: 5
# Cop supports --auto-correct.
Layout/SpaceAfterColon:
  Exclude:
    - 'lib/grpc/generic/rpc_server.rb'

# Offense count: 7
# Cop supports --auto-correct.
Layout/SpaceAfterComma:
  Exclude:
    - 'qps/client.rb'

# Offense count: 27
# Cop supports --auto-correct.
# Configuration parameters: AllowForAlignment.
Layout/SpaceAroundOperators:
  Exclude:
    - 'qps/client.rb'
    - 'qps/histogram.rb'
    - 'qps/proxy-worker.rb'
    - 'qps/server.rb'
    - 'spec/generic/active_call_spec.rb'
    - 'spec/generic/rpc_server_spec.rb'

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SupportedStylesForEmptyBraces, SpaceBeforeBlockParameters.
# SupportedStyles: space, no_space
# SupportedStylesForEmptyBraces: space, no_space
Layout/SpaceInsideBlockBraces:
  Exclude:
    - 'stress/stress_client.rb'

# Offense count: 4
# Cop supports --auto-correct.
Layout/SpaceInsideBrackets:
  Exclude:
    - 'tools/bin/grpc_tools_ruby_protoc'
    - 'tools/bin/grpc_tools_ruby_protoc_plugin'

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SupportedStylesForEmptyBraces.
# SupportedStyles: space, no_space, compact
# SupportedStylesForEmptyBraces: space, no_space
Layout/SpaceInsideHashLiteralBraces:
  Exclude:
    - 'qps/server.rb'

# Offense count: 6
# Cop supports --auto-correct.
Layout/SpaceInsidePercentLiteralDelimiters:
  Exclude:
    - 'spec/generic/client_stub_spec.rb'
    - 'tools/grpc-tools.gemspec'

# Offense count: 3
# Cop supports --auto-correct.
Layout/Tab:
  Exclude:
    - 'pb/grpc/health/checker.rb'
    - 'qps/client.rb'

# Offense count: 1
# Cop supports --auto-correct.
Layout/TrailingWhitespace:
  Exclude:
    - 'qps/worker.rb'

# Offense count: 1
Lint/IneffectiveAccessModifier:
  Exclude:
    - 'lib/grpc/generic/active_call.rb'

# Offense count: 4
# Cop supports --auto-correct.
Lint/PercentStringArray:
  Exclude:
    - 'spec/client_server_spec.rb'
    - 'spec/generic/active_call_spec.rb'
    - 'spec/generic/client_stub_spec.rb'

# Offense count: 4
Lint/ScriptPermission:
  Exclude:
    - 'qps/client.rb'
    - 'qps/histogram.rb'
    - 'qps/qps-common.rb'
    - 'qps/server.rb'

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
Lint/UnusedBlockArgument:
  Exclude:
    - 'qps/client.rb'

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods.
Lint/UnusedMethodArgument:
  Exclude:
    - 'qps/client.rb'

# Offense count: 1
# Configuration parameters: ContextCreatingMethods, MethodCreatingMethods.
Lint/UselessAccessModifier:
  Exclude:
    - 'lib/grpc/logconfig.rb'

# Offense count: 1
Lint/UselessAssignment:
  Exclude:
    - 'qps/client.rb'

# Offense count: 4
Lint/Void:
  Exclude:
    - 'stress/metrics_server.rb'
    - 'stress/stress_client.rb'

# Offense count: 53
Metrics/AbcSize:
  Max: 57

# Offense count: 81
# Configuration parameters: CountComments, ExcludedMethods.
Metrics/BlockLength:
  Max: 715

# Offense count: 82
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
# URISchemes: http, https
Metrics/LineLength:
  Max: 141

# Offense count: 82
# Configuration parameters: CountComments.
Metrics/MethodLength:
  Max: 54

# Offense count: 5
# Configuration parameters: CountKeywordArgs.
Metrics/ParameterLists:
  Max: 7

# Offense count: 1
# Cop supports --auto-correct.
Performance/RedundantBlockCall:
  Exclude:
    - 'spec/generic/client_stub_spec.rb'

# Offense count: 5
# Cop supports --auto-correct.
# Configuration parameters: MaxKeyValuePairs.
Performance/RedundantMerge:
  Exclude:
    - 'spec/generic/active_call_spec.rb'
    - 'spec/generic/client_stub_spec.rb'

# Offense count: 8
# Cop supports --auto-correct.
Performance/TimesMap:
  Exclude:
    - 'spec/channel_spec.rb'
    - 'spec/client_server_spec.rb'
    - 'spec/server_spec.rb'

# Offense count: 7
Style/AccessorMethodName:
  Exclude:
    - 'qps/server.rb'
    - 'stress/metrics_server.rb'
    - 'stress/stress_client.rb'

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: prefer_alias, prefer_alias_method
Style/Alias:
  Exclude:
    - 'lib/grpc/generic/rpc_server.rb'
    - 'lib/grpc/notifier.rb'

# Offense count: 7
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, ProceduralMethods, FunctionalMethods, IgnoredMethods.
# SupportedStyles: line_count_based, semantic, braces_for_chaining
# ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
# FunctionalMethods: let, let!, subject, watch
# IgnoredMethods: lambda, proc, it
Style/BlockDelimiters:
  Exclude:
    - 'qps/client.rb'
    - 'qps/proxy-worker.rb'
    - 'qps/server.rb'
    - 'qps/worker.rb'

# Offense count: 2
# Cop supports --auto-correct.
Style/ClassMethods:
  Exclude:
    - 'tools/platform_check.rb'

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, SingleLineConditionsOnly, IncludeTernaryExpressions.
# SupportedStyles: assign_to_condition, assign_inside_condition
Style/ConditionalAssignment:
  Exclude:
    - 'lib/grpc/generic/rpc_server.rb'
    - 'lib/grpc/generic/service.rb'

# Offense count: 19
Style/Documentation:
  Exclude:
    - 'spec/**/*'
    - 'test/**/*'
    - 'pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb'
    - 'pb/grpc/testing/metrics_services_pb.rb'
    - 'pb/src/proto/grpc/testing/test_pb.rb'
    - 'qps/client.rb'
    - 'qps/histogram.rb'
    - 'qps/proxy-worker.rb'
    - 'qps/server.rb'
    - 'qps/src/proto/grpc/testing/proxy-service_services_pb.rb'
    - 'qps/src/proto/grpc/testing/services_pb.rb'
    - 'qps/src/proto/grpc/testing/services_services_pb.rb'
    - 'qps/worker.rb'
    - 'stress/metrics_server.rb'
    - 'stress/stress_client.rb'
    - 'tools/platform_check.rb'

# Offense count: 8
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: compact, expanded
Style/EmptyMethod:
  Exclude:
    - 'bin/noproto_server.rb'
    - 'lib/grpc/logconfig.rb'
    - 'spec/generic/rpc_desc_spec.rb'

# Offense count: 2
# Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms.
# AllowedAcronyms: CLI, DSL, ACL, API, ASCII, CPU, CSS, DNS, EOF, GUID, HTML, HTTP, HTTPS, ID, IP, JSON, LHS, QPS, RAM, RHS, RPC, SLA, SMTP, SQL, SSH, TCP, TLS, TTL, UDP, UI, UID, UUID, URI, URL, UTF8, VM, XML, XMPP, XSRF, XSS
Style/FileName:
  Exclude:
    - 'qps/src/proto/grpc/testing/proxy-service_pb.rb'
    - 'qps/src/proto/grpc/testing/proxy-service_services_pb.rb'

# Offense count: 12
# Configuration parameters: AllowedVariables.
Style/GlobalVars:
  Exclude:
    - 'ext/grpc/extconf.rb'

# Offense count: 3
# Configuration parameters: MinBodyLength.
Style/GuardClause:
  Exclude:
    - 'lib/grpc/generic/bidi_call.rb'
    - 'lib/grpc/generic/rpc_server.rb'
    - 'qps/client.rb'

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
# SupportedStyles: ruby19, hash_rockets, no_mixed_keys, ruby19_no_mixed_keys
Style/HashSyntax:
  Exclude:
    - 'stress/metrics_server.rb'

# Offense count: 1
Style/IfInsideElse:
  Exclude:
    - 'lib/grpc/generic/rpc_desc.rb'

# Offense count: 4
# Cop supports --auto-correct.
# Configuration parameters: MaxLineLength.
Style/IfUnlessModifier:
  Exclude:
    - 'ext/grpc/extconf.rb'
    - 'qps/histogram.rb'
    - 'stress/stress_client.rb'

# Offense count: 1
# Cop supports --auto-correct.
Style/MethodCallWithoutArgsParentheses:
  Exclude:
    - 'qps/client.rb'

# Offense count: 3
# Cop supports --auto-correct.
Style/MultilineIfModifier:
  Exclude:
    - 'lib/grpc/generic/bidi_call.rb'
    - 'lib/grpc/generic/client_stub.rb'
    - 'spec/spec_helper.rb'

# Offense count: 7
# Cop supports --auto-correct.
Style/MutableConstant:
  Exclude:
    - 'ext/grpc/extconf.rb'
    - 'lib/grpc/version.rb'
    - 'spec/compression_options_spec.rb'
    - 'spec/generic/active_call_spec.rb'
    - 'tools/version.rb'

# Offense count: 1
# Cop supports --auto-correct.
Style/NegatedWhile:
  Exclude:
    - 'qps/client.rb'

# Offense count: 1
# Cop supports --auto-correct.
# Configuration parameters: AutoCorrect, EnforcedStyle, SupportedStyles.
# SupportedStyles: predicate, comparison
Style/NumericPredicate:
  Exclude:
    - 'spec/**/*'
    - 'ext/grpc/extconf.rb'

# Offense count: 7
# Cop supports --auto-correct.
Style/ParallelAssignment:
  Exclude:
    - 'bin/math_server.rb'
    - 'lib/grpc/generic/rpc_server.rb'
    - 'spec/generic/client_stub_spec.rb'
    - 'spec/generic/rpc_desc_spec.rb'
    - 'spec/generic/rpc_server_pool_spec.rb'
    - 'spec/generic/rpc_server_spec.rb'

# Offense count: 8
# Cop supports --auto-correct.
# Configuration parameters: PreferredDelimiters.
Style/PercentLiteralDelimiters:
  Exclude:
    - 'end2end/grpc_class_init_test.rb'
    - 'spec/client_server_spec.rb'
    - 'spec/generic/active_call_spec.rb'
    - 'spec/generic/client_stub_spec.rb'
    - 'tools/grpc-tools.gemspec'

# Offense count: 3
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: compact, exploded
Style/RaiseArgs:
  Exclude:
    - 'stress/metrics_server.rb'

# Offense count: 4
# Cop supports --auto-correct.
Style/RedundantParentheses:
  Exclude:
    - 'lib/grpc/generic/rpc_server.rb'
    - 'qps/client.rb'
    - 'qps/proxy-worker.rb'
    - 'spec/generic/rpc_desc_spec.rb'

# Offense count: 5
# Cop supports --auto-correct.
# Configuration parameters: AllowMultipleReturnValues.
Style/RedundantReturn:
  Exclude:
    - 'end2end/grpc_class_init_client.rb'

# Offense count: 77
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: only_raise, only_fail, semantic
Style/SignalException:
  Enabled: false

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: use_perl_names, use_english_names
Style/SpecialGlobalVars:
  Exclude:
    - 'ext/grpc/extconf.rb'
    - 'stress/stress_client.rb'

# Offense count: 189
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, SupportedStyles, ConsistentQuotesInMultiline.
# SupportedStyles: single_quotes, double_quotes
Style/StringLiterals:
  Exclude:
    - 'pb/grpc/testing/metrics_pb.rb'
    - 'pb/src/proto/grpc/testing/empty_pb.rb'
    - 'pb/src/proto/grpc/testing/messages_pb.rb'
    - 'qps/proxy-worker.rb'
    - 'qps/server.rb'
    - 'qps/src/proto/grpc/testing/control_pb.rb'
    - 'qps/src/proto/grpc/testing/messages_pb.rb'
    - 'qps/src/proto/grpc/testing/payloads_pb.rb'
    - 'qps/src/proto/grpc/testing/proxy-service_pb.rb'
    - 'qps/src/proto/grpc/testing/stats_pb.rb'
    - 'qps/worker.rb'

# Offense count: 1
Style/StructInheritance:
  Exclude:
    - 'lib/grpc/generic/rpc_desc.rb'

# Offense count: 10
# Cop supports --auto-correct.
# Configuration parameters: MinSize, SupportedStyles.
# SupportedStyles: percent, brackets
Style/SymbolArray:
  EnforcedStyle: brackets

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: IgnoredMethods.
# IgnoredMethods: respond_to, define_method
Style/SymbolProc:
  Exclude:
    - 'qps/client.rb'
    - 'stress/stress_client.rb'

# Offense count: 6
# Cop supports --auto-correct.
# Configuration parameters: AllowNamedUnderscoreVariables.
Style/TrailingUnderscoreVariable:
  Exclude:
    - 'spec/channel_credentials_spec.rb'
    - 'spec/server_credentials_spec.rb'

# Offense count: 3
# Cop supports --auto-correct.
# Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, IgnoreClassMethods, Whitelist.
# Whitelist: to_ary, to_a, to_c, to_enum, to_h, to_hash, to_i, to_int, to_io, to_open, to_path, to_proc, to_r, to_regexp, to_str, to_s, to_sym
Style/TrivialAccessors:
  Exclude:
    - 'qps/histogram.rb'

# Offense count: 3
# Cop supports --auto-correct.
Style/UnneededInterpolation:
  Exclude:
    - 'pb/grpc/health/checker.rb'

# Offense count: 1
# Cop supports --auto-correct.
Style/YodaCondition:
  Exclude:
    - 'stress/stress_client.rb'

# Offense count: 2
# Cop supports --auto-correct.
Style/ZeroLengthPredicate:
  Exclude:
    - 'lib/grpc/generic/rpc_server.rb'
