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 chrullrich
Recipients chrullrich
Date 2015-09-15.11:09:23
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1442315365.32.0.493745807723.issue25124@psf.upfronthosting.co.za>
In-reply-to
Content
The item "A new installer for Windows has replaced the old MSI" appears on the "What's new" page as an "improvement". It is not. I disagree strongly with the decision to abandon MSI packages for Windows distribution in 3.5. This decision should be reversed immediately, if not sooner.

The .msi package format was introduced well over ten years ago. Since that day, there has been *no* excuse at all to distribute software for Windows in any other form (except "a simple ZIP will do").

The MSI file format's main advantage over ad-hoc executable installers or wrappers is in automated installation. There are several ways to deploy software in a corporate network, such as SCCM/SMS and GPO. While the former can deal with .exe packages, using MSIs is much simpler. In an MSI, the Feature table offers clear information about how to install only part of a product (ADDLOCAL=x,y,z either works as intended or fails cleanly). An .exe wrapper does not provide this information in an obvious way, instead, the user has to rely on external documentation to discover the installable features.

Python's Windows packages have been exemplary for years. This change needlessly gives up this reputation.

As far as the Universal CRT is concerned, for which there are no redist MSIs available, it should be clear that Python is not responsible for installing it, as it is a system component now. If ucrtbase.dll/KB2999226 is not present on the target system, the Python installation should simply abort and inform the user about the missing prerequisite.

(Also, as Microsoft is pushing it into the market at seemingly any cost, the market share of Windows 10 with included UCRT is likely to increase quickly, making the wrapper ever more unnecessary. Servers are, of course, another story.)

Finally, just in case there were any plans on display for the last several months: I do not usually venture into basements to check for leopards. Python's Windows packaging was perfectly fine, and there was no reason to assume that this would change, rather the opposite, in fact.
History
Date User Action Args
2015-09-15 11:09:25chrullrichsetrecipients: + chrullrich
2015-09-15 11:09:25chrullrichsetmessageid: <1442315365.32.0.493745807723.issue25124@psf.upfronthosting.co.za>
2015-09-15 11:09:25chrullrichlinkissue25124 messages
2015-09-15 11:09:23chrullrichcreate