From ddd2ec05d82cd8ff175fddd60d847c7e8a232b6e Mon Sep 17 00:00:00 2001 From: "Andrew R. McBurney" Date: Thu, 17 May 2018 16:56:59 -0400 Subject: [PATCH] Added static `use` method for `DatabaseCache`. --- Library/Homebrew/cache_store.rb | 6 ++++++ Library/Homebrew/formula.rb | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Library/Homebrew/cache_store.rb b/Library/Homebrew/cache_store.rb index a94e1e98e1..3328235329 100644 --- a/Library/Homebrew/cache_store.rb +++ b/Library/Homebrew/cache_store.rb @@ -25,6 +25,12 @@ class DatabaseCache @return_value = yield(@db) @db.close end + + def self.use(type) + return_value = nil + DatabaseCache.new(type) { |db| return_value = yield(db) } + return_value + end end # diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index b130c508ec..2f4fc73ae7 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -1527,13 +1527,13 @@ class Formula keg = opt_or_installed_prefix_keg return [] unless keg - cache = DatabaseCache.new(:linkage) do |database_cache| + undeclared_deps = DatabaseCache.use(:linkage) do |database_cache| use_cache = !ENV["HOMEBREW_LINKAGE_CACHE"].nil? linkage_checker = LinkageChecker.new(keg, database_cache, use_cache, self) linkage_checker.undeclared_deps.map { |n| Dependency.new(n) } end - cache.return_value + undeclared_deps end # Returns a list of formulae depended on by this formula that aren't