Win32::Env::Path 0.01 - Smarter manipulation of PATH entries

Alias on 2008-03-24T06:42:48

Now that the XML/Expat problems have been fixed, the next noisiest complaints with Vanilla/Strawberry is from people that are installing and uninstalling a lot of Vanilla-related distributions, including (I'm assuming) all the valued beta testers.

Their complaint is that Vanilla-based distributions don't clean up their PATH/INCLUDE/LIB entries when the distribution is uninstalled, and the problem here is that Inno Setup does not support the reversing of the PATH entries it created during install-time.

Win32::Env::Path is (hopefully) the solution for this problem.

It has two interfaces, an object-oriented API that lets you create an object representing a single PATH-style environment registry entry, and a "win32envpath" command line front end for use in install scripts and what not.

In particular, Inno Setup support [Run] and [UninstallRun] blocks that should allow for something like... win32envpath PATH remove "c:\strawberry\perl\bin"

...to be scheduled to run at Uninstall pre-deletion time.

This module is highly experimental at the moment, and not well documented, but comments are welcome.

This fix may or may not be stable in time for Strawberry April, but I don't plan to delay to release to wait for this to be finished. If it doesn't make it in time, then it should arrive in Strawberry July instead.

My experience with delaying releases to wait for features has been almost entirely bad, so I plan to maintain release tempo if at all possible, and features will arrive as and when they are ready for battle.