Message137105
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. |
|
Date |
User |
Action |
Args |
2011-05-28 02:08:47 | mhammond | set | recipients:
+ mhammond, tarek, eric.araujo |
2011-05-28 02:08:47 | mhammond | set | messageid: <1306548527.55.0.138367912737.issue12200@psf.upfronthosting.co.za> |
2011-05-28 02:08:46 | mhammond | link | issue12200 messages |
2011-05-28 02:08:46 | mhammond | create | |
|