aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorJack Nagel2014-06-19 21:35:47 -0500
committerJack Nagel2014-06-20 21:32:36 -0500
commit445dd80e44a73b5df89c9e9a9beb02fc95130315 (patch)
tree755306364d9794d050fab72615ebee2741cb5687 /Library
parent10fda9e9b910f9161a8f174e13cf0f31edfbde80 (diff)
downloadbrew-445dd80e44a73b5df89c9e9a9beb02fc95130315.tar.bz2
Remove ARGV.filter_for_dependencies
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/extend/ARGV.rb9
-rw-r--r--Library/Homebrew/formula_installer.rb74
-rw-r--r--Library/Homebrew/test/test_ARGV.rb17
3 files changed, 34 insertions, 66 deletions
diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb
index bb6a56fe9..996654352 100644
--- a/Library/Homebrew/extend/ARGV.rb
+++ b/Library/Homebrew/extend/ARGV.rb
@@ -161,15 +161,6 @@ module HomebrewArgvExtension
Homebrew.help_s
end
- def filter_for_dependencies
- old_args = clone
- delete "--devel"
- delete "--HEAD"
- yield
- ensure
- replace(old_args)
- end
-
def cc
value 'cc'
end
diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb
index b53632993..184a50e81 100644
--- a/Library/Homebrew/formula_installer.rb
+++ b/Library/Homebrew/formula_installer.rb
@@ -255,26 +255,24 @@ class FormulaInstaller
while f = formulae.pop
- ARGV.filter_for_dependencies do
- f.recursive_requirements do |dependent, req|
- build = effective_build_options_for(dependent)
-
- if (req.optional? || req.recommended?) && build.without?(req)
- Requirement.prune
- elsif req.build? && dependent == f && pour_bottle?
- Requirement.prune
- elsif req.build? && dependent != f && install_bottle_for_dep?(dependent, build)
- Requirement.prune
- elsif req.satisfied?
- Requirement.prune
- elsif req.default_formula?
- dep = req.to_dependency
- deps.unshift(dep)
- formulae.unshift(dep.to_formula)
- Requirement.prune
- else
- unsatisfied_reqs[dependent] << req
- end
+ f.recursive_requirements do |dependent, req|
+ build = effective_build_options_for(dependent)
+
+ if (req.optional? || req.recommended?) && build.without?(req)
+ Requirement.prune
+ elsif req.build? && dependent == f && pour_bottle?
+ Requirement.prune
+ elsif req.build? && dependent != f && install_bottle_for_dep?(dependent, build)
+ Requirement.prune
+ elsif req.satisfied?
+ Requirement.prune
+ elsif req.default_formula?
+ dep = req.to_dependency
+ deps.unshift(dep)
+ formulae.unshift(dep.to_formula)
+ Requirement.prune
+ else
+ unsatisfied_reqs[dependent] << req
end
end
end
@@ -285,23 +283,21 @@ class FormulaInstaller
def expand_dependencies(deps)
inherited_options = {}
- expanded_deps = ARGV.filter_for_dependencies do
- Dependency.expand(f, deps) do |dependent, dep|
- options = inherited_options[dep.name] = inherited_options_for(dep)
- build = effective_build_options_for(
- dependent,
- inherited_options.fetch(dependent.name, [])
- )
-
- if (dep.optional? || dep.recommended?) && build.without?(dep)
- Dependency.prune
- elsif dep.build? && dependent == f && pour_bottle?
- Dependency.prune
- elsif dep.build? && dependent != f && install_bottle_for_dep?(dependent, build)
- Dependency.prune
- elsif dep.satisfied?(options)
- Dependency.skip
- end
+ expanded_deps = Dependency.expand(f, deps) do |dependent, dep|
+ options = inherited_options[dep.name] = inherited_options_for(dep)
+ build = effective_build_options_for(
+ dependent,
+ inherited_options.fetch(dependent.name, [])
+ )
+
+ if (dep.optional? || dep.recommended?) && build.without?(dep)
+ Dependency.prune
+ elsif dep.build? && dependent == f && pour_bottle?
+ Dependency.prune
+ elsif dep.build? && dependent != f && install_bottle_for_dep?(dependent, build)
+ Dependency.prune
+ elsif dep.satisfied?(options)
+ Dependency.skip
end
end
@@ -333,9 +329,7 @@ class FormulaInstaller
oh1 "Installing dependencies for #{f}: #{Tty.green}#{deps.map(&:first)*", "}#{Tty.reset}"
end
- ARGV.filter_for_dependencies do
- deps.each { |dep, options| install_dependency(dep, options) }
- end
+ deps.each { |dep, options| install_dependency(dep, options) }
@show_header = true unless deps.empty?
end
diff --git a/Library/Homebrew/test/test_ARGV.rb b/Library/Homebrew/test/test_ARGV.rb
index e5501d5ec..88e13aa40 100644
--- a/Library/Homebrew/test/test_ARGV.rb
+++ b/Library/Homebrew/test/test_ARGV.rb
@@ -47,21 +47,4 @@ class ArgvExtensionTests < Homebrew::TestCase
assert !@argv.flag?("--frotz")
assert !@argv.flag?("--debug")
end
-
- def test_filter_for_dependencies_clears_flags
- @argv << "--HEAD" << "--devel"
- @argv.filter_for_dependencies { assert_empty @argv }
- end
-
- def test_filter_for_dependencies_ensures_argv_restored
- @argv.expects(:replace).with(@argv.clone)
- begin
- @argv.filter_for_dependencies { raise Exception }
- rescue Exception
- end
- end
-
- def test_filter_for_dependencies_returns_block_value
- assert_equal 1, @argv.filter_for_dependencies { 1 }
- end
end