#19176: patch to fixup existing uninstall implementation ----------------------------------------+----------------------------------- Reporter: david.osguthorpe@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: MacPorts Future Component: base | Version: 1.7.0 Keywords: | Port: ----------------------------------------+----------------------------------- Comment(by blb@…): Replying to [comment:5 david.osguthorpe@…]:
ah - I think Ive just figured out a good reason for this approach - suppose you deactivate a port - this still leaves the files in the registry - now you update the Portfile and change versions etc. and if it had an uninstall phase you change that - now how do you uninstall that older deactivated version correctly? (which of course you were leaving around in case your new version didnt work) - also explains the current uninstall approach of deleting files based only on whats in the registry and why its independent of the whole Portfile fetch-install phases
This is also a problem if actions should be taken for deactivate, if you have multiple versions installed; again, with it only in the Portfile (and said Portfile only exists in the source repository location) then it's deactivate actions are also from the latest version. The way to do this for activate (if reactivated later), deactivate, and uninstall is to store either each in some location like the pkg_uninstall here or to keep the correct Portfile around as it was when that version was installed. If #19458 happens that keeps the Portfile with the image so it could be used in such cases... -- Ticket URL: <http://trac.macports.org/ticket/19176#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS