aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
Diffstat (limited to 'Library')
-rw-r--r--Library/.rubocop_rules.yml298
-rw-r--r--Library/.rubocop_todo.yml129
-rw-r--r--Library/Homebrew/cask/.rubocop.yml2
3 files changed, 300 insertions, 129 deletions
diff --git a/Library/.rubocop_rules.yml b/Library/.rubocop_rules.yml
index 543dc4018..638989291 100644
--- a/Library/.rubocop_rules.yml
+++ b/Library/.rubocop_rules.yml
@@ -1,75 +1,194 @@
-# ruby style guide favorite
-Style/StringLiterals:
- EnforcedStyle: double_quotes
-
-# consistency with above
-Style/StringLiteralsInInterpolation:
- EnforcedStyle: double_quotes
-
-# only for numbers >= 1_000_000
-Style/NumericLiterals:
- MinDigits: 7
-
-# zero-prefixed octal literals are just too widely used (and mostly understood)
-Style/NumericLiteralPrefix:
- EnforcedOctalStyle: zero_only
-
-# percent-x is allowed for multiline
-Style/CommandLiteral:
- EnforcedStyle: mixed
-
-# depends_on foo: :bar looks rubbish
-Style/HashSyntax:
- EnforcedStyle: ruby19
- Exclude:
- - 'Taps/**/*'
-
-# paths abound, easy escape
-Style/RegexpLiteral:
- EnforcedStyle: slashes
-
-Style/Alias:
- EnforcedStyle: prefer_alias
-
-# our current conditional style is established, clear and
-# requiring users to change that now would be confusing.
-Style/ConditionalAssignment:
- Enabled: false
-
-# no metrics for formulas
Metrics/AbcSize:
Enabled: false
-Metrics/CyclomaticComplexity:
- Enabled: false
-Metrics/MethodLength:
- Enabled: false
+
Metrics/ClassLength:
Enabled: false
-Metrics/PerceivedComplexity:
+
+Metrics/CyclomaticComplexity:
Enabled: false
-# we often need very long lines
Metrics/LineLength:
Enabled: false
-# formulas have no mandatory doc
-Style/Documentation:
+Metrics/MethodLength:
+ Enabled: false
+
+Metrics/ModuleLength:
+ CountComments: false
+ Exclude:
+ - 'Homebrew/cask/lib/hbc/locations.rb'
+ - 'Homebrew/cask/lib/hbc/macos.rb'
+ - 'Homebrew/cask/lib/hbc/utils.rb'
+
+Metrics/PerceivedComplexity:
Enabled: false
# favor parens-less DSL-style arguments
Lint/AmbiguousOperator:
Enabled: false
+
Lint/AmbiguousRegexpLiteral:
Enabled: false
+
Lint/AssignmentInCondition:
Enabled: false
+
+Lint/EndAlignment:
+ AlignWith: variable
+
+# `formula do` uses nested method definitions
+Lint/NestedMethodDefinition:
+ Exclude:
+ - 'Homebrew/test/**/*'
+
Lint/ParenthesesAsGroupedExpression:
Enabled: false
-# compact style
+Style/Alias:
+ EnforcedStyle: prefer_alias
+
+Style/AlignHash:
+ Enabled: false
+
+# `system` is a special case and aligns on second argument
+Style/AlignParameters:
+ Enabled: false
+
+Style/BarePercentLiterals:
+ Exclude:
+ - 'Taps/**/*'
+ EnforcedStyle: percent_q
+
+Style/BlockDelimiters:
+ EnforcedStyle: semantic
+ Exclude:
+ - 'Taps/**/*'
+ FunctionalMethods:
+ - expect
+ - find
+ - let
+ - let!
+ - subject
+ - watch
+ - inject
+ - map
+ - map!
+ - collect
+ - collect!
+ - reject
+ - reject!
+ - delete_if
+ - with_object
+ - popen_read
+ ProceduralMethods:
+ - after
+ - at_exit
+ - before
+ - benchmark
+ - bm
+ - bmbm
+ - capture_io
+ - capture_output
+ - capture_subprocess_io
+ - chdir
+ - context
+ - create
+ - define_method
+ - define_singleton_method
+ - fork
+ - measure
+ - new
+ - open
+ - realtime
+ - shutup
+ - tap
+ - each
+ - each_pair
+ - each_with_index
+ - reverse_each
+ - ignore_interrupts
+ IgnoredMethods:
+ - each_with_object
+ - it
+ - its
+ - lambda
+ - proc
+ - formula
+ - mock
+ - devel
+ - stable
+ - head
+ - assert_raises
+ - assert_nothing_raised
+ - resource
+ - with_build_environment
+ - ensure_writable
+ - satisfy
+ - fetch
+ - brew
+ - expand
+ - env
+ - recursive_dependencies
+ - trap
+ - link_dir
+ - with_system_path
+
+Style/CaseIndentation:
+ IndentWhenRelativeTo: end
+
+Style/ClassAndModuleChildren:
+ EnforcedStyle: nested
+
+# percent-x is allowed for multiline
+Style/CommandLiteral:
+ EnforcedStyle: mixed
+
+# our current conditional style is established, clear and
+# requiring users to change that now would be confusing.
+Style/ConditionalAssignment:
+ Enabled: false
+
+Style/Documentation:
+ Enabled: false
+
Style/EmptyLineBetweenDefs:
AllowAdjacentOneLineDefs: true
+# dashes in filenames are typical
+Style/FileName:
+ Regex: !ruby/regexp /^[\w\@\-\+\.]+(\.rb)?$/
+
+# counterproductive in formulas, notably within the install method
+Style/GuardClause:
+ Exclude:
+ - 'Taps/**/*'
+
+# depends_on foo: :bar looks rubbish
+Style/HashSyntax:
+ EnforcedStyle: ruby19_no_mixed_keys
+ Exclude:
+ - 'Taps/**/*'
+
+Style/IfUnlessModifier:
+ Exclude:
+ - 'Taps/**/*'
+
+Style/IndentArray:
+ EnforcedStyle: special_inside_parentheses
+
+# we won't change backward compatible method names
+Style/MethodName:
+ Exclude:
+ - 'Homebrew/compat/**/*'
+
+# only for numbers >= 1_000_000
+Style/NumericLiterals:
+ MinDigits: 7
+
+# zero-prefixed octal literals are just too widely used (and mostly understood)
+Style/NumericLiteralPrefix:
+ EnforcedOctalStyle: zero_only
+
# consistency and readability when faced with string interpolation
Style/PercentLiteralDelimiters:
PreferredDelimiters:
@@ -83,6 +202,23 @@ Style/PercentLiteralDelimiters:
'%W': '[]'
'%x': '()'
+# we prefer Perl-style regex back references
+Style/PerlBackrefs:
+ Enabled: false
+
+# we won't change backward compatible predicate names
+Style/PredicateName:
+ Exclude:
+ - 'Homebrew/compat/**/*'
+ NameWhitelist: is_32_bit?, is_64_bit?
+
+Style/RaiseArgs:
+ EnforcedStyle: exploded
+
+# paths abound, easy escape
+Style/RegexpLiteral:
+ EnforcedStyle: slashes
+
# conflicts with DSL-style path concatenation with `/`
Style/SpaceAroundOperators:
Enabled: false
@@ -91,66 +227,32 @@ Style/SpaceAroundOperators:
Style/SpecialGlobalVars:
Enabled: false
-# `system` is a special case and aligns on second argument
-Style/AlignParameters:
- Enabled: false
-
-# counterproductive in formulas, notably within the install method
-Style/GuardClause:
- Exclude:
- - 'Taps/**/*'
-Style/IfUnlessModifier:
- Exclude:
- - 'Taps/**/*'
+# ruby style guide favorite
+Style/StringLiterals:
+ EnforcedStyle: double_quotes
-# TODO: enforce when rubocop has fixed this
-# https://github.com/bbatsov/rubocop/issues/3516
-Style/VariableNumber:
- Enabled: false
+# consistency with above
+Style/StringLiteralsInInterpolation:
+ EnforcedStyle: double_quotes
# TODO: enforce when rubocop has shipped this
# https://github.com/bbatsov/rubocop/pull/3513
Style/TernaryParentheses:
Enabled: false
-# dashes in filenames are typical
-Style/FileName:
- Regex: !ruby/regexp /^[\w\@\-\+\.]+(\.rb)?$/
-
-# no percent word array, being friendly to non-ruby users
-# TODO: enforce when rubocop has fixed this
-# https://github.com/bbatsov/rubocop/issues/1543
-Style/WordArray:
- Enabled: false
-Style/UnneededCapitalW:
- Enabled: false
-
-# we prefer compact if-else-end/case-when-end alignment
-Lint/EndAlignment:
- AlignWith: variable
-Style/CaseIndentation:
- IndentWhenRelativeTo: end
-
-# we prefer Perl-style regex back references
-Style/PerlBackrefs:
- Enabled: false
-
# makes diffs nicer
Style/TrailingCommaInLiteral:
EnforcedStyleForMultiline: comma
-# we won't change backward compatible method names
-Style/MethodName:
- Exclude:
- - 'Homebrew/compat/**/*'
+Style/UnneededCapitalW:
+ Enabled: false
-# we won't change backward compatible predicate names
-Style/PredicateName:
- Exclude:
- - 'Homebrew/compat/**/*'
- NameWhitelist: is_32_bit?, is_64_bit?
+# TODO: enforce when rubocop has fixed this
+# https://github.com/bbatsov/rubocop/issues/3516
+Style/VariableNumber:
+ Enabled: false
-# `formula do` uses nested method definitions
-Lint/NestedMethodDefinition:
- Exclude:
- - 'Homebrew/test/**/*'
+# TODO: enforce when rubocop has fixed this
+# https://github.com/bbatsov/rubocop/issues/1543
+Style/WordArray:
+ Enabled: false
diff --git a/Library/.rubocop_todo.yml b/Library/.rubocop_todo.yml
index 6a38e100f..1435e740c 100644
--- a/Library/.rubocop_todo.yml
+++ b/Library/.rubocop_todo.yml
@@ -1,12 +1,12 @@
# This configuration was generated by
# `rubocop --auto-gen-config --exclude-limit 100`
-# on 2016-09-22 20:07:41 +0200 using RuboCop version 0.43.0.
+# on 2016-09-25 02:39:38 +0200 using RuboCop version 0.43.0.
# 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: 18
+# Offense count: 16
Lint/HandleExceptions:
Exclude:
- 'Homebrew/cmd/install.rb'
@@ -16,7 +16,6 @@ Lint/HandleExceptions:
- 'Homebrew/cmd/upgrade.rb'
- 'Homebrew/cmd/uses.rb'
- 'Homebrew/descriptions.rb'
- - 'Homebrew/dev-cmd/test-bot.rb'
- 'Homebrew/diagnostic.rb'
- 'Homebrew/extend/ENV/super.rb'
- 'Homebrew/extend/pathname.rb'
@@ -35,12 +34,11 @@ Lint/Loop:
Exclude:
- 'Homebrew/patch.rb'
-# Offense count: 6
+# Offense count: 1
Lint/NestedMethodDefinition:
Exclude:
- 'Homebrew/test/**/*'
- 'Homebrew/dev-cmd/bottle.rb'
- - 'Homebrew/dev-cmd/test-bot.rb'
# Offense count: 28
Lint/RescueException:
@@ -67,31 +65,117 @@ Lint/ShadowedException:
Exclude:
- 'Homebrew/utils/fork.rb'
-# Offense count: 18
+# Offense count: 14
Metrics/BlockNesting:
Max: 5
-# Offense count: 20
+# Offense count: 19
# Configuration parameters: CountComments.
Metrics/ModuleLength:
- Max: 370
+ Max: 366
# Offense count: 2
# Configuration parameters: CountKeywordArgs.
Metrics/ParameterLists:
Max: 6
-# Offense count: 1
-Style/CaseEquality:
+# Offense count: 9
+# Cop supports --auto-correct.
+# Configuration parameters: EnforcedStyle, SupportedStyles.
+# SupportedStyles: percent_q, bare_percent
+Style/BarePercentLiterals:
Exclude:
+ - 'Taps/**/*'
+ - 'Homebrew/dev-cmd/audit.rb'
+ - 'Homebrew/test/test_diagnostic.rb'
+ - 'Homebrew/test/test_exceptions.rb'
+ - 'Homebrew/test/test_integration_cmds.rb'
+ - 'Homebrew/test/test_patch.rb'
+ - 'Homebrew/test/test_string.rb'
+
+# Offense count: 136
+# 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:
+ - 'Taps/**/*'
+ - 'Homebrew/caveats.rb'
+ - 'Homebrew/cleaner.rb'
+ - 'Homebrew/cleanup.rb'
+ - 'Homebrew/cmd/deps.rb'
+ - 'Homebrew/cmd/desc.rb'
+ - 'Homebrew/cmd/fetch.rb'
+ - 'Homebrew/cmd/help.rb'
+ - 'Homebrew/cmd/info.rb'
+ - 'Homebrew/cmd/linkapps.rb'
+ - 'Homebrew/cmd/list.rb'
+ - 'Homebrew/cmd/outdated.rb'
+ - 'Homebrew/cmd/reinstall.rb'
+ - 'Homebrew/cmd/search.rb'
+ - 'Homebrew/cmd/tap-info.rb'
+ - 'Homebrew/cmd/unlinkapps.rb'
+ - 'Homebrew/cmd/update-report.rb'
+ - 'Homebrew/cmd/upgrade.rb'
+ - 'Homebrew/cmd/uses.rb'
- 'Homebrew/compilers.rb'
+ - 'Homebrew/debrew.rb'
+ - 'Homebrew/descriptions.rb'
+ - 'Homebrew/dev-cmd/aspell-dictionaries.rb'
+ - 'Homebrew/dev-cmd/audit.rb'
+ - 'Homebrew/dev-cmd/bottle.rb'
+ - 'Homebrew/dev-cmd/edit.rb'
+ - 'Homebrew/dev-cmd/man.rb'
+ - 'Homebrew/diagnostic.rb'
+ - 'Homebrew/exceptions.rb'
+ - 'Homebrew/extend/ARGV.rb'
+ - 'Homebrew/extend/ENV/shared.rb'
+ - 'Homebrew/extend/ENV/std.rb'
+ - 'Homebrew/extend/fileutils.rb'
+ - 'Homebrew/extend/os/mac/formula_cellar_checks.rb'
+ - 'Homebrew/extend/pathname.rb'
+ - 'Homebrew/formula.rb'
+ - 'Homebrew/formula_assertions.rb'
+ - 'Homebrew/formula_cellar_checks.rb'
+ - 'Homebrew/formula_installer.rb'
+ - 'Homebrew/formulary.rb'
+ - 'Homebrew/global.rb'
+ - 'Homebrew/keg.rb'
+ - 'Homebrew/language/haskell.rb'
+ - 'Homebrew/language/node.rb'
+ - 'Homebrew/language/python.rb'
+ - 'Homebrew/migrator.rb'
+ - 'Homebrew/os/mac/linkage_checker.rb'
+ - 'Homebrew/os/mac/xquartz.rb'
+ - 'Homebrew/patch.rb'
+ - 'Homebrew/readall.rb'
+ - 'Homebrew/software_spec.rb'
+ - 'Homebrew/tap.rb'
+ - 'Homebrew/test/lib/config.rb'
+ - 'Homebrew/test/test_ARGV.rb'
+ - 'Homebrew/test/test_cleanup.rb'
+ - 'Homebrew/test/test_cmd_audit.rb'
+ - 'Homebrew/test/test_dependency_collector.rb'
+ - 'Homebrew/test/test_formula_installer.rb'
+ - 'Homebrew/test/test_formula_installer_bottle.rb'
+ - 'Homebrew/test/test_formulary.rb'
+ - 'Homebrew/test/test_gpg.rb'
+ - 'Homebrew/test/test_integration_cmds.rb'
+ - 'Homebrew/test/test_migrator.rb'
+ - 'Homebrew/test/test_pathname.rb'
+ - 'Homebrew/test/test_tap.rb'
+ - 'Homebrew/test/test_utils.rb'
+ - 'Homebrew/test/testing_env.rb'
+ - 'Homebrew/utils.rb'
+ - 'Homebrew/utils/github.rb'
-# Offense count: 11
+# Offense count: 7
Style/ClassVars:
Exclude:
- - 'Homebrew/cleanup.rb'
- 'Homebrew/dev-cmd/audit.rb'
- - 'Homebrew/dev-cmd/test-bot.rb'
- 'Homebrew/formula_installer.rb'
- 'Homebrew/test/testing_env.rb'
- 'Homebrew/utils.rb'
@@ -108,14 +192,6 @@ Style/GlobalVars:
- 'Homebrew/diagnostic.rb'
- 'Homebrew/utils.rb'
-# Offense count: 51
-# Cop supports --auto-correct.
-# Configuration parameters: MaxLineLength.
-Style/IfUnlessModifier:
- Exclude:
- - 'Taps/**/*'
- - 'Homebrew/dev-cmd/audit.rb'
-
# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: SupportedStyles, IndentationWidth.
@@ -123,7 +199,7 @@ Style/IfUnlessModifier:
Style/IndentArray:
EnforcedStyle: special_inside_parentheses
-# Offense count: 7
+# Offense count: 5
# Configuration parameters: EnforcedStyle, SupportedStyles.
# SupportedStyles: module_function, extend_self
Style/ModuleFunction:
@@ -153,16 +229,9 @@ Style/MutableConstant:
- 'Homebrew/tap.rb'
# Offense count: 9
+# Offense count: 8
Style/OpMethod:
Exclude:
- - 'Homebrew/compilers.rb'
- 'Homebrew/dependencies.rb'
- 'Homebrew/install_renamed.rb'
- 'Homebrew/options.rb'
-
-# Offense count: 2
-# Cop supports --auto-correct.
-# Configuration parameters: SupportedStyles.
-# SupportedStyles: use_perl_names, use_english_names
-Style/SpecialGlobalVars:
- EnforcedStyle: use_perl_names
diff --git a/Library/Homebrew/cask/.rubocop.yml b/Library/Homebrew/cask/.rubocop.yml
index 96a0b0e11..4d5672789 100644
--- a/Library/Homebrew/cask/.rubocop.yml
+++ b/Library/Homebrew/cask/.rubocop.yml
@@ -9,7 +9,7 @@ Metrics/AbcSize:
Enabled: false
Metrics/ClassLength:
- Enabled: false
+ Enabled: false
Metrics/CyclomaticComplexity:
Enabled: false