Revert "Revert "formula: runtime deps of build deps aren't runtime""

This reverts commit 862c3ba4a2fb76140e46fdf49a1ea6857f140a29.
This commit is contained in:
Alyssa Ross 2016-12-23 15:01:02 +00:00
parent 8f85eb64c4
commit 3f724825d3
2 changed files with 12 additions and 5 deletions

View File

@ -1505,7 +1505,7 @@ class Formula
# Returns a list of Dependency objects that are required at runtime.
# @private
def runtime_dependencies
recursive_dependencies.reject(&:build?)
recursive_dependencies { |_, dep| Dependency.prune if dep.build? }
end
# Returns a list of formulae depended on by this formula that aren't

View File

@ -651,12 +651,19 @@ class FormulaTests < Homebrew::TestCase
f4 = formula("f4") do
url "f4-1.0"
depends_on "f3"
depends_on "f1"
end
stub_formula_loader f4
f5 = formula("f5") do
url "f5-1.0"
depends_on "f3" => :build
depends_on "f4"
end
assert_equal %w[f3], f4.deps.map(&:name)
assert_equal %w[f1 f2 f3], f4.recursive_dependencies.map(&:name)
assert_equal %w[f2 f3], f4.runtime_dependencies.map(&:name)
assert_equal %w[f3 f4], f5.deps.map(&:name)
assert_equal %w[f1 f2 f3 f4], f5.recursive_dependencies.map(&:name)
assert_equal %w[f1 f4], f5.runtime_dependencies.map(&:name)
end
def test_to_hash