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.

classification
Title: macOS installer and framework enhancements and changes for 3.7.0, 3.6.5, and 2.7.15
Type: Stage: resolved
Components: Build, macOS Versions: Python 3.7, Python 3.6, Python 2.7
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: ned.deily Nosy List: ned.deily, ronaldoussoren
Priority: normal Keywords: patch

Created on 2018-01-30 11:58 by ned.deily, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 5448 merged ned.deily, 2018-01-30 12:19
PR 6279 merged ned.deily, 2018-03-28 07:28
PR 6280 merged miss-islington, 2018-03-28 07:46
PR 6281 merged miss-islington, 2018-03-28 07:47
PR 6307 merged ned.deily, 2018-03-29 11:36
PR 6308 merged ned.deily, 2018-03-29 11:38
PR 6469 merged ned.deily, 2018-04-14 14:25
Messages (13)
msg311268 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-01-30 11:58
This issue covers various changes for the macOS installers provided via python.org for 3.7.0.
msg311270 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-01-30 12:42
New changeset 8c9bb72e8b6474ae722f7d6521cfb3cb2e26e3c5 by Ned Deily in branch 'master':
bpo-32726: macOS installer and framework enhancements and changes for 3.7.0 (GH-5448)
https://github.com/python/cpython/commit/8c9bb72e8b6474ae722f7d6521cfb3cb2e26e3c5
msg311386 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-01-31 23:33
New changeset 7fdefac8e8fdca29b329b27e6e50f3b265bd8900 by Ned Deily in branch '3.7':
bpo-32726: Build macOS 10.9+ installer with private copy of Tcl/Tk 8.6
https://github.com/python/cpython/commit/7fdefac8e8fdca29b329b27e6e50f3b265bd8900
msg311390 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-01-31 23:33
New changeset 1ca2ffdc532622ef001418585c146e6b0f31027f by Ned Deily in branch 'master':
bpo-32726: Build macOS 10.9+ installer with private copy of Tcl/Tk 8.6
https://github.com/python/cpython/commit/1ca2ffdc532622ef001418585c146e6b0f31027f
msg313801 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-14 03:40
New changeset 94552448d7bcc1eebc53b608e89d96e235054f2f by Ned Deily in branch '3.6':
bpo-32726: macOS installer changes for 3.6.5
https://github.com/python/cpython/commit/94552448d7bcc1eebc53b608e89d96e235054f2f
msg313802 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-14 05:12
Backport the new 10.9+ installer variant from 3.7 to 3.6 for 3.6.5:

The rationale is that, while the 10.6 variant is still upwards compatible on current systems, it is showing its age.  Apple has started deprecating 32-bit support on macOS and apparently plans to drop it entirely in an upcoming release.  Also this gives a way to finally provide batteries-included Tcl/Tk support (the single most-requested feature for the macOS installers) and move to Tcl/Tk 8.6.x which is not well supported on older macOS releases (ActiveState currently only supplies 8.6.x binaries for macOS 10.9+, for example).  For 3.6.5, the 10.9+ variant will be offered as an additional alternative to the traditional 10.6+ variant in earlier 3.6.x releases.  I expect that most Binary extension modules (including wheels) built for earlier versions of 3.6.x with the 10.6 variant should continue to work with either 3.6.5 variant without recompilation.  This perhaps will also make it easier to transition to the 10.9+ variant as the default for 3.7.0.

In addition, both installer variants have updated 3rd-party libraries:
OpenSSL 1.0.2m -> 1.0.2n
XZ 5.2.2 -> 5.2.3
SQLite 3.21.0 -> 3.22.0

