Modify brew update to show if any formulae were removed.
This commit is contained in:
parent
6fd0a120f1
commit
b9bb078642
@ -9,11 +9,12 @@ class RefreshBrew
|
|||||||
formula_regexp = 'Library/Formula/(.+?)\.rb'
|
formula_regexp = 'Library/Formula/(.+?)\.rb'
|
||||||
ADDED_FORMULA = %r{^\s+create mode \d+ #{formula_regexp}$}
|
ADDED_FORMULA = %r{^\s+create mode \d+ #{formula_regexp}$}
|
||||||
UPDATED_FORMULA = %r{^\s+#{formula_regexp}\s}
|
UPDATED_FORMULA = %r{^\s+#{formula_regexp}\s}
|
||||||
|
DELETED_FORMULA = %r{^\s+delete mode \d+ #{formula_regexp}$}
|
||||||
|
|
||||||
attr_reader :added_formulae, :updated_formulae
|
attr_reader :added_formulae, :updated_formulae, :deleted_formulae
|
||||||
|
|
||||||
def initialize
|
def initialize
|
||||||
@added_formulae, @updated_formulae = [], []
|
@added_formulae, @updated_formulae, @deleted_formulae = [], [], []
|
||||||
end
|
end
|
||||||
|
|
||||||
# Performs an update of the homebrew source. Returns +true+ if a newer
|
# Performs an update of the homebrew source. Returns +true+ if a newer
|
||||||
@ -33,12 +34,15 @@ class RefreshBrew
|
|||||||
case line
|
case line
|
||||||
when ADDED_FORMULA
|
when ADDED_FORMULA
|
||||||
@added_formulae << $1
|
@added_formulae << $1
|
||||||
|
when DELETED_FORMULA
|
||||||
|
@deleted_formulae << $1
|
||||||
when UPDATED_FORMULA
|
when UPDATED_FORMULA
|
||||||
@updated_formulae << $1 unless @added_formulae.include?($1)
|
@updated_formulae << $1 unless @added_formulae.include?($1) or @deleted_formulae.include?($1)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@added_formulae.sort!
|
@added_formulae.sort!
|
||||||
@updated_formulae.sort!
|
@updated_formulae.sort!
|
||||||
|
@deleted_formulae.sort!
|
||||||
|
|
||||||
output.strip != GIT_UP_TO_DATE
|
output.strip != GIT_UP_TO_DATE
|
||||||
end
|
end
|
||||||
@ -47,6 +51,14 @@ class RefreshBrew
|
|||||||
!@updated_formulae.empty?
|
!@updated_formulae.empty?
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def pending_new_formulae?
|
||||||
|
!@added_formulae.empty?
|
||||||
|
end
|
||||||
|
|
||||||
|
def deleted_formulae?
|
||||||
|
!@deleted_formulae.empty?
|
||||||
|
end
|
||||||
|
|
||||||
def current_revision
|
def current_revision
|
||||||
in_prefix { execute(REVISION_COMMAND).strip }
|
in_prefix { execute(REVISION_COMMAND).strip }
|
||||||
rescue
|
rescue
|
||||||
|
|||||||
11
bin/brew
11
bin/brew
@ -171,6 +171,17 @@ begin
|
|||||||
puts "Already up-to-date."
|
puts "Already up-to-date."
|
||||||
else
|
else
|
||||||
puts "Updated Homebrew from #{old_revision[0,8]} to #{updater.current_revision[0,8]}."
|
puts "Updated Homebrew from #{old_revision[0,8]} to #{updater.current_revision[0,8]}."
|
||||||
|
## New Formulae
|
||||||
|
if updater.pending_new_formulae?
|
||||||
|
ohai "The following formulae are new:"
|
||||||
|
puts_columns updater.added_formulae
|
||||||
|
end
|
||||||
|
## Deleted Formulae
|
||||||
|
if updater.deleted_formulae?
|
||||||
|
ohai "The following formulae were removed:"
|
||||||
|
puts_columns updater.deleted_formulae
|
||||||
|
end
|
||||||
|
## Updated Formulae
|
||||||
if updater.pending_formulae_changes?
|
if updater.pending_formulae_changes?
|
||||||
ohai "The following formulae were updated:"
|
ohai "The following formulae were updated:"
|
||||||
puts_columns updater.updated_formulae
|
puts_columns updater.updated_formulae
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user