diff options
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/.rubocop_todo.yml | 35 | ||||
| -rw-r--r-- | Library/Homebrew/brew.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/build.rb | 5 | ||||
| -rw-r--r-- | Library/Homebrew/caveats.rb | 51 | ||||
| -rw-r--r-- | Library/Homebrew/cleaner.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/cleanup.rb | 14 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/diy.rb | 8 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/info.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/install.rb | 10 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/reinstall.rb | 9 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/search.rb | 7 | ||||
| -rw-r--r-- | Library/Homebrew/dev-cmd/audit.rb | 103 | ||||
| -rw-r--r-- | Library/Homebrew/dev-cmd/bottle.rb | 64 |
13 files changed, 150 insertions, 175 deletions
diff --git a/Library/.rubocop_todo.yml b/Library/.rubocop_todo.yml index e27d89617..c6e126a9e 100644 --- a/Library/.rubocop_todo.yml +++ b/Library/.rubocop_todo.yml @@ -1,6 +1,6 @@ # This configuration was generated by # `rubocop --auto-gen-config --exclude-limit 100` -# on 2016-09-21 14:04:48 +0200 using RuboCop version 0.43.0. +# on 2016-09-22 20:07:41 +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 @@ -74,7 +74,7 @@ Metrics/BlockNesting: # Offense count: 20 # Configuration parameters: CountComments. Metrics/ModuleLength: - Max: 373 + Max: 370 # Offense count: 2 # Configuration parameters: CountKeywordArgs. @@ -119,13 +119,6 @@ Style/ConstantName: Exclude: - 'Homebrew/os/mac.rb' -# Offense count: 3 -Style/DoubleNegation: - Exclude: - - 'Homebrew/os/mac/cctools_keg.rb' - - 'Homebrew/os/mac/ruby_keg.rb' - - 'Homebrew/os/mac/xcode.rb' - # Offense count: 1 # Configuration parameters: EnforcedStyle, SupportedStyles. # SupportedStyles: format, sprintf, percent @@ -140,25 +133,14 @@ Style/GlobalVars: - 'Homebrew/diagnostic.rb' - 'Homebrew/utils.rb' -# Offense count: 97 +# Offense count: 70 # Configuration parameters: MinBodyLength. Style/GuardClause: Exclude: - 'Taps/**/*' - - 'Homebrew/brew.rb' - - 'Homebrew/build.rb' - - 'Homebrew/caveats.rb' - - 'Homebrew/cleaner.rb' - - 'Homebrew/cmd/cleanup.rb' - - 'Homebrew/cmd/diy.rb' - - 'Homebrew/cmd/info.rb' - - 'Homebrew/cmd/install.rb' - - 'Homebrew/cmd/reinstall.rb' - - 'Homebrew/cmd/search.rb' - 'Homebrew/cmd/update-report.rb' - 'Homebrew/dependency_collector.rb' - 'Homebrew/dev-cmd/audit.rb' - - 'Homebrew/dev-cmd/bottle.rb' - 'Homebrew/dev-cmd/pull.rb' - 'Homebrew/dev-cmd/test-bot.rb' - 'Homebrew/download_strategy.rb' @@ -188,7 +170,7 @@ Style/GuardClause: - 'Homebrew/utils/popen.rb' - 'Homebrew/version.rb' -# Offense count: 52 +# Offense count: 51 # Cop supports --auto-correct. # Configuration parameters: MaxLineLength. Style/IfUnlessModifier: @@ -221,7 +203,6 @@ Style/IfUnlessModifier: - 'Homebrew/formulary.rb' - 'Homebrew/language/haskell.rb' - 'Homebrew/migrator.rb' - - 'Homebrew/os/mac/cctools_mach.rb' - 'Homebrew/tab.rb' - 'Homebrew/utils/git.rb' @@ -277,11 +258,3 @@ Style/OpMethod: # SupportedStyles: use_perl_names, use_english_names Style/SpecialGlobalVars: EnforcedStyle: use_perl_names - -# Offense count: 1 -# Cop supports --auto-correct. -# Configuration parameters: EnforcedStyle, SupportedStyles, AllowSafeAssignment. -# SupportedStyles: require_parentheses, require_no_parentheses -Style/TernaryParentheses: - Exclude: - - 'Homebrew/formula.rb' diff --git a/Library/Homebrew/brew.rb b/Library/Homebrew/brew.rb index 0d1bcbdda..1ba3fb8c2 100644 --- a/Library/Homebrew/brew.rb +++ b/Library/Homebrew/brew.rb @@ -37,9 +37,9 @@ begin cmd = nil ARGV.dup.each_with_index do |arg, i| - if help_flag && cmd - break - elsif help_flag_list.include?(arg) + break if help_flag && cmd + + if help_flag_list.include?(arg) # Option-style help: Both `--help <cmd>` and `<cmd> --help` are fine. help_flag = true elsif arg == "help" && !cmd diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb index f4dde895a..d3c2833d4 100644 --- a/Library/Homebrew/build.rb +++ b/Library/Homebrew/build.rb @@ -31,9 +31,8 @@ class Build def post_superenv_hacks # Only allow Homebrew-approved directories into the PATH, unless # a formula opts-in to allowing the user's path. - if formula.env.userpaths? || reqs.any? { |rq| rq.env.userpaths? } - ENV.userpaths! - end + return unless formula.env.userpaths? || reqs.any? { |rq| rq.env.userpaths? } + ENV.userpaths! end def effective_build_options_for(dependent) diff --git a/Library/Homebrew/caveats.rb b/Library/Homebrew/caveats.rb index 9c1787f87..a5568cb29 100644 --- a/Library/Homebrew/caveats.rb +++ b/Library/Homebrew/caveats.rb @@ -69,27 +69,34 @@ class Caveats end def bash_completion_caveats - if keg && keg.completion_installed?(:bash) then <<-EOS.undent + return unless keg + return unless keg.completion_installed?(:bash) + + <<-EOS.undent Bash completion has been installed to: #{HOMEBREW_PREFIX}/etc/bash_completion.d - EOS - end + EOS end def zsh_completion_caveats - if keg && keg.completion_installed?(:zsh) then <<-EOS.undent + return unless keg + return unless keg.completion_installed?(:zsh) + + <<-EOS.undent zsh completion has been installed to: #{HOMEBREW_PREFIX}/share/zsh/site-functions - EOS - end + EOS end def fish_completion_caveats - if keg && keg.completion_installed?(:fish) && which("fish") then <<-EOS.undent + return unless keg + return unless keg.completion_installed?(:fish) + return unless which("fish") + + <<-EOS.undent fish completion has been installed to: #{HOMEBREW_PREFIX}/share/fish/vendor_completions.d - EOS - end + EOS end def python_caveats @@ -140,22 +147,24 @@ class Caveats end def app_caveats - if keg && keg.app_installed? - <<-EOS.undent - .app bundles were installed. - Run `brew linkapps #{keg.name}` to symlink these to /Applications. - EOS - end + return unless keg + return unless keg.app_installed? + + <<-EOS.undent + .app bundles were installed. + Run `brew linkapps #{keg.name}` to symlink these to /Applications. + EOS end def elisp_caveats return if f.keg_only? - if keg && keg.elisp_installed? - <<-EOS.undent - Emacs Lisp files have been installed to: - #{HOMEBREW_PREFIX}/share/emacs/site-lisp/#{f.name} - EOS - end + return unless keg + return unless keg.elisp_installed? + + <<-EOS.undent + Emacs Lisp files have been installed to: + #{HOMEBREW_PREFIX}/share/emacs/site-lisp/#{f.name} + EOS end def plist_caveats diff --git a/Library/Homebrew/cleaner.rb b/Library/Homebrew/cleaner.rb index d8a998576..7456e18d6 100644 --- a/Library/Homebrew/cleaner.rb +++ b/Library/Homebrew/cleaner.rb @@ -87,9 +87,9 @@ class Cleaner Find.prune if @f.skip_clean? path - if path.symlink? || path.directory? - next - elsif path.extname == ".la" + next if path.symlink? || path.directory? + + if path.extname == ".la" path.unlink elsif path.basename.to_s == "perllocal.pod" # Both this file & the .packlist one below are completely unnecessary diff --git a/Library/Homebrew/cmd/cleanup.rb b/Library/Homebrew/cmd/cleanup.rb index a9d3fbcde..6e0915c9a 100644 --- a/Library/Homebrew/cmd/cleanup.rb +++ b/Library/Homebrew/cmd/cleanup.rb @@ -22,13 +22,13 @@ module Homebrew ARGV.resolved_formulae.each { |f| Cleanup.cleanup_formula f } end - if Cleanup.disk_cleanup_size > 0 - disk_space = disk_usage_readable(Cleanup.disk_cleanup_size) - if ARGV.dry_run? - ohai "This operation would free approximately #{disk_space} of disk space." - else - ohai "This operation has freed approximately #{disk_space} of disk space." - end + return if Cleanup.disk_cleanup_size.zero? + + disk_space = disk_usage_readable(Cleanup.disk_cleanup_size) + if ARGV.dry_run? + ohai "This operation would free approximately #{disk_space} of disk space." + else + ohai "This operation has freed approximately #{disk_space} of disk space." end end end diff --git a/Library/Homebrew/cmd/diy.rb b/Library/Homebrew/cmd/diy.rb index 8262352f8..95ec7fe35 100644 --- a/Library/Homebrew/cmd/diy.rb +++ b/Library/Homebrew/cmd/diy.rb @@ -31,11 +31,9 @@ module Homebrew def detect_version(path) version = path.version.to_s - if version.empty? - raise "Couldn't determine version, set it with --version=<version>" - else - version - end + raise "Couldn't determine version, set it with --version=<version>" if version.empty? + + version end def detect_name(path, version) diff --git a/Library/Homebrew/cmd/info.rb b/Library/Homebrew/cmd/info.rb index 2474aad57..09c832203 100644 --- a/Library/Homebrew/cmd/info.rb +++ b/Library/Homebrew/cmd/info.rb @@ -54,11 +54,8 @@ module Homebrew end rescue FormulaUnavailableError # No formula with this name, try a blacklist lookup - if (blacklist = blacklisted?(f)) - puts blacklist - else - raise - end + raise unless (blacklist = blacklisted?(f)) + puts blacklist end end end diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb index 50439ccf9..0a6dd5a46 100644 --- a/Library/Homebrew/cmd/install.rb +++ b/Library/Homebrew/cmd/install.rb @@ -245,11 +245,11 @@ module Homebrew end def check_macports - unless MacOS.macports_or_fink.empty? - opoo "It appears you have MacPorts or Fink installed." - puts "Software installed with other package managers causes known problems for" - puts "Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again." - end + return if MacOS.macports_or_fink.empty? + + opoo "It appears you have MacPorts or Fink installed." + puts "Software installed with other package managers causes known problems for" + puts "Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again." end def check_cellar diff --git a/Library/Homebrew/cmd/reinstall.rb b/Library/Homebrew/cmd/reinstall.rb index e51aace2a..bda6022bf 100644 --- a/Library/Homebrew/cmd/reinstall.rb +++ b/Library/Homebrew/cmd/reinstall.rb @@ -58,10 +58,11 @@ module Homebrew def restore_backup(keg, formula) path = backup_path(keg) - if path.directory? - path.rename keg - keg.link unless formula.keg_only? - end + + return unless path.directory? + + path.rename keg + keg.link unless formula.keg_only? end def backup_path(path) diff --git a/Library/Homebrew/cmd/search.rb b/Library/Homebrew/cmd/search.rb index 3f00e8a10..aa80ec589 100644 --- a/Library/Homebrew/cmd/search.rb +++ b/Library/Homebrew/cmd/search.rb @@ -171,10 +171,11 @@ module Homebrew rescue canonical_name = canonical_full_name = name end + # Ignore aliases from results when the full name was also found - if aliases.include?(name) && results.include?(canonical_full_name) - next - elsif (HOMEBREW_CELLAR/canonical_name).directory? + next if aliases.include?(name) && results.include?(canonical_full_name) + + if (HOMEBREW_CELLAR/canonical_name).directory? pretty_installed(name) else name diff --git a/Library/Homebrew/dev-cmd/audit.rb b/Library/Homebrew/dev-cmd/audit.rb index 55f545d0c..61d136daf 100644 --- a/Library/Homebrew/dev-cmd/audit.rb +++ b/Library/Homebrew/dev-cmd/audit.rb @@ -83,11 +83,11 @@ module Homebrew end end - unless problem_count.zero? - problems = "problem" + plural(problem_count) - formulae = "formula" + plural(formula_count, "e") - ofail "#{problem_count} #{problems} in #{formula_count} #{formulae}" - end + return if problem_count.zero? + + problems = "problem" + plural(problem_count) + formulae = "formula" + plural(formula_count, "e") + ofail "#{problem_count} #{problems} in #{formula_count} #{formulae}" end end @@ -279,9 +279,11 @@ class FormulaAuditor end end end + if present.include?("head") && present.include?("head block") problem "Should not have both `head` and `head do`" end + if present.include?("bottle modifier") && present.include?("bottle block") problem "Should not have `bottle :unneeded/:disable` and `bottle do`" end @@ -668,24 +670,26 @@ class FormulaAuditor end revision_map = attributes_map[:revision] - if formula.revision.nonzero? - if formula.stable - if revision_map[formula.stable.version].empty? # check stable spec - problem "'revision #{formula.revision}' should be removed" - end - else # head/devel-only formula + + return if formula.revision.zero? + + if formula.stable + if revision_map[formula.stable.version].empty? # check stable spec problem "'revision #{formula.revision}' should be removed" end + else # head/devel-only formula + problem "'revision #{formula.revision}' should be removed" end end def audit_legacy_patches return unless formula.respond_to?(:patches) legacy_patches = Patch.normalize_legacy_patches(formula.patches).grep(LegacyPatch) - unless legacy_patches.empty? - problem "Use the patch DSL instead of defining a 'patches' method" - legacy_patches.each { |p| audit_patch(p) } - end + + return if legacy_patches.empty? + + problem "Use the patch DSL instead of defining a 'patches' method" + legacy_patches.each { |p| audit_patch(p) } end def audit_patch(patch) @@ -961,61 +965,56 @@ class FormulaAuditor problem "Use Language::Node for npm install args" end - if @strict - if line =~ /system ((["'])[^"' ]*(?:\s[^"' ]*)+\2)/ - bad_system = $1 - unless %w[| < > & ; *].any? { |c| bad_system.include? c } - good_system = bad_system.gsub(" ", "\", \"") - problem "Use `system #{good_system}` instead of `system #{bad_system}` " - end - end + return unless @strict - if line =~ /(require ["']formula["'])/ - problem "`#{$1}` is now unnecessary" + if line =~ /system ((["'])[^"' ]*(?:\s[^"' ]*)+\2)/ + bad_system = $1 + unless %w[| < > & ; *].any? { |c| bad_system.include? c } + good_system = bad_system.gsub(" ", "\", \"") + problem "Use `system #{good_system}` instead of `system #{bad_system}` " end + end - if line =~ %r{#\{share\}/#{Regexp.escape(formula.name)}[/'"]} - problem "Use \#{pkgshare} instead of \#{share}/#{formula.name}" - end + if line =~ /(require ["']formula["'])/ + problem "`#{$1}` is now unnecessary" + end - if line =~ %r{share(\s*[/+]\s*)(['"])#{Regexp.escape(formula.name)}(?:\2|/)} - problem "Use pkgshare instead of (share#{$1}\"#{formula.name}\")" - end + if line =~ %r{#\{share\}/#{Regexp.escape(formula.name)}[/'"]} + problem "Use \#{pkgshare} instead of \#{share}/#{formula.name}" + end + + if line =~ %r{share(\s*[/+]\s*)(['"])#{Regexp.escape(formula.name)}(?:\2|/)} + problem "Use pkgshare instead of (share#{$1}\"#{formula.name}\")" end end def audit_caveats - caveats = formula.caveats.to_s - - if caveats.include?("setuid") - problem "Don't recommend setuid in the caveats, suggest sudo instead." - end + return unless formula.caveats.to_s.include?("setuid") + problem "Don't recommend setuid in the caveats, suggest sudo instead." end def audit_reverse_migration # Only enforce for new formula being re-added to core and official taps return unless @strict return unless formula.tap && formula.tap.official? + return unless formula.tap.tap_migrations.key?(formula.name) - if formula.tap.tap_migrations.key?(formula.name) - problem <<-EOS.undent - #{formula.name} seems to be listed in tap_migrations.json! - Please remove #{formula.name} from present tap & tap_migrations.json - before submitting it to Homebrew/homebrew-#{formula.tap.repo}. - EOS - end + problem <<-EOS.undent + #{formula.name} seems to be listed in tap_migrations.json! + Please remove #{formula.name} from present tap & tap_migrations.json + before submitting it to Homebrew/homebrew-#{formula.tap.repo}. + EOS end def audit_prefix_has_contents return unless formula.prefix.directory? + return unless Keg.new(formula.prefix).empty_installation? - if Keg.new(formula.prefix).empty_installation? - problem <<-EOS.undent - The installation seems to be empty. Please ensure the prefix - is set correctly and expected files are installed. - The prefix configure/make argument may be case-sensitive. - EOS - end + problem <<-EOS.undent + The installation seems to be empty. Please ensure the prefix + is set correctly and expected files are installed. + The prefix configure/make argument may be case-sensitive. + EOS end def audit_conditional_dep(dep, condition, line) @@ -1184,9 +1183,7 @@ class ResourceAuditor end end - using_strategy = DownloadStrategyDetector.detect("", using) - - if url_strategy == using_strategy + if url_strategy == DownloadStrategyDetector.detect("", using) problem "Redundant :using value in URL" end end diff --git a/Library/Homebrew/dev-cmd/bottle.rb b/Library/Homebrew/dev-cmd/bottle.rb index fe07526f3..797828e0e 100644 --- a/Library/Homebrew/dev-cmd/bottle.rb +++ b/Library/Homebrew/dev-cmd/bottle.rb @@ -51,10 +51,11 @@ module Homebrew end @put_filenames ||= [] - unless @put_filenames.include? filename - puts "#{Tty.red}#{filename}#{Tty.reset}" - @put_filenames << filename - end + + return if @put_filenames.include? filename + + puts "#{Tty.red}#{filename}#{Tty.reset}" + @put_filenames << filename end result = false @@ -137,11 +138,11 @@ module Homebrew tap = f.tap unless tap - if ARGV.include?("--force-core-tap") - tap = CoreTap.instance - else + unless ARGV.include?("--force-core-tap") return ofail "Formula not from core or any taps: #{f.full_name}" end + + tap = CoreTap.instance end if f.bottle_disabled? @@ -323,34 +324,33 @@ module Homebrew puts "./#{filename}" puts output - if ARGV.include? "--json" - json = { - f.full_name => { - "formula" => { - "pkg_version" => f.pkg_version.to_s, - "path" => f.path.to_s.strip_prefix("#{HOMEBREW_REPOSITORY}/"), - }, - "bottle" => { - "root_url" => bottle.root_url, - "prefix" => bottle.prefix, - "cellar" => bottle.cellar.to_s, - "rebuild" => bottle.rebuild, - "tags" => { - Utils::Bottles.tag.to_s => { - "filename" => filename.to_s, - "sha256" => sha256, - }, + return unless ARGV.include? "--json" + json = { + f.full_name => { + "formula" => { + "pkg_version" => f.pkg_version.to_s, + "path" => f.path.to_s.strip_prefix("#{HOMEBREW_REPOSITORY}/"), + }, + "bottle" => { + "root_url" => bottle.root_url, + "prefix" => bottle.prefix, + "cellar" => bottle.cellar.to_s, + "rebuild" => bottle.rebuild, + "tags" => { + Utils::Bottles.tag.to_s => { + "filename" => filename.to_s, + "sha256" => sha256, }, }, - "bintray" => { - "package" => Utils::Bottles::Bintray.package(f.name), - "repository" => Utils::Bottles::Bintray.repository(tap), - }, }, - } - File.open("#{filename.prefix}.bottle.json", "w") do |file| - file.write Utils::JSON.dump json - end + "bintray" => { + "package" => Utils::Bottles::Bintray.package(f.name), + "repository" => Utils::Bottles::Bintray.repository(tap), + }, + }, + } + File.open("#{filename.prefix}.bottle.json", "w") do |file| + file.write Utils::JSON.dump json end end |