The 10.6 variant now sets CC=gcc instead of CC=gcc-4.2 and does not search for the outdated 10.6 SDK.  The variant is built with the same compiler as before.  If necessary for extension module builds, the CC value can be overridden with the CC env variable and an SDK can be specified with the SDKROOT env variable (see man xcrun).  These minor changes should be transparent to nearly all users.
msg314568 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-28 07:44
New changeset df532ab752680f6e359672c2cd40bec8ac848628 by Ned Deily in branch 'master':
bpo-32726: Do not force IDLE.app to launch in 32-bit mode. (GH-6279)
https://github.com/python/cpython/commit/df532ab752680f6e359672c2cd40bec8ac848628
msg314571 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-28 08:16
New changeset 39c0ef5171e1cdcc2ed59685a81b194e9bfe3809 by Ned Deily (Miss Islington (bot)) in branch '3.7':
bpo-32726: Do not force IDLE.app to launch in 32-bit mode. (GH-6280)
https://github.com/python/cpython/commit/39c0ef5171e1cdcc2ed59685a81b194e9bfe3809
msg314572 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-28 08:40
New changeset fb3d3b7a65d8c0521a88c87e17a7554c5ec439d9 by Ned Deily (Miss Islington (bot)) in branch '3.6':
bpo-32726: Do not force IDLE.app to launch in 32-bit mode. (GH-6279) (#6281)
https://github.com/python/cpython/commit/fb3d3b7a65d8c0521a88c87e17a7554c5ec439d9
msg314643 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-29 11:41
New changeset 7a6f59e123db1ff4bdf311711ad179421ee12b83 by Ned Deily in branch '3.7':
bpo-32726: macOS 10.6+ installer now builds Tcl/TK 8.6 (GH-6308)
https://github.com/python/cpython/commit/7a6f59e123db1ff4bdf311711ad179421ee12b83
msg314645 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-03-29 12:47
New changeset b9e7fe38a07a16942cb65cb922c234c95e2823a0 by Ned Deily in branch 'master':
bpo-32726: macOS 10.6+ installer now builds Tcl/TK 8.6 (GH-6307)
https://github.com/python/cpython/commit/b9e7fe38a07a16942cb65cb922c234c95e2823a0
msg315291 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-04-14 14:37
New changeset ee8e4b61d6181f5bfadf6ee3d229f0ebda8a6ae9 by Ned Deily in branch '2.7':
[2.7] Backport macOS universal build and installer fixes from 3.6. (GH-6469)
https://github.com/python/cpython/commit/ee8e4b61d6181f5bfadf6ee3d229f0ebda8a6ae9
msg315338 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-04-15 20:13
I've now backported the changes for 3.6.5 to 2.7.15. along with some long
overdue changes made previously in 3.x.  Besides the support for a 10.9+
64-bit-only installer variant (with built-in Tcl/Tk 8.6.x) and other
changes noted above, ee8e4b61d6181f5bfadf6ee3d229f0ebda8a6ae9 also includes
fixes for the following as there were cross-dependencies and it wasn't
worth the effort to try to separate them out into independent commits:

- bpo-24414: Default macOS deployment target is now set by configure to
  the build system's OS version (as is done by Python 3), not 10.4;
  override with, for example, ``./configure MACOSX_DEPLOYMENT_TARGET=10.4``.

- bpo-19019: All 2.7 macOS installer variants now supply their own version
  of OpenSSL 1.0.2; the Apple-supplied SSL libraries and root
  certificates are no longer used.  The Installer Certificate command
  in /Applications/Python 2.7 may be used to download and install a
  default set of root certificates from the third-party certifi package.

I'm satisfied that 3.6.x and 2.7.x are now in sync enough and up-to-date
enough with regards to macOS universal build and installer support that
we can close these and related issues and move on.
History
Date User Action Args
2022-04-11 14:58:57adminsetgithub: 76907
2018-04-15 20:13:44ned.deilysetstatus: open -> closed

assignee: ned.deily
title: macOS installer and framework enhancements and changes for 3.7.0 and 3.6.5 -> macOS installer and framework enhancements and changes for 3.7.0, 3.6.5, and 2.7.15
resolution: fixed
versions: + Python 2.7
messages: + msg315338
stage: patch review -> resolved
2018-04-14 14:37:34ned.deilysetmessages: + msg315291
2018-04-14 14:25:13ned.deilysetpull_requests: + pull_request6164
2018-03-29 12:47:35ned.deilysetmessages: + msg314645
2018-03-29 11:41:13ned.deilysetmessages: + msg314643
2018-03-29 11:38:58ned.deilysetpull_requests: + pull_request6026
2018-03-29 11:36:27ned.deilysetpull_requests: + pull_request6025
2018-03-28 08:40:35ned.deilysetmessages: + msg314572
2018-03-28 08:16:32ned.deilysetmessages: + msg314571
2018-03-28 07:47:00miss-islingtonsetpull_requests: + pull_request6008
2018-03-28 07:46:13miss-islingtonsetpull_requests: + pull_request6007
2018-03-28 07:44:50ned.deilysetmessages: + msg314568
2018-03-28 07:28:10ned.deilysetstage: backport needed -> patch review
pull_requests: + pull_request6006
2018-03-14 05:12:56ned.deilysettitle: macOS installer and framework enhancements and changes for 3.7.0 -> macOS installer and framework enhancements and changes for 3.7.0 and 3.6.5
stage: patch review -> backport needed
messages: + msg313802
versions: + Python 3.6
2018-03-14 03:40:28ned.deilysetmessages: + msg313801
2018-01-31 23:33:40ned.deilysetmessages: + msg311390
2018-01-31 23:33:09ned.deilysetmessages: + msg311386
2018-01-30 12:42:19ned.deilysetmessages: + msg311270
2018-01-30 12:22:01ned.deilysettitle: 3.7.0 macOS installer and framework enhancements and changes -> macOS installer and framework enhancements and changes for 3.7.0
2018-01-30 12:19:31ned.deilysetkeywords: + patch
stage: patch review
pull_requests: + pull_request5280
2018-01-30 11:58:51ned.deilycreate