[Python-Dev] RELEASED Python 2.4, alpha 2 (original) (raw)

Tim Peters tim.peters at gmail.com
Sat Aug 7 08:27:20 CEST 2004


[Tim, tries the "upgrade" install for 2.4a2, notes that it's pretty slow]

[Martin v. Löwis]

Yes. I should probably speed it up by changing the UI sequence number of RemoveExistingApplications from 1510 to 1450. In case you wonder what this means:

It's obvious: you would add 3000, then cyclically permute the first 3 digits right one position. Tell me something I don't know .

Action 1500 is InstallInitialize; anything from then on is under transaction control. This means that installer will roll back the uninstall in case the subsequent install fails. This is expensive, as it first moves all old files out of the place, then puts the new ones in, then deletes the old ones. At 1450, the files would be deleted immediately (I believe), at the cost of not being able to undo the deinstallation if the installation later fails (e.g. by user Cancel).

I wouldn't do this; it's good that as much of the process as possible is transactional. I doubt it took longer overall than what I normally do (run a full uninstall of the old version, then install the new version).

One glitch: I'm pretty sure I selected "install only for me" in the first screen. I wanted to go back to check, but it doesn't seem possible to go back to the first screen.

Yes. I don't know what to do about this: the screen sets ALLUSERS=1, then performs FindRelatedProducts to find the old installation. If the old installation was per-machine, we only find it if we commit to making the new installation also per-machine.

Except that in this case, I'm pretty sure my 2.4a1 installation was also "only for me". I could be wrong about that.

That decision cannot be taken back; the user would have to cancel and start over.

Which is an option, so that's cool.

Anyway, the Python DLL ended up in a system directory, and that's "the glitch". I expected/wanted it to end up in my Python directory.

Ok. I will see whether I can reproduce that.

I believe I later saw a checkin that intended to fix this, and, if so, that's cool too. I hereby nominate you as MSI-builder For Life .



More information about the Python-Dev mailing list