From 69dcc2592ca58fec117b4a7fd78c72596af3ba50 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Mon, 2 Dec 2013 12:44:28 -0600 Subject: [PATCH] Don't mutate deps collection when expanding requirements Fixes Homebrew/homebrew-science#213. --- Library/Homebrew/build.rb | 6 ++---- Library/Homebrew/formula_installer.rb | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb index e75a6841ef..eb0677a597 100755 --- a/Library/Homebrew/build.rb +++ b/Library/Homebrew/build.rb @@ -61,10 +61,8 @@ class Build def initialize(f) @f = f - # Expand requirements before dependencies, as requirements - # may add dependencies if a default formula is activated. - @reqs = expand_reqs @deps = expand_deps + @reqs = expand_reqs end def post_superenv_hacks @@ -88,7 +86,7 @@ class Build elsif req.build? && dependent != f Requirement.prune elsif req.satisfied? && req.default_formula? && (dep = req.to_dependency).installed? - dependent.deps << dep + deps << dep Requirement.prune end end diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index ddab165329..0a0f61aeb9 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -186,7 +186,7 @@ class FormulaInstaller elsif req.satisfied? Requirement.prune elsif req.default_formula? - dependent.deps << req.to_dependency + unsatisfied_deps << req.to_dependency Requirement.prune else puts "#{dependent}: #{req.message}"