This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author mhammond
Recipients eric.araujo, mhammond, tarek
Date 2011-05-28.02:08:46
SpamBayes Score 1.6098234e-15
Marked as misclassified No
Message-id <1306548527.55.0.138367912737.issue12200@psf.upfronthosting.co.za>
In-reply-to
Content
Probably in all versions, but certainly in 2.7.

If you create an installer with bdist_wininst and specify an install_script, that script is not run on uninstallation.

See attached test case: setup.py specifies an install_script which just appends argv to %TEMP%/uninstall-test.txt.

* Create the installer with "python setup.py bdist_wininst"
* Execute the installer (ie, "dist\hello-0.1.win32.exe")
* Check %TEMP%/uninstall-test.txt - it should have 1 line:
['o:\\src\\python-2.6\\Scripts\\hello-install.py', '-install']
* Uninstall the package.
* Check %TEMP%/uninstall-test.txt - it *should* have a new line reflecting the uninstall.  Instead it is unchanged.

To get more info:
* Reinstall the package.
* Manually uninstall using the cmdline (with adjusted paths)
C:\> "c:\python26\Removehello.exe" -u "c:\python26\hello-wininst.log" > %TEMP%\delme.out 2>&1

Check the contents of %TEMP%\delme.out - you will see:
*** Could not load Python ****** Could not run installation script ***

Digging into the source code of install.c - the problem is that although the Python DLL name is parsed from the log file, this isn't reflected in the global variables python_dir or pythondll - so they remain empty strings and attempting to load the empty string as Python causes the error messages.
History
Date User Action Args
2011-05-28 02:08:47mhammondsetrecipients: + mhammond, tarek, eric.araujo
2011-05-28 02:08:47mhammondsetmessageid: <1306548527.55.0.138367912737.issue12200@psf.upfronthosting.co.za>
2011-05-28 02:08:46mhammondlinkissue12200 messages
2011-05-28 02:08:46mhammondcreate