From 38b5e4254ba037fca975965603d6227ab99690db Mon Sep 17 00:00:00 2001 From: Markus Reiter Date: Tue, 23 May 2017 15:37:33 +0200 Subject: [PATCH] Fix `uninstall` order. --- Library/Homebrew/cask/lib/hbc/artifact.rb | 12 +++++++++--- Library/Homebrew/cask/lib/hbc/installer.rb | 4 ---- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Library/Homebrew/cask/lib/hbc/artifact.rb b/Library/Homebrew/cask/lib/hbc/artifact.rb index e5eb54c36f..074d15017a 100644 --- a/Library/Homebrew/cask/lib/hbc/artifact.rb +++ b/Library/Homebrew/cask/lib/hbc/artifact.rb @@ -25,10 +25,17 @@ require "hbc/artifact/zap" module Hbc module Artifact - # NOTE: order is important here, since we want to extract nested containers - # before we handle any other artifacts + # NOTE: Order is important here! + # + # The `uninstall` stanza should be run first, as it may + # depend on other artifacts still being installed. + # + # We want to extract nested containers before we + # handle any other artifacts. + # TYPES = [ PreflightBlock, + Uninstall, NestedContainer, Installer, App, @@ -49,7 +56,6 @@ module Hbc VstPlugin, Vst3Plugin, ScreenSaver, - Uninstall, PostflightBlock, Zap, ].freeze diff --git a/Library/Homebrew/cask/lib/hbc/installer.rb b/Library/Homebrew/cask/lib/hbc/installer.rb index a783f764bf..7da9731e51 100644 --- a/Library/Homebrew/cask/lib/hbc/installer.rb +++ b/Library/Homebrew/cask/lib/hbc/installer.rb @@ -358,10 +358,6 @@ module Hbc odebug "Un-installing artifacts" artifacts = Artifact.for_cask(@cask, command: @command, verbose: verbose?, force: force?) - # Make sure the `uninstall` stanza is run first, as it - # may depend on other artifacts still being installed. - artifacts = artifacts.sort_by { |a| a.is_a?(Artifact::Uninstall) ? -1 : 1 } - odebug "#{artifacts.length} artifact/s defined", artifacts artifacts.each do |artifact|