diff --git a/Library/Homebrew/cmd/switch.rb b/Library/Homebrew/cmd/switch.rb index a40b4d88e7..8a378aed79 100644 --- a/Library/Homebrew/cmd/switch.rb +++ b/Library/Homebrew/cmd/switch.rb @@ -28,7 +28,7 @@ module Homebrew unless (rack/version).directory? onoe "#{name} does not have a version \"#{version}\" in the Cellar." - versions = rack.subdirs.map { |d| Keg.new(d).version } + versions = rack.subdirs.map { |d| Keg.new(d).version }.sort puts "Versions available: #{versions.join(", ")}" exit 3 diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index d64191b66b..66993a348b 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -602,7 +602,7 @@ class Formula # All currently installed prefix directories. # @private def installed_prefixes - rack.directory? ? rack.subdirs : [] + rack.directory? ? rack.subdirs.sort : [] end # All currently installed kegs. @@ -1182,7 +1182,7 @@ class Formula return false unless old_rack.directory? return false if old_rack.subdirs.empty? - tap == Tab.for_keg(old_rack.subdirs.first).tap + tap == Tab.for_keg(old_rack.subdirs.sort.first).tap end # @private diff --git a/Library/Homebrew/test/formula_pin_spec.rb b/Library/Homebrew/test/formula_pin_spec.rb index 909bfbc2b3..ce952a9574 100644 --- a/Library/Homebrew/test/formula_pin_spec.rb +++ b/Library/Homebrew/test/formula_pin_spec.rb @@ -9,7 +9,7 @@ describe FormulaPin do formula.rack.mkpath allow(formula).to receive(:installed_prefixes) do - formula.rack.directory? ? formula.rack.subdirs : [] + formula.rack.directory? ? formula.rack.subdirs.sort : [] end allow(formula).to receive(:installed_kegs) do