From: Steve Dower Date: Thu, 9 Jul 2015 05:43:48 +0000 (-0700) Subject: Fixes installer rebuild, snapshot versioning, and the README.txt file. X-Git-Tag: v3.5.0b4~60 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b85b427507a8034878d08c2abe2d6b1b7eab97d0;p=python Fixes installer rebuild, snapshot versioning, and the README.txt file. --- diff --git a/Tools/msi/README.txt b/Tools/msi/README.txt index 1e41cc1f6c..25dcf32c2c 100644 --- a/Tools/msi/README.txt +++ b/Tools/msi/README.txt @@ -9,7 +9,7 @@ script: For an official release, the installer should be built with the Tools/msi/buildrelease.bat script and environment variables: - set PYTHON= + set PYTHON= set SPHINXBUILD= set PATH=; ;%PATH% @@ -87,7 +87,7 @@ and extracted to the externals/ directory. For an official release, the installer should be built with the Tools/msi/buildrelease.bat script: - set PYTHON= + set PYTHON= set SPHINXBUILD= set PATH=; ;%PATH% @@ -229,6 +229,11 @@ interest: Every package should reference this property to include upgrade information. + OptionalFeature (Component) + Packages that may be enabled or disabled should reference this component + and have an OPTIONAL_FEATURES entry in the bootstrap application to + properly handle Modify and Upgrade. + The .wxl_template file is specially handled by the build system for this project to perform {{substitutions}} as defined in msi.targets. They should be included in projects as items, where .wxl files @@ -326,14 +331,11 @@ install directory. .\python3x.dll The core interpreter .\python3.dll The stable ABI reference -.\appcrt140.dll Microsoft Visual C Runtime -.\desktopcrt140.dll Microsoft Visual C Runtime -.\vcruntime140.dll Microsoft Visual C Runtime When installed for all users, the following files are installed to "%SystemRoot%" (typically "C:\Windows") to ensure they are always available on PATH. (See Launching Python below.) For the current user, -they are installed in the Python install directory. +they are installed in "%LocalAppData%\Programs\Python\PyLauncher". .\py[w].exe PEP 397 launcher @@ -363,8 +365,10 @@ For 32-bit interpreters installed for the current user: When the core Python executables are installed, a key "InstallPath" is created within the root key with its default value set to the -executable's install directory. Within this key, a key "InstallGroup" is -created with its default value set to the product name "Python 3.X". +executable's install directory. A value named "ExecutablePath" is added +with the full path to the main Python interpreter, and a key +"InstallGroup" is created with its default value set to the product +name "Python 3.X". When the Python standard library is installed, a key "PythonPath" is created within the root key with its default value set to the full path diff --git a/Tools/msi/bundle/bootstrap/PythonBootstrapperApplication.cpp b/Tools/msi/bundle/bootstrap/PythonBootstrapperApplication.cpp index 728355930a..2166304137 100644 --- a/Tools/msi/bundle/bootstrap/PythonBootstrapperApplication.cpp +++ b/Tools/msi/bundle/bootstrap/PythonBootstrapperApplication.cpp @@ -291,6 +291,7 @@ class PythonBootstrapperApplication : public CBalBaseBootstrapperApplication { hr = BalGetStringVariable(L"TargetDir", &targetDir); if (FAILED(hr) || !targetDir || !targetDir[0]) { ReleaseStr(targetDir); + targetDir = nullptr; hr = BalGetStringVariable( installAllUsers ? L"DefaultAllUsersTargetDir" : L"DefaultJustForMeTargetDir", diff --git a/Tools/msi/bundle/bundle.targets b/Tools/msi/bundle/bundle.targets index 363c4e3efa..1ff00015b9 100644 --- a/Tools/msi/bundle/bundle.targets +++ b/Tools/msi/bundle/bundle.targets @@ -72,8 +72,18 @@ + + Build + + + + + Rebuild + + + - + diff --git a/Tools/msi/msi.props b/Tools/msi/msi.props index 1d9f0f0df1..2d13aef698 100644 --- a/Tools/msi/msi.props +++ b/Tools/msi/msi.props @@ -53,8 +53,13 @@ python$(MajorVersionNumber)$(MinorVersionNumber)$(MicroVersionNumber)$(ReleaseLevelName).chm - $(ReleaseLevelNumber) - $([System.Math]::Floor($([System.DateTime]::Now.Subtract($([System.DateTime]::new(2001, 1, 1))).TotalDays))) + $(MajorVersionNumber).$(MinorVersionNumber).$(Field3Value).0 + + + + $([System.Math]::Floor($([System.DateTime]::Now.Subtract($([System.DateTime]::new(2001, 1, 1))).TotalDays))) + $(MajorVersionNumber).$(MinorVersionNumber).$(MicroVersionNumber)dev$(RevisionNumber) + $(MajorVersionNumber).$(MinorVersionNumber).$(RevisionNumber).0 @@ -62,7 +67,7 @@ 64-bit $(DefineConstants); - Version=$(MajorVersionNumber).$(MinorVersionNumber).$(Field3Value).0; + Version=$(InstallerVersion); ShortVersion=$(MajorVersionNumber).$(MinorVersionNumber); LongVersion=$(PythonVersion); MajorVersionNumber=$(MajorVersionNumber);