description cache invalid if updated w/o EVAL_ALL
When updating description cache, if eval_all not set, clear cache rather than leaving it out of date. This fixes an issue where, if a user sets `--eval-all` on the command line to run description searches, but HOMEBREW_EVAL_ALL isn't set in the environment the cache is never updated.
This commit is contained in:
parent
3aeef5aef2
commit
e8c71646c1
@ -68,6 +68,14 @@ class CacheStoreDatabase
|
|||||||
db.delete(key)
|
db.delete(key)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Deletes all content from the underlying database (if it already exists).
|
||||||
|
def clear!
|
||||||
|
return unless created?
|
||||||
|
|
||||||
|
dirty!
|
||||||
|
db.clear
|
||||||
|
end
|
||||||
|
|
||||||
# Closes the underlying database (if it is created and open).
|
# Closes the underlying database (if it is created and open).
|
||||||
def write_if_dirty!
|
def write_if_dirty!
|
||||||
return unless dirty?
|
return unless dirty?
|
||||||
|
|||||||
@ -41,7 +41,10 @@ class DescriptionCacheStore < CacheStore
|
|||||||
# @param report [Report] an update report generated by cmd/update.rb
|
# @param report [Report] an update report generated by cmd/update.rb
|
||||||
# @return [nil]
|
# @return [nil]
|
||||||
def update_from_report!(report)
|
def update_from_report!(report)
|
||||||
return unless Homebrew::EnvConfig.eval_all?
|
unless Homebrew::EnvConfig.eval_all?
|
||||||
|
database.clear!
|
||||||
|
return
|
||||||
|
end
|
||||||
return populate_if_empty! if database.empty?
|
return populate_if_empty! if database.empty?
|
||||||
return if report.empty?
|
return if report.empty?
|
||||||
|
|
||||||
@ -60,7 +63,10 @@ class DescriptionCacheStore < CacheStore
|
|||||||
# @param formula_names [Array] the formulae to update
|
# @param formula_names [Array] the formulae to update
|
||||||
# @return [nil]
|
# @return [nil]
|
||||||
def update_from_formula_names!(formula_names)
|
def update_from_formula_names!(formula_names)
|
||||||
return unless Homebrew::EnvConfig.eval_all?
|
unless Homebrew::EnvConfig.eval_all?
|
||||||
|
database.clear!
|
||||||
|
return
|
||||||
|
end
|
||||||
return populate_if_empty! if database.empty?
|
return populate_if_empty! if database.empty?
|
||||||
|
|
||||||
formula_names.each do |name|
|
formula_names.each do |name|
|
||||||
@ -108,7 +114,10 @@ class CaskDescriptionCacheStore < DescriptionCacheStore
|
|||||||
# @param report [Report] an update report generated by cmd/update.rb
|
# @param report [Report] an update report generated by cmd/update.rb
|
||||||
# @return [nil]
|
# @return [nil]
|
||||||
def update_from_report!(report)
|
def update_from_report!(report)
|
||||||
return unless Homebrew::EnvConfig.eval_all?
|
unless Homebrew::EnvConfig.eval_all?
|
||||||
|
database.clear!
|
||||||
|
return
|
||||||
|
end
|
||||||
return populate_if_empty! if database.empty?
|
return populate_if_empty! if database.empty?
|
||||||
return if report.empty?
|
return if report.empty?
|
||||||
|
|
||||||
@ -124,7 +133,10 @@ class CaskDescriptionCacheStore < DescriptionCacheStore
|
|||||||
# @param cask_tokens [Array] the casks to update
|
# @param cask_tokens [Array] the casks to update
|
||||||
# @return [nil]
|
# @return [nil]
|
||||||
def update_from_cask_tokens!(cask_tokens)
|
def update_from_cask_tokens!(cask_tokens)
|
||||||
return unless Homebrew::EnvConfig.eval_all?
|
unless Homebrew::EnvConfig.eval_all?
|
||||||
|
database.clear!
|
||||||
|
return
|
||||||
|
end
|
||||||
return populate_if_empty! if database.empty?
|
return populate_if_empty! if database.empty?
|
||||||
|
|
||||||
cask_tokens.each do |token|
|
cask_tokens.each do |token|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user