From 5e8103c877a0e9f0cbfcc0fa2bcce669f43abbe8 Mon Sep 17 00:00:00 2001 From: Michael Sarahan Date: Sat, 3 Oct 2026 16:58:23 -0500 Subject: [PATCH 1/4] [3.12] Update Python to 3.12.15 Bring the upstream security release into the matching conda-forge series. Verify the source checksum, reset the base build number, and refresh Windows dependency patches so they apply to the updated source. --- recipe/meta.yaml | 6 +++--- recipe/patches/0018-Unvendor-expat.patch | 26 ++++++++++++++++-------- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index a0577819f..d439c2eba 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,10 +1,10 @@ -{% set version = "3.12.14" %} +{% set version = "3.12.15" %} {% set dev = "" %} {% set dev_ = "" %} {% set ver2 = '.'.join(version.split('.')[0:2]) %} {% set ver2nd = ''.join(version.split('.')[0:2]) %} {% set ver3nd = ''.join(version.split('.')[0:3]) %} -{% set build_number = 3 %} +{% set build_number = 0 %} # this makes the linter happy {% set channel_targets = channel_targets or 'conda-forge main' %} @@ -45,7 +45,7 @@ package: source: - url: https://www.python.org/ftp/python/{{ version }}/Python-{{ version }}{{ dev }}.tar.xz # sha256 from: https://www.python.org/downloads/release/python-{{ ver3nd }}{{ dev }}/ - sha256: 5c8462af5790baf43a321a1559dbe0db06d1be4300fb85fb53c40060668e548a + sha256: c2c4321961fab0fb999d66e0cecf521c2ab3994c7992873ea99e306c1094fd5a patches: - patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch - patches/0002-Win32-Do-not-download-externals.patch diff --git a/recipe/patches/0018-Unvendor-expat.patch b/recipe/patches/0018-Unvendor-expat.patch index 1b36c0067..f0fa6a9d0 100644 --- a/recipe/patches/0018-Unvendor-expat.patch +++ b/recipe/patches/0018-Unvendor-expat.patch @@ -4,17 +4,17 @@ Date: Wed, 29 Mar 2023 23:07:10 -0500 Subject: [PATCH 18/23] Unvendor expat --- - PCbuild/_elementtree.vcxproj | 26 ++---------- - PCbuild/_elementtree.vcxproj.filters | 59 ---------------------------- - PCbuild/pyexpat.vcxproj | 14 ++----- - PCbuild/pyexpat.vcxproj.filters | 23 ----------- - 4 files changed, 8 insertions(+), 114 deletions(-) + PCbuild/_elementtree.vcxproj | 27 ++---------- + PCbuild/_elementtree.vcxproj.filters | 62 ---------------------------- + PCbuild/pyexpat.vcxproj | 15 ++----- + PCbuild/pyexpat.vcxproj.filters | 26 ----------- + 4 files changed, 8 insertions(+), 122 deletions(-) diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj index 964c95c9f7e..de476a6adde 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj -@@ -93,37 +93,19 @@ +@@ -93,38 +93,19 @@ @@ -37,6 +37,7 @@ index 964c95c9f7e..de476a6adde 100644 - - - +- - - - @@ -60,7 +61,7 @@ diff --git a/PCbuild/_elementtree.vcxproj.filters b/PCbuild/_elementtree.vcxproj index f6b55d8ff82..88a13faa683 100644 --- a/PCbuild/_elementtree.vcxproj.filters +++ b/PCbuild/_elementtree.vcxproj.filters -@@ -17,69 +17,10 @@ +@@ -17,72 +17,10 @@ {f99990ba-cd06-40cc-8f28-d2d424ec13be} @@ -83,6 +84,9 @@ index f6b55d8ff82..88a13faa683 100644 - - Header Files\expat - +- +- Header Files\expat +- - - Header Files\expat - @@ -134,7 +138,7 @@ diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj index d159933293a..e253b39c866 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj -@@ -90,25 +90,19 @@ +@@ -90,26 +90,19 @@ @@ -152,6 +156,7 @@ index d159933293a..e253b39c866 100644 - - +- - - - @@ -168,7 +173,7 @@ diff --git a/PCbuild/pyexpat.vcxproj.filters b/PCbuild/pyexpat.vcxproj.filters index 230531033fc..b8280b4049c 100644 --- a/PCbuild/pyexpat.vcxproj.filters +++ b/PCbuild/pyexpat.vcxproj.filters -@@ -11,33 +11,10 @@ +@@ -11,36 +11,10 @@ {f1dbbdb5-41e5-4a88-bf8e-13da010c0ce4} @@ -176,6 +181,9 @@ index 230531033fc..b8280b4049c 100644 - - Header Files - +- +- Header Files +- - - Header Files - From dea2654f3abd6a09e4e9a00ea27e0e6efdd7d49a Mon Sep 17 00:00:00 2001 From: Michael Sarahan Date: Mon, 5 Oct 2026 13:10:38 -0500 Subject: [PATCH 2/4] Regenerate patches and document the reviewed refresh workflow --- AGENTS.md | 16 ++++ ...2-Change-FD_SETSIZE-from-512-to-2048.patch | 4 +- ...0002-Win32-Do-not-download-externals.patch | 4 +- ...-so-that-it-looks-in-sys.prefix-lib-.patch | 6 +- ...-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch | 6 +- recipe/patches/0005-Unvendor-openssl.patch | 12 +-- recipe/patches/0006-Unvendor-sqlite3.patch | 8 +- ...dd-CondaEcosystemModifyDllSearchPath.patch | 4 +- recipe/patches/0008-Doing-d1trimfile.patch | 86 +++++++++---------- .../patches/0009-cross-compile-darwin.patch | 8 +- .../patches/0010-Fix-TZPATH-on-windows.patch | 4 +- ...ch-work-with-SYSTEM_VERSION_COMPAT-1.patch | 4 +- recipe/patches/0012-Unvendor-bzip2.patch | 6 +- recipe/patches/0013-Unvendor-libffi.patch | 4 +- recipe/patches/0014-Unvendor-tcltk.patch | 6 +- recipe/patches/0015-unvendor-xz.patch | 4 +- recipe/patches/0016-unvendor-zlib.patch | 6 +- ...-not-pass-g-to-GCC-when-not-Py_DEBUG.patch | 6 +- recipe/patches/0018-Unvendor-expat.patch | 12 +-- .../patches/0019-Remove-unused-readelf.patch | 4 +- ...t-checksharedmods-if-cross-compiling.patch | 8 +- .../0021-Override-configure-LIBFFI.patch | 4 +- ...cursesw-panelw-on-macOS-if-available.patch | 6 +- ...d_t-as-it-might-conflict-with-the-ac.patch | 12 +-- recipe/patches/README.md | 63 ++++++++++---- 25 files changed, 175 insertions(+), 128 deletions(-) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 000000000..01329dd98 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,16 @@ +# Agent guidance + +## Updating Python and its patches + +Before preparing a Python version bump or editing `recipe/patches/*.patch`, read +[the patch regeneration instructions](recipe/patches/README.md) and +[`make-mixed-crlf-patch.py`](recipe/patches/make-mixed-crlf-patch.py) on the target +version branch. If either is absent, consult the corresponding file on upstream +`main`. The repository's patch instructions are authoritative. + +Follow the README's complete regeneration and validation workflow before +committing or publishing patch changes. Keep that workflow in the README rather +than duplicating it here. + +Run the applicable recipe and pre-commit checks, and report any checks that could +not be completed. diff --git a/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch b/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch index 3ea2d3d2e..316a6bf35 100644 --- a/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch +++ b/recipe/patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch @@ -1,4 +1,4 @@ -From cac3448407a8edcc3514731958e2a603fa40340c Mon Sep 17 00:00:00 2001 +From 7ec1d82ac3eb636b2e91b1eea3a3191a71844102 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:53:55 +0100 Subject: [PATCH 01/23] Win32: Change FD_SETSIZE from 512 to 2048 @@ -9,7 +9,7 @@ https://github.com/ContinuumIO/anaconda-issues/issues/1241 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/selectmodule.c b/Modules/selectmodule.c -index 50788e5344c..43df5ecba84 100644 +index 50788e5344..43df5ecba8 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -46,7 +46,7 @@ diff --git a/recipe/patches/0002-Win32-Do-not-download-externals.patch b/recipe/patches/0002-Win32-Do-not-download-externals.patch index eac172db0..9be1b2d7e 100644 --- a/recipe/patches/0002-Win32-Do-not-download-externals.patch +++ b/recipe/patches/0002-Win32-Do-not-download-externals.patch @@ -1,4 +1,4 @@ -From 68d58fb4616eceaccd14bb0a912df825d7b44226 Mon Sep 17 00:00:00 2001 +From 8455a676201f1c50c521ba692e752d3aa4a19241 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Thu, 7 Sep 2017 11:35:47 +0100 Subject: [PATCH 02/23] Win32: Do not download externals @@ -8,7 +8,7 @@ Subject: [PATCH 02/23] Win32: Do not download externals 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PCbuild/build.bat b/PCbuild/build.bat -index d333ceabd2e..11e3d16a4fd 100644 +index d333ceabd2..11e3d16a4f 100644 --- a/PCbuild/build.bat +++ b/PCbuild/build.bat @@ -97,7 +97,7 @@ if "%IncludeCTypes%"=="" set IncludeCTypes=true diff --git a/recipe/patches/0003-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch b/recipe/patches/0003-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch index 05d399206..cdcd5e541 100644 --- a/recipe/patches/0003-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch +++ b/recipe/patches/0003-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch @@ -1,4 +1,4 @@ -From f5e4eb7db8e8714e5c6b825cd4414f87a54a0b11 Mon Sep 17 00:00:00 2001 +From 733ecb306699fec483839f396cbfcf61aa8d5dc0 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 5 Dec 2017 22:47:59 +0000 Subject: [PATCH 03/23] Fix find_library so that it looks in sys.prefix/lib @@ -10,7 +10,7 @@ Subject: [PATCH 03/23] Fix find_library so that it looks in sys.prefix/lib 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/Lib/ctypes/macholib/dyld.py b/Lib/ctypes/macholib/dyld.py -index 583c47daff3..ab9b01c87e2 100644 +index 583c47daff..ab9b01c87e 100644 --- a/Lib/ctypes/macholib/dyld.py +++ b/Lib/ctypes/macholib/dyld.py @@ -93,6 +93,10 @@ def dyld_executable_path_search(name, executable_path=None): @@ -25,7 +25,7 @@ index 583c47daff3..ab9b01c87e2 100644 yield os.path.join(executable_path, name[len('@executable_path/'):]) diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py -index c550883e7c7..78b0b014f09 100644 +index c550883e7c..78b0b014f0 100644 --- a/Lib/ctypes/util.py +++ b/Lib/ctypes/util.py @@ -70,7 +70,8 @@ def find_library(name): diff --git a/recipe/patches/0004-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch b/recipe/patches/0004-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch index 0da33cc85..e773720e4 100644 --- a/recipe/patches/0004-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch +++ b/recipe/patches/0004-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch @@ -1,4 +1,4 @@ -From 316a01dc73fe01c033bb1a2a47b3d2e28bff305f Mon Sep 17 00:00:00 2001 +From 206cb9fcec3b9f55efc7626b2d2759cc92242e4b Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Sat, 27 Oct 2018 18:48:30 +0100 Subject: [PATCH 04/23] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS @@ -11,7 +11,7 @@ Co-authored-by: Isuru Fernando 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Modules/getpath.c b/Modules/getpath.c -index 0a310000751..b0efef2f539 100644 +index 0a31000075..b0efef2f53 100644 --- a/Modules/getpath.c +++ b/Modules/getpath.c @@ -899,6 +899,7 @@ _PyConfig_InitPathConfig(PyConfig *config, int compute_path_config) @@ -23,7 +23,7 @@ index 0a310000751..b0efef2f539 100644 !progname_to_dict(dict, "real_executable") || !library_to_dict(dict, "library") || diff --git a/Modules/getpath.py b/Modules/getpath.py -index 29a6b300189..75441c36263 100644 +index 29a6b30018..75441c3626 100644 --- a/Modules/getpath.py +++ b/Modules/getpath.py @@ -51,6 +51,7 @@ diff --git a/recipe/patches/0005-Unvendor-openssl.patch b/recipe/patches/0005-Unvendor-openssl.patch index 44b704b68..be0d4ea9e 100644 --- a/recipe/patches/0005-Unvendor-openssl.patch +++ b/recipe/patches/0005-Unvendor-openssl.patch @@ -1,4 +1,4 @@ -From 5918e2a035d60cfaf986ee2c90173f8af73894bc Mon Sep 17 00:00:00 2001 +From 7c5c2560b1825c3837fd80f638886c514b55578a Mon Sep 17 00:00:00 2001 From: Nehal J Wani Date: Sat, 24 Nov 2018 20:38:02 -0600 Subject: [PATCH 05/23] Unvendor openssl @@ -13,7 +13,7 @@ Co-authored-by: Isuru Fernando 5 files changed, 9 insertions(+), 54 deletions(-) diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props -index 5fd708b211e..044cefd95ea 100644 +index 5fd708b211..044cefd95e 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props @@ -2,10 +2,10 @@ @@ -45,7 +45,7 @@ index 5fd708b211e..044cefd95ea 100644 - diff --git a/PCbuild/openssl.vcxproj b/PCbuild/openssl.vcxproj -index 7ca750dda8f..17eee400ebb 100644 +index 7ca750dda8..17eee400eb 100644 --- a/PCbuild/openssl.vcxproj +++ b/PCbuild/openssl.vcxproj @@ -60,40 +60,8 @@ @@ -90,7 +90,7 @@ index 7ca750dda8f..17eee400ebb 100644 diff --git a/PCbuild/python.props b/PCbuild/python.props -index 3fba8e09acd..cf0913f3310 100644 +index 3fba8e09ac..cf0913f331 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -61,6 +61,7 @@ @@ -120,7 +120,7 @@ index 3fba8e09acd..cf0913f3310 100644 diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index 846c87fd1ac..8021002c165 100644 +index 846c87fd1a..8021002c16 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -107,6 +107,9 @@ @@ -134,7 +134,7 @@ index 846c87fd1ac..8021002c165 100644 diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj -index f485352f642..38a25470895 100644 +index f485352f64..38a2547089 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -99,6 +99,9 @@ diff --git a/recipe/patches/0006-Unvendor-sqlite3.patch b/recipe/patches/0006-Unvendor-sqlite3.patch index 8be1d8979..c63f3c28e 100644 --- a/recipe/patches/0006-Unvendor-sqlite3.patch +++ b/recipe/patches/0006-Unvendor-sqlite3.patch @@ -1,4 +1,4 @@ -From edf294c860d1b0a424bc0b8ba12b38409278cb7d Mon Sep 17 00:00:00 2001 +From 54773a6b1b174b3fe8ca08a8b1565bee1af818f9 Mon Sep 17 00:00:00 2001 From: Nehal J Wani Date: Tue, 5 Oct 2021 12:42:06 -0700 Subject: [PATCH 06/23] Unvendor sqlite3 @@ -10,7 +10,7 @@ Subject: [PATCH 06/23] Unvendor sqlite3 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 57c7413671e..4735477f00c 100644 +index 57c7413671..4735477f00 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -93,9 +93,12 @@ @@ -43,7 +43,7 @@ index 57c7413671e..4735477f00c 100644 \ No newline at end of file + diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln -index bdddec60daa..ab43b610a97 100644 +index bdddec60da..ab43b610a9 100644 --- a/PCbuild/pcbuild.sln +++ b/PCbuild/pcbuild.sln @@ -99,8 +99,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj" @@ -56,7 +56,7 @@ index bdddec60daa..ab43b610a97 100644 EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj -index c502d51833b..c1ff0c9a084 100644 +index c502d51833..c1ff0c9a08 100644 --- a/PCbuild/sqlite3.vcxproj +++ b/PCbuild/sqlite3.vcxproj @@ -88,12 +88,12 @@ diff --git a/recipe/patches/0007-Add-CondaEcosystemModifyDllSearchPath.patch b/recipe/patches/0007-Add-CondaEcosystemModifyDllSearchPath.patch index 24af99ba7..e18cc1c3e 100644 --- a/recipe/patches/0007-Add-CondaEcosystemModifyDllSearchPath.patch +++ b/recipe/patches/0007-Add-CondaEcosystemModifyDllSearchPath.patch @@ -1,4 +1,4 @@ -From b6cee93474e3b0d46cd55a0960a7e4a64c6c2250 Mon Sep 17 00:00:00 2001 +From c6ee41edd5026b57c1fca2a0084130699b95a4f3 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 24 Dec 2019 18:37:17 +0100 Subject: [PATCH 07/23] Add CondaEcosystemModifyDllSearchPath() @@ -33,7 +33,7 @@ Co-authored-by: Isuru Fernando 1 file changed, 96 insertions(+) diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c -index f5bea14b16b..a7dc3795fce 100644 +index f5bea14b16..a7dc3795fc 100644 --- a/Python/pylifecycle.c +++ b/Python/pylifecycle.c @@ -51,6 +51,10 @@ diff --git a/recipe/patches/0008-Doing-d1trimfile.patch b/recipe/patches/0008-Doing-d1trimfile.patch index 052efafee..864c51e0e 100644 --- a/recipe/patches/0008-Doing-d1trimfile.patch +++ b/recipe/patches/0008-Doing-d1trimfile.patch @@ -1,4 +1,4 @@ -From 2616e76edb845f0dd372fbbffaa778f2bb46224f Mon Sep 17 00:00:00 2001 +From f7836ad2749250a1f1eece0d67f69d10b5540d31 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 31 Dec 2019 21:47:47 +0100 Subject: [PATCH 08/23] Doing d1trimfile @@ -49,7 +49,7 @@ Subject: [PATCH 08/23] Doing d1trimfile 42 files changed, 364 insertions(+), 4 deletions(-) diff --git a/PCbuild/_asyncio.vcxproj b/PCbuild/_asyncio.vcxproj -index ed1e1bc0a42..47d322be5fd 100644 +index ed1e1bc0a4..47d322be5f 100644 --- a/PCbuild/_asyncio.vcxproj +++ b/PCbuild/_asyncio.vcxproj @@ -91,6 +91,26 @@ @@ -80,7 +80,7 @@ index ed1e1bc0a42..47d322be5fd 100644 diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj -index 3fe95fbf839..0402f7a9aaa 100644 +index 3fe95fbf83..0402f7a9aa 100644 --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -97,6 +97,10 @@ @@ -95,7 +95,7 @@ index 3fe95fbf839..0402f7a9aaa 100644 diff --git a/PCbuild/_ctypes.vcxproj b/PCbuild/_ctypes.vcxproj -index 253da31e9ce..9e85bd9723b 100644 +index 253da31e9c..9e85bd9723 100644 --- a/PCbuild/_ctypes.vcxproj +++ b/PCbuild/_ctypes.vcxproj @@ -95,6 +95,10 @@ @@ -110,7 +110,7 @@ index 253da31e9ce..9e85bd9723b 100644 /EXPORT:DllGetClassObject,PRIVATE /EXPORT:DllCanUnloadNow,PRIVATE %(AdditionalOptions) diff --git a/PCbuild/_ctypes_test.vcxproj b/PCbuild/_ctypes_test.vcxproj -index 8a01e743a4d..1ad658d5f91 100644 +index 8a01e743a4..1ad658d5f9 100644 --- a/PCbuild/_ctypes_test.vcxproj +++ b/PCbuild/_ctypes_test.vcxproj @@ -92,6 +92,26 @@ @@ -141,7 +141,7 @@ index 8a01e743a4d..1ad658d5f91 100644 diff --git a/PCbuild/_decimal.vcxproj b/PCbuild/_decimal.vcxproj -index 0916f1a2d37..17a4cbfcd7c 100644 +index 0916f1a2d3..17a4cbfcd7 100644 --- a/PCbuild/_decimal.vcxproj +++ b/PCbuild/_decimal.vcxproj @@ -99,6 +99,10 @@ @@ -156,7 +156,7 @@ index 0916f1a2d37..17a4cbfcd7c 100644 diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj -index e7b7a6d2064..964c95c9f7e 100644 +index 22f204df68..e62b9d3449 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -94,7 +94,11 @@ @@ -173,7 +173,7 @@ index e7b7a6d2064..964c95c9f7e 100644 diff --git a/PCbuild/_freeze_module.vcxproj b/PCbuild/_freeze_module.vcxproj -index 3df0a072045..26982e0ceb8 100644 +index 3df0a07204..26982e0ceb 100644 --- a/PCbuild/_freeze_module.vcxproj +++ b/PCbuild/_freeze_module.vcxproj @@ -91,6 +91,10 @@ @@ -188,7 +188,7 @@ index 3df0a072045..26982e0ceb8 100644 Console diff --git a/PCbuild/_hashlib.vcxproj b/PCbuild/_hashlib.vcxproj -index 6dad8183c57..6d3d37fdf95 100644 +index 6dad8183c5..6d3d37fdf9 100644 --- a/PCbuild/_hashlib.vcxproj +++ b/PCbuild/_hashlib.vcxproj @@ -96,6 +96,18 @@ @@ -211,7 +211,7 @@ index 6dad8183c57..6d3d37fdf95 100644 diff --git a/PCbuild/_lzma.vcxproj b/PCbuild/_lzma.vcxproj -index fe076a6fc57..0565132363e 100644 +index fe076a6fc5..0565132363 100644 --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -95,6 +95,10 @@ @@ -226,7 +226,7 @@ index fe076a6fc57..0565132363e 100644 $(OutDir)liblzma$(PyDebugExt).lib;%(AdditionalDependencies) diff --git a/PCbuild/_msi.vcxproj b/PCbuild/_msi.vcxproj -index 720eb2931be..247ab0e9155 100644 +index 720eb2931b..247ab0e915 100644 --- a/PCbuild/_msi.vcxproj +++ b/PCbuild/_msi.vcxproj @@ -96,6 +96,18 @@ @@ -249,7 +249,7 @@ index 720eb2931be..247ab0e9155 100644 diff --git a/PCbuild/_multiprocessing.vcxproj b/PCbuild/_multiprocessing.vcxproj -index 77b6bfc8e1e..3c2b6515496 100644 +index 77b6bfc8e1..3c2b651549 100644 --- a/PCbuild/_multiprocessing.vcxproj +++ b/PCbuild/_multiprocessing.vcxproj @@ -95,6 +95,18 @@ @@ -272,7 +272,7 @@ index 77b6bfc8e1e..3c2b6515496 100644 diff --git a/PCbuild/_overlapped.vcxproj b/PCbuild/_overlapped.vcxproj -index 9e60d3b5db3..95b57290f83 100644 +index 9e60d3b5db..95b57290f8 100644 --- a/PCbuild/_overlapped.vcxproj +++ b/PCbuild/_overlapped.vcxproj @@ -95,6 +95,18 @@ @@ -295,7 +295,7 @@ index 9e60d3b5db3..95b57290f83 100644 diff --git a/PCbuild/_queue.vcxproj b/PCbuild/_queue.vcxproj -index 8065b235851..e46ab5a83b2 100644 +index 8065b23585..e46ab5a83b 100644 --- a/PCbuild/_queue.vcxproj +++ b/PCbuild/_queue.vcxproj @@ -91,6 +91,26 @@ @@ -326,7 +326,7 @@ index 8065b235851..e46ab5a83b2 100644 diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj -index 78fa4d6729a..be19cf1dca2 100644 +index 78fa4d6729..be19cf1dca 100644 --- a/PCbuild/_socket.vcxproj +++ b/PCbuild/_socket.vcxproj @@ -95,6 +95,18 @@ @@ -349,7 +349,7 @@ index 78fa4d6729a..be19cf1dca2 100644 diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 4735477f00c..c7c377e2179 100644 +index 4735477f00..c7c377e217 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -95,6 +95,10 @@ @@ -364,7 +364,7 @@ index 4735477f00c..c7c377e2179 100644 $(condaDir)\lib\sqlite3.lib;%(AdditionalDependencies) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj -index e2fac911e1e..5c1ae2fce27 100644 +index e2fac911e1..5c1ae2fce2 100644 --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -96,6 +96,18 @@ @@ -387,7 +387,7 @@ index e2fac911e1e..5c1ae2fce27 100644 diff --git a/PCbuild/_testbuffer.vcxproj b/PCbuild/_testbuffer.vcxproj -index 917d7ae50fe..8c7e141eeaa 100644 +index 917d7ae50f..8c7e141eea 100644 --- a/PCbuild/_testbuffer.vcxproj +++ b/PCbuild/_testbuffer.vcxproj @@ -92,6 +92,26 @@ @@ -418,7 +418,7 @@ index 917d7ae50fe..8c7e141eeaa 100644 diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj -index 06be7d291b1..8cf13cc51cd 100644 +index 06be7d291b..8cf13cc51c 100644 --- a/PCbuild/_testcapi.vcxproj +++ b/PCbuild/_testcapi.vcxproj @@ -92,6 +92,26 @@ @@ -449,7 +449,7 @@ index 06be7d291b1..8cf13cc51cd 100644 diff --git a/PCbuild/_testconsole.vcxproj b/PCbuild/_testconsole.vcxproj -index 5d7e14eff10..695dcb3b917 100644 +index 5d7e14eff1..695dcb3b91 100644 --- a/PCbuild/_testconsole.vcxproj +++ b/PCbuild/_testconsole.vcxproj @@ -92,6 +92,10 @@ @@ -464,7 +464,7 @@ index 5d7e14eff10..695dcb3b917 100644 Console diff --git a/PCbuild/_testembed.vcxproj b/PCbuild/_testembed.vcxproj -index a7ea8787e0c..eab72171e3b 100644 +index a7ea8787e0..eab72171e3 100644 --- a/PCbuild/_testembed.vcxproj +++ b/PCbuild/_testembed.vcxproj @@ -89,6 +89,10 @@ @@ -479,7 +479,7 @@ index a7ea8787e0c..eab72171e3b 100644 Console diff --git a/PCbuild/_testimportmultiple.vcxproj b/PCbuild/_testimportmultiple.vcxproj -index 6d80d5779f2..951bf40e7cd 100644 +index 6d80d5779f..951bf40e7c 100644 --- a/PCbuild/_testimportmultiple.vcxproj +++ b/PCbuild/_testimportmultiple.vcxproj @@ -92,6 +92,26 @@ @@ -510,7 +510,7 @@ index 6d80d5779f2..951bf40e7cd 100644 diff --git a/PCbuild/_testinternalcapi.vcxproj b/PCbuild/_testinternalcapi.vcxproj -index 6c5b12cd40e..d25c7749138 100644 +index 6c5b12cd40..d25c774913 100644 --- a/PCbuild/_testinternalcapi.vcxproj +++ b/PCbuild/_testinternalcapi.vcxproj @@ -92,6 +92,26 @@ @@ -541,7 +541,7 @@ index 6c5b12cd40e..d25c7749138 100644 diff --git a/PCbuild/_testmultiphase.vcxproj b/PCbuild/_testmultiphase.vcxproj -index 430eb528cc3..7a268d227bc 100644 +index 430eb528cc..7a268d227b 100644 --- a/PCbuild/_testmultiphase.vcxproj +++ b/PCbuild/_testmultiphase.vcxproj @@ -92,6 +92,10 @@ @@ -556,7 +556,7 @@ index 430eb528cc3..7a268d227bc 100644 Console diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj -index 30cedcbb43d..0484a5c81f6 100644 +index 30cedcbb43..0484a5c81f 100644 --- a/PCbuild/_tkinter.vcxproj +++ b/PCbuild/_tkinter.vcxproj @@ -96,6 +96,10 @@ @@ -571,7 +571,7 @@ index 30cedcbb43d..0484a5c81f6 100644 $(tcltkLib);%(AdditionalDependencies) diff --git a/PCbuild/liblzma.vcxproj b/PCbuild/liblzma.vcxproj -index 4dd42ab98a9..7c2dbc7e701 100644 +index 4dd42ab98a..7c2dbc7e70 100644 --- a/PCbuild/liblzma.vcxproj +++ b/PCbuild/liblzma.vcxproj @@ -94,6 +94,10 @@ @@ -586,7 +586,7 @@ index 4dd42ab98a9..7c2dbc7e701 100644 diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj -index 97eb7338dca..d159933293a 100644 +index fe72705e83..68ac83bc8a 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -92,6 +92,10 @@ @@ -601,7 +601,7 @@ index 97eb7338dca..d159933293a 100644 diff --git a/PCbuild/pylauncher.vcxproj b/PCbuild/pylauncher.vcxproj -index 35f2f7e505b..02d7961c5d8 100644 +index 35f2f7e505..02d7961c5d 100644 --- a/PCbuild/pylauncher.vcxproj +++ b/PCbuild/pylauncher.vcxproj @@ -93,6 +93,10 @@ @@ -616,7 +616,7 @@ index 35f2f7e505b..02d7961c5d8 100644 shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/pyshellext.vcxproj b/PCbuild/pyshellext.vcxproj -index ea432d6bc9a..13bc6921030 100644 +index ea432d6bc9..13bc692103 100644 --- a/PCbuild/pyshellext.vcxproj +++ b/PCbuild/pyshellext.vcxproj @@ -92,6 +92,10 @@ @@ -631,7 +631,7 @@ index ea432d6bc9a..13bc6921030 100644 version.lib;shlwapi.lib;%(AdditionalDependencies) diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index 8021002c165..9eb3f369406 100644 +index 8021002c16..9eb3f36940 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -91,6 +91,10 @@ @@ -646,7 +646,7 @@ index 8021002c165..9eb3f369406 100644 Console diff --git a/PCbuild/python3dll.vcxproj b/PCbuild/python3dll.vcxproj -index ec22e6fc76e..80dff0a3d97 100644 +index ec22e6fc76..80dff0a3d9 100644 --- a/PCbuild/python3dll.vcxproj +++ b/PCbuild/python3dll.vcxproj @@ -93,6 +93,10 @@ @@ -661,7 +661,7 @@ index ec22e6fc76e..80dff0a3d97 100644 true diff --git a/PCbuild/python_uwp.vcxproj b/PCbuild/python_uwp.vcxproj -index fb27e9e7122..f8dc841ef1b 100644 +index fb27e9e712..f8dc841ef1 100644 --- a/PCbuild/python_uwp.vcxproj +++ b/PCbuild/python_uwp.vcxproj @@ -90,7 +90,7 @@ @@ -674,7 +674,7 @@ index fb27e9e7122..f8dc841ef1b 100644 windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index b265264dc16..9390c4d7d76 100644 +index b265264dc1..9390c4d7d7 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -99,7 +99,7 @@ @@ -687,7 +687,7 @@ index b265264dc16..9390c4d7d76 100644 $(zlibDir);%(AdditionalIncludeDirectories) _USRDLL;Py_BUILD_CORE;Py_BUILD_CORE_BUILTIN;Py_ENABLE_SHARED;MS_DLL_ID="$(SysWinVer)";%(PreprocessorDefinitions) diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj -index 38a25470895..0b05df346e9 100644 +index 38a2547089..0b05df346e 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -93,6 +93,18 @@ @@ -710,7 +710,7 @@ index 38a25470895..0b05df346e9 100644 diff --git a/PCbuild/pythonw_uwp.vcxproj b/PCbuild/pythonw_uwp.vcxproj -index e21e46a1b72..ff7dc6635df 100644 +index e21e46a1b7..ff7dc6635d 100644 --- a/PCbuild/pythonw_uwp.vcxproj +++ b/PCbuild/pythonw_uwp.vcxproj @@ -90,7 +90,7 @@ @@ -723,7 +723,7 @@ index e21e46a1b72..ff7dc6635df 100644 windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pywlauncher.vcxproj b/PCbuild/pywlauncher.vcxproj -index e50b69aefe2..3aa738bb7f3 100644 +index e50b69aefe..3aa738bb7f 100644 --- a/PCbuild/pywlauncher.vcxproj +++ b/PCbuild/pywlauncher.vcxproj @@ -93,6 +93,10 @@ @@ -738,7 +738,7 @@ index e50b69aefe2..3aa738bb7f3 100644 shell32.lib;pathcch.lib;%(AdditionalDependencies) diff --git a/PCbuild/select.vcxproj b/PCbuild/select.vcxproj -index 750a7139499..1da66eaddcb 100644 +index 750a713949..1da66eaddc 100644 --- a/PCbuild/select.vcxproj +++ b/PCbuild/select.vcxproj @@ -94,6 +94,18 @@ @@ -761,7 +761,7 @@ index 750a7139499..1da66eaddcb 100644 diff --git a/PCbuild/unicodedata.vcxproj b/PCbuild/unicodedata.vcxproj -index addef753359..1a13f363e26 100644 +index addef75335..1a13f363e2 100644 --- a/PCbuild/unicodedata.vcxproj +++ b/PCbuild/unicodedata.vcxproj @@ -91,6 +91,26 @@ @@ -792,7 +792,7 @@ index addef753359..1a13f363e26 100644 diff --git a/PCbuild/venvlauncher.vcxproj b/PCbuild/venvlauncher.vcxproj -index 123e84ec4e3..6272f9f69db 100644 +index 123e84ec4e..6272f9f69d 100644 --- a/PCbuild/venvlauncher.vcxproj +++ b/PCbuild/venvlauncher.vcxproj @@ -93,6 +93,10 @@ @@ -807,7 +807,7 @@ index 123e84ec4e3..6272f9f69db 100644 PY_ICON;%(PreprocessorDefinitions) diff --git a/PCbuild/venvwlauncher.vcxproj b/PCbuild/venvwlauncher.vcxproj -index b8504d5d08e..60d63087134 100644 +index b8504d5d08..60d6308713 100644 --- a/PCbuild/venvwlauncher.vcxproj +++ b/PCbuild/venvwlauncher.vcxproj @@ -93,6 +93,10 @@ @@ -822,7 +822,7 @@ index b8504d5d08e..60d63087134 100644 PYW_ICON;%(PreprocessorDefinitions) diff --git a/PCbuild/winsound.vcxproj b/PCbuild/winsound.vcxproj -index 32cedc9b444..c9abee1d691 100644 +index 32cedc9b44..c9abee1d69 100644 --- a/PCbuild/winsound.vcxproj +++ b/PCbuild/winsound.vcxproj @@ -96,6 +96,18 @@ @@ -845,7 +845,7 @@ index 32cedc9b444..c9abee1d691 100644 diff --git a/PCbuild/xxlimited.vcxproj b/PCbuild/xxlimited.vcxproj -index 1c776fb0da3..36dec23c203 100644 +index 1c776fb0da..36dec23c20 100644 --- a/PCbuild/xxlimited.vcxproj +++ b/PCbuild/xxlimited.vcxproj @@ -93,6 +93,12 @@ @@ -862,7 +862,7 @@ index 1c776fb0da3..36dec23c203 100644 wsock32.lib;%(AdditionalDependencies) diff --git a/PCbuild/xxlimited_35.vcxproj b/PCbuild/xxlimited_35.vcxproj -index dd830b3b6aa..fef2c5b9f47 100644 +index dd830b3b6a..fef2c5b9f4 100644 --- a/PCbuild/xxlimited_35.vcxproj +++ b/PCbuild/xxlimited_35.vcxproj @@ -93,6 +93,12 @@ diff --git a/recipe/patches/0009-cross-compile-darwin.patch b/recipe/patches/0009-cross-compile-darwin.patch index 3ee8324a3..4afbca726 100644 --- a/recipe/patches/0009-cross-compile-darwin.patch +++ b/recipe/patches/0009-cross-compile-darwin.patch @@ -1,4 +1,4 @@ -From 7dc5c9baed91f4bd3d75f90b0fb1cf7d18a85111 Mon Sep 17 00:00:00 2001 +From 1f2c5f36d9ff30402869b139a593e78215693f24 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Fri, 2 Oct 2020 00:03:12 +0200 Subject: [PATCH 09/23] cross compile darwin @@ -11,7 +11,7 @@ By Isuru Fernando. 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/Lib/platform.py b/Lib/platform.py -index b86e6834911..7e5977c0158 100755 +index b86e683491..7e5977c015 100755 --- a/Lib/platform.py +++ b/Lib/platform.py @@ -460,7 +460,12 @@ def win32_ver(release='', version='', csd='', ptype=''): @@ -29,7 +29,7 @@ index b86e6834911..7e5977c0158 100755 try: import plistlib diff --git a/configure b/configure -index 89edc42f45c..c82e082b4a0 100755 +index 20a5890714..2f151de21b 100755 --- a/configure +++ b/configure @@ -4271,6 +4271,9 @@ then @@ -53,7 +53,7 @@ index 89edc42f45c..c82e082b4a0 100755 _host_cpu= ;; diff --git a/configure.ac b/configure.ac -index 1a02d19f1b2..24d7c29aabf 100644 +index 4cbd0ae16a..a915fc1239 100644 --- a/configure.ac +++ b/configure.ac @@ -547,6 +547,9 @@ then diff --git a/recipe/patches/0010-Fix-TZPATH-on-windows.patch b/recipe/patches/0010-Fix-TZPATH-on-windows.patch index f9998da48..aea7ceb38 100644 --- a/recipe/patches/0010-Fix-TZPATH-on-windows.patch +++ b/recipe/patches/0010-Fix-TZPATH-on-windows.patch @@ -1,4 +1,4 @@ -From 89dd5d347d5760a796e4a1818282f13aeb170771 Mon Sep 17 00:00:00 2001 +From 345d11ab841963603252858c0473047be4bb596a Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 7 Oct 2020 10:08:30 -0500 Subject: [PATCH 10/23] Fix TZPATH on windows @@ -8,7 +8,7 @@ Subject: [PATCH 10/23] Fix TZPATH on windows 1 file changed, 1 insertion(+) diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py -index acc8d4d1826..8406979f96d 100644 +index acc8d4d182..8406979f96 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -673,6 +673,7 @@ def _init_config_vars(): diff --git a/recipe/patches/0011-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch b/recipe/patches/0011-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch index 108c900b1..4e0038095 100644 --- a/recipe/patches/0011-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch +++ b/recipe/patches/0011-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch @@ -1,4 +1,4 @@ -From b531679e831414bf963b9cb8bbf4c91fdc086d6a Mon Sep 17 00:00:00 2001 +From c78b2e21e2db16bf48d549861b2f68882b906c70 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 25 Jan 2021 03:28:08 -0600 Subject: [PATCH 11/23] Make dyld search work with SYSTEM_VERSION_COMPAT=1 @@ -15,7 +15,7 @@ as that part is compiled with `MACOSX_DEPLOYMENT_TARGET=11.0`) 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Modules/_ctypes/callproc.c b/Modules/_ctypes/callproc.c -index f98479ee85f..672c4101f0b 100644 +index f98479ee85..672c4101f0 100644 --- a/Modules/_ctypes/callproc.c +++ b/Modules/_ctypes/callproc.c @@ -1461,7 +1461,7 @@ copy_com_pointer(PyObject *self, PyObject *args) diff --git a/recipe/patches/0012-Unvendor-bzip2.patch b/recipe/patches/0012-Unvendor-bzip2.patch index ec3c21847..820abcb4b 100644 --- a/recipe/patches/0012-Unvendor-bzip2.patch +++ b/recipe/patches/0012-Unvendor-bzip2.patch @@ -1,4 +1,4 @@ -From 975a185e9fdbed8e7b36aee67b725c092b6e9634 Mon Sep 17 00:00:00 2001 +From bca2c209f6d45bff21d58b58b2cc21b637197985 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 02:56:27 -0700 Subject: [PATCH 12/23] Unvendor bzip2 @@ -9,7 +9,7 @@ Subject: [PATCH 12/23] Unvendor bzip2 2 files changed, 6 insertions(+), 35 deletions(-) diff --git a/PCbuild/_bz2.vcxproj b/PCbuild/_bz2.vcxproj -index 0402f7a9aaa..569c7c5de93 100644 +index 0402f7a9aa..569c7c5de9 100644 --- a/PCbuild/_bz2.vcxproj +++ b/PCbuild/_bz2.vcxproj @@ -94,7 +94,7 @@ @@ -47,7 +47,7 @@ index 0402f7a9aaa..569c7c5de93 100644 diff --git a/PCbuild/_bz2.vcxproj.filters b/PCbuild/_bz2.vcxproj.filters -index 7c0b5162537..c1f960608c3 100644 +index 7c0b516253..c1f960608c 100644 --- a/PCbuild/_bz2.vcxproj.filters +++ b/PCbuild/_bz2.vcxproj.filters @@ -21,33 +21,9 @@ diff --git a/recipe/patches/0013-Unvendor-libffi.patch b/recipe/patches/0013-Unvendor-libffi.patch index fd93cb057..e5a2fb791 100644 --- a/recipe/patches/0013-Unvendor-libffi.patch +++ b/recipe/patches/0013-Unvendor-libffi.patch @@ -1,4 +1,4 @@ -From 03902b54b51e4a0d41be8574a78af99cc7a3663a Mon Sep 17 00:00:00 2001 +From 9f4328a41e20d27601d232e9ee26703c03caaccf Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 03:07:40 -0700 Subject: [PATCH 13/23] Unvendor libffi @@ -8,7 +8,7 @@ Subject: [PATCH 13/23] Unvendor libffi 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props -index 22c9550e2c0..40ddb08d2b0 100644 +index 22c9550e2c..40ddb08d2b 100644 --- a/PCbuild/libffi.props +++ b/PCbuild/libffi.props @@ -2,20 +2,11 @@ diff --git a/recipe/patches/0014-Unvendor-tcltk.patch b/recipe/patches/0014-Unvendor-tcltk.patch index 8eaa37378..6cae30e55 100644 --- a/recipe/patches/0014-Unvendor-tcltk.patch +++ b/recipe/patches/0014-Unvendor-tcltk.patch @@ -1,4 +1,4 @@ -From 47a4683326ac8cc1f0627f25d117f06e4efc731e Mon Sep 17 00:00:00 2001 +From 5f907df29849594cde807457c6a210af00074064 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Fri, 20 Aug 2021 10:23:51 -0700 Subject: [PATCH 14/23] Unvendor tcltk @@ -9,7 +9,7 @@ Subject: [PATCH 14/23] Unvendor tcltk 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj -index 0484a5c81f6..d1393c914d1 100644 +index 0484a5c81f..d1393c914d 100644 --- a/PCbuild/_tkinter.vcxproj +++ b/PCbuild/_tkinter.vcxproj @@ -126,12 +126,6 @@ @@ -26,7 +26,7 @@ index 0484a5c81f6..d1393c914d1 100644 diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props -index 6b01d5b78eb..79c13609806 100644 +index 6b01d5b78e..79c1360980 100644 --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props @@ -17,13 +17,11 @@ diff --git a/recipe/patches/0015-unvendor-xz.patch b/recipe/patches/0015-unvendor-xz.patch index c27b6c6ed..d51f4da26 100644 --- a/recipe/patches/0015-unvendor-xz.patch +++ b/recipe/patches/0015-unvendor-xz.patch @@ -1,4 +1,4 @@ -From 87c5eee8033cca90800b4798b4bbe234cc2efbc8 Mon Sep 17 00:00:00 2001 +From 2588a7bc27c028fb027d15479ffc29f1d2175e6e Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Sat, 25 Sep 2021 10:07:05 -0700 Subject: [PATCH 15/23] unvendor xz @@ -8,7 +8,7 @@ Subject: [PATCH 15/23] unvendor xz 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/PCbuild/_lzma.vcxproj b/PCbuild/_lzma.vcxproj -index 0565132363e..ee738e76c41 100644 +index 0565132363..ee738e76c4 100644 --- a/PCbuild/_lzma.vcxproj +++ b/PCbuild/_lzma.vcxproj @@ -93,15 +93,15 @@ diff --git a/recipe/patches/0016-unvendor-zlib.patch b/recipe/patches/0016-unvendor-zlib.patch index e74ed3523..94263a0cf 100644 --- a/recipe/patches/0016-unvendor-zlib.patch +++ b/recipe/patches/0016-unvendor-zlib.patch @@ -1,4 +1,4 @@ -From d3ea27406c326d72529b34401a61bfb50b437330 Mon Sep 17 00:00:00 2001 +From 1e2fd9eaa7bde1cbecb67fc78098e10be4e12076 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 29 Sep 2021 15:21:55 -0700 Subject: [PATCH 16/23] unvendor zlib @@ -9,7 +9,7 @@ Subject: [PATCH 16/23] unvendor zlib 2 files changed, 4 insertions(+), 95 deletions(-) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index 9390c4d7d76..b36c48abb36 100644 +index 9390c4d7d7..b36c48abb3 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -82,7 +82,7 @@ @@ -78,7 +78,7 @@ index 9390c4d7d76..b36c48abb36 100644 diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters -index 67a32f653de..9c064964b55 100644 +index 67a32f653d..9c064964b5 100644 --- a/PCbuild/pythoncore.vcxproj.filters +++ b/PCbuild/pythoncore.vcxproj.filters @@ -717,39 +717,6 @@ diff --git a/recipe/patches/0017-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch b/recipe/patches/0017-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch index 991c5db63..f522eaa7a 100644 --- a/recipe/patches/0017-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch +++ b/recipe/patches/0017-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch @@ -1,4 +1,4 @@ -From 50d2ecfda45d51bee6e19ae862ce8b92df2293f1 Mon Sep 17 00:00:00 2001 +From 4249f68749289a1f193a948f799f09a0a78816d4 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:45:28 +0100 Subject: [PATCH 17/23] Do not pass -g to GCC when not Py_DEBUG @@ -10,7 +10,7 @@ This bloats our exe and our modules a lot. 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/configure b/configure -index c82e082b4a0..89a608e08b3 100755 +index 2f151de21b..5c05501274 100755 --- a/configure +++ b/configure @@ -5469,9 +5469,9 @@ if test $ac_test_CFLAGS; then @@ -35,7 +35,7 @@ index c82e082b4a0..89a608e08b3 100755 ;; *) diff --git a/configure.ac b/configure.ac -index 24d7c29aabf..8ed2b866754 100644 +index a915fc1239..eb994b412c 100644 --- a/configure.ac +++ b/configure.ac @@ -2279,7 +2279,7 @@ then diff --git a/recipe/patches/0018-Unvendor-expat.patch b/recipe/patches/0018-Unvendor-expat.patch index f0fa6a9d0..64f4b7914 100644 --- a/recipe/patches/0018-Unvendor-expat.patch +++ b/recipe/patches/0018-Unvendor-expat.patch @@ -1,4 +1,4 @@ -From 334aba5522f9b5ae7dffd517c735fe6c390a6b20 Mon Sep 17 00:00:00 2001 +From 223e16a2644fb4cba1364829af830cc238e79bd3 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 29 Mar 2023 23:07:10 -0500 Subject: [PATCH 18/23] Unvendor expat @@ -7,11 +7,11 @@ Subject: [PATCH 18/23] Unvendor expat PCbuild/_elementtree.vcxproj | 27 ++---------- PCbuild/_elementtree.vcxproj.filters | 62 ---------------------------- PCbuild/pyexpat.vcxproj | 15 ++----- - PCbuild/pyexpat.vcxproj.filters | 26 ----------- + PCbuild/pyexpat.vcxproj.filters | 26 ------------ 4 files changed, 8 insertions(+), 122 deletions(-) diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj -index 964c95c9f7e..de476a6adde 100644 +index e62b9d3449..de476a6add 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -93,38 +93,19 @@ @@ -58,7 +58,7 @@ index 964c95c9f7e..de476a6adde 100644 diff --git a/PCbuild/_elementtree.vcxproj.filters b/PCbuild/_elementtree.vcxproj.filters -index f6b55d8ff82..88a13faa683 100644 +index 9e2e062af3..88a13faa68 100644 --- a/PCbuild/_elementtree.vcxproj.filters +++ b/PCbuild/_elementtree.vcxproj.filters @@ -17,72 +17,10 @@ @@ -135,7 +135,7 @@ index f6b55d8ff82..88a13faa683 100644 diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj -index d159933293a..e253b39c866 100644 +index 68ac83bc8a..e253b39c86 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -90,26 +90,19 @@ @@ -170,7 +170,7 @@ index d159933293a..e253b39c866 100644 diff --git a/PCbuild/pyexpat.vcxproj.filters b/PCbuild/pyexpat.vcxproj.filters -index 230531033fc..b8280b4049c 100644 +index e63cb9c630..b8280b4049 100644 --- a/PCbuild/pyexpat.vcxproj.filters +++ b/PCbuild/pyexpat.vcxproj.filters @@ -11,36 +11,10 @@ diff --git a/recipe/patches/0019-Remove-unused-readelf.patch b/recipe/patches/0019-Remove-unused-readelf.patch index ea59303ce..f4b4b4808 100644 --- a/recipe/patches/0019-Remove-unused-readelf.patch +++ b/recipe/patches/0019-Remove-unused-readelf.patch @@ -1,4 +1,4 @@ -From 512a7f55920c4b6ef84c597559023ead15411cd6 Mon Sep 17 00:00:00 2001 +From 9b4afc31d04690f9e702621e8d60ff6e46a429dc Mon Sep 17 00:00:00 2001 From: Charles Bousseau Date: Thu, 25 May 2023 17:56:53 -0400 Subject: [PATCH 19/23] Remove unused readelf @@ -15,7 +15,7 @@ Drop unused build dependency on ``readelf``. 1 file changed, 1 deletion(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index 823633cbc72..e4881f97fb8 100644 +index 3342296baa..c1ea919cce 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -38,7 +38,6 @@ CC= @CC@ diff --git a/recipe/patches/0020-Don-t-checksharedmods-if-cross-compiling.patch b/recipe/patches/0020-Don-t-checksharedmods-if-cross-compiling.patch index e93748794..69cfd6707 100644 --- a/recipe/patches/0020-Don-t-checksharedmods-if-cross-compiling.patch +++ b/recipe/patches/0020-Don-t-checksharedmods-if-cross-compiling.patch @@ -1,4 +1,4 @@ -From 8d0cf3c2ba9be7f33f510cf92a8e6c903a1314f7 Mon Sep 17 00:00:00 2001 +From 5ace9b7614349b5cc3973bb19ae5d703a56acda5 Mon Sep 17 00:00:00 2001 From: "Uwe L. Korn" Date: Fri, 1 Sep 2023 23:32:14 +0200 Subject: [PATCH 20/23] Don't checksharedmods if cross-compiling @@ -10,10 +10,10 @@ Subject: [PATCH 20/23] Don't checksharedmods if cross-compiling create mode 100755 if_runnable.sh diff --git a/Makefile.pre.in b/Makefile.pre.in -index e4881f97fb8..fe8f98364bb 100644 +index c1ea919cce..25b7af3c04 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -997,7 +997,7 @@ sharedmods: $(SHAREDMODS) pybuilddir.txt +@@ -998,7 +998,7 @@ sharedmods: $(SHAREDMODS) pybuilddir.txt # dependency on BUILDPYTHON ensures that the target is run last .PHONY: checksharedmods checksharedmods: sharedmods $(PYTHON_FOR_BUILD_DEPS) $(BUILDPYTHON) @@ -24,7 +24,7 @@ index e4881f97fb8..fe8f98364bb 100644 rundsymutil: sharedmods $(PYTHON_FOR_BUILD_DEPS) $(BUILDPYTHON) diff --git a/if_runnable.sh b/if_runnable.sh new file mode 100755 -index 00000000000..dcfde5b751e +index 0000000000..dcfde5b751 --- /dev/null +++ b/if_runnable.sh @@ -0,0 +1,10 @@ diff --git a/recipe/patches/0021-Override-configure-LIBFFI.patch b/recipe/patches/0021-Override-configure-LIBFFI.patch index c6e454d6c..666790a41 100644 --- a/recipe/patches/0021-Override-configure-LIBFFI.patch +++ b/recipe/patches/0021-Override-configure-LIBFFI.patch @@ -1,4 +1,4 @@ -From d5f8722f6e0ba52f77812cab70d5791d2e1fee79 Mon Sep 17 00:00:00 2001 +From 33c4b4e3a77649044647a30149851efef6c3f805 Mon Sep 17 00:00:00 2001 From: "Uwe L. Korn" Date: Tue, 5 Sep 2023 21:51:31 +0200 Subject: [PATCH 21/23] Override configure LIBFFI @@ -8,7 +8,7 @@ Subject: [PATCH 21/23] Override configure LIBFFI 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure -index 89a608e08b3..08c21a3ca0a 100755 +index 5c05501274..a5b668ffb2 100755 --- a/configure +++ b/configure @@ -14118,7 +14118,7 @@ if test "x$ac_cv_lib_ffi_ffi_call" = xyes diff --git a/recipe/patches/0022-Allow-linking-ncursesw-panelw-on-macOS-if-available.patch b/recipe/patches/0022-Allow-linking-ncursesw-panelw-on-macOS-if-available.patch index f6b3e03c9..9eeca97b9 100644 --- a/recipe/patches/0022-Allow-linking-ncursesw-panelw-on-macOS-if-available.patch +++ b/recipe/patches/0022-Allow-linking-ncursesw-panelw-on-macOS-if-available.patch @@ -1,4 +1,4 @@ -From 5ad325a0013e0c1606bfe7aeb1ae37198725a721 Mon Sep 17 00:00:00 2001 +From 4872054d703cd600adb645db7657a135e13eba5a Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Thu, 14 Dec 2023 22:16:33 +0100 Subject: [PATCH 22/23] Allow linking ncursesw/panelw on macOS if available @@ -10,7 +10,7 @@ Signed-off-by: Marcel Bargull 2 files changed, 10 deletions(-) diff --git a/configure b/configure -index 08c21a3ca0a..6a051959dd5 100755 +index a5b668ffb2..936eea35e4 100755 --- a/configure +++ b/configure @@ -25741,7 +25741,6 @@ fi @@ -46,7 +46,7 @@ index 08c21a3ca0a..6a051959dd5 100755 if test "x$have_curses" = xncurses then : diff --git a/configure.ac b/configure.ac -index 8ed2b866754..77e00385c44 100644 +index eb994b412c..dc77af3455 100644 --- a/configure.ac +++ b/configure.ac @@ -6456,8 +6456,6 @@ AH_TEMPLATE([HAVE_NCURSESW], [Define to 1 if you have the `ncursesw' library.]) diff --git a/recipe/patches/0023-Do-not-define-pid_t-as-it-might-conflict-with-the-ac.patch b/recipe/patches/0023-Do-not-define-pid_t-as-it-might-conflict-with-the-ac.patch index 756016e7a..6887588f5 100644 --- a/recipe/patches/0023-Do-not-define-pid_t-as-it-might-conflict-with-the-ac.patch +++ b/recipe/patches/0023-Do-not-define-pid_t-as-it-might-conflict-with-the-ac.patch @@ -1,4 +1,4 @@ -From aa6781489ba39e836d64966242ef04c7e1839215 Mon Sep 17 00:00:00 2001 +From f69fd23060f7c43ae4fb3667d793f752d1ddb5da Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Sun, 12 Jan 2025 10:37:29 +0530 Subject: [PATCH 23/23] Do not define pid_t as it might conflict with the @@ -13,7 +13,7 @@ Subject: [PATCH 23/23] Do not define pid_t as it might conflict with the 5 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Modules/_testcapi/long.c b/Modules/_testcapi/long.c -index 16eb437ffea..a88dd8026ab 100644 +index 16eb437ffe..a88dd8026a 100644 --- a/Modules/_testcapi/long.c +++ b/Modules/_testcapi/long.c @@ -2,6 +2,9 @@ @@ -27,7 +27,7 @@ index 16eb437ffea..a88dd8026ab 100644 static PyObject * raiseTestError(const char* test_name, const char* msg) diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c -index 36b8fcbcddf..35a0f83a047 100644 +index 36b8fcbcdd..35a0f83a04 100644 --- a/Modules/_testcapimodule.c +++ b/Modules/_testcapimodule.c @@ -37,6 +37,10 @@ @@ -42,7 +42,7 @@ index 36b8fcbcddf..35a0f83a047 100644 # error "The public headers should not include , see bpo-46748" #endif diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h -index 57121e1e890..b765e22f3be 100644 +index 57121e1e89..b765e22f3b 100644 --- a/Modules/clinic/posixmodule.c.h +++ b/Modules/clinic/posixmodule.c.h @@ -8,6 +8,10 @@ preserve @@ -57,7 +57,7 @@ index 57121e1e890..b765e22f3be 100644 "stat($module, /, path, *, dir_fd=None, follow_symlinks=True)\n" "--\n" diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c -index c21c6f06c72..d65611ad55b 100644 +index c21c6f06c7..d65611ad55 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -39,6 +39,7 @@ @@ -69,7 +69,7 @@ index c21c6f06c72..d65611ad55b 100644 #include "structmember.h" // PyMemberDef diff --git a/PC/pyconfig.h b/PC/pyconfig.h -index 7815bfcf8de..4ccb55182a1 100644 +index 7815bfcf8d..4ccb55182a 100644 --- a/PC/pyconfig.h +++ b/PC/pyconfig.h @@ -222,8 +222,6 @@ typedef _W64 int Py_ssize_t; diff --git a/recipe/patches/README.md b/recipe/patches/README.md index d581fb988..65a57098b 100644 --- a/recipe/patches/README.md +++ b/recipe/patches/README.md @@ -1,23 +1,54 @@ ### How to re-generate patches + +Use the existing series from the target feedstock branch and the CPython tags +for its old and new releases. The example below assumes sibling `cpython` and +`python-feedstock` checkouts; adjust the paths and tags as needed. + ```bash -old=v3.9.6 -new=v3.10.0 -git clone git@github.com:python/cpython && cd cpython -git reset --hard $old -for f in ../recipe/patches/*.patch; do - git am $f; -done -head=$(git rev-parse HEAD) -git reset --hard $new -git cherry-pick $old...$head # fix conflicts and make sure the editor doesn't add end of file line ending -git format-patch --no-signature $new -for f in *.patch; do - python ../recipe/patches/make-mixed-crlf-patch.py $f; +old=v3.12.14 +new=v3.12.15 +git clone https://github.com/python/cpython.git +cd cpython +git switch -c feedstock-patches "$old" +git am -3 ../python-feedstock/recipe/patches/*.patch +git rebase --onto "$new" "$old" +``` + +The glob selects only patch files in numbered order. Apply all patches, including +those selected only on other platforms in the recipe. `git am -3` can fall back +to a three-way merge when the required Git blobs are available. + +Resolve any rebase conflicts, preserving the intended patch changes and file +line endings. Do not let an editor add a final newline to a file that lacks one. +Stage each resolution and run `git rebase --continue`. + +Export to a separate directory so generated patches are not mixed with the old +series, then restore the mixed line endings required by Windows patches: + +```bash +mkdir ../refreshed-patches +git format-patch --no-signature -o ../refreshed-patches "$new" +for f in ../refreshed-patches/*.patch; do + python ../python-feedstock/recipe/patches/make-mixed-crlf-patch.py "$f" done ``` -On windows, the last loop can be done as follows (once the patches -have been copied; executed within the `recipe/patch` folder): +For Windows Command Prompt, the application step has this equivalent (use `%%f` +instead of `%f` in a batch file): + +```bat +for /f "delims=" %f in ('dir /b /s /on ..\python-feedstock\recipe\patches\*.patch') do git am -3 "%f" +``` + +Before replacing the feedstock's patches, verify the exported series with +`git am` on a clean checkout of the new tag: + ```bash -for /f %f in ('dir /b /S .') do python make-mixed-crlf-patch.py %f +git worktree add --detach ../cpython-patch-check "$new" +git -C ../cpython-patch-check am ../refreshed-patches/*.patch +git diff HEAD "$(git -C ../cpython-patch-check rev-parse HEAD)" --exit-code ``` + +The final check confirms that applying the exported patches reproduces the +rebased source tree. Preserve patch authorship, metadata, ordering, and recipe +references when copying the regenerated series back to the feedstock. From 6db77e72defd700d1beba722263402920f9c968b Mon Sep 17 00:00:00 2001 From: Dan Yeaw Date: Mon, 5 Oct 2026 10:17:07 -0400 Subject: [PATCH 3/4] Add alternate location for cli-64.exe for conda-build 26.9+ (cherry picked from commit e073344f3301d2248ab2de5c7758514d72dab4e3) --- recipe/fix_staged_scripts.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/recipe/fix_staged_scripts.py b/recipe/fix_staged_scripts.py index 63343fb43..4bfea1003 100644 --- a/recipe/fix_staged_scripts.py +++ b/recipe/fix_staged_scripts.py @@ -31,7 +31,16 @@ def fix_staged_scripts(scripts_dir): # now create the .exe file # This is hardcoded that conda and conda-build are in the same environment base_env = dirname(dirname(os.environ['CONDA_EXE'])) - exe = join(base_env, 'lib', 'site-packages', 'conda_build', 'cli-64.exe') + # conda-build >= 26.9 sources launchers from conda-launchers + candidates = [ + join(base_env, 'share', 'conda-launchers', 'cli-64.exe'), + join(base_env, 'lib', 'site-packages', 'conda_build', 'cli-64.exe'), + ] + exe = next((path for path in candidates if isfile(path)), None) + if exe is None: + raise FileNotFoundError( + 'cli-64.exe launcher not found in any of: %s' % ', '.join(candidates) + ) shutil.copyfile(exe, join(scripts_dir, fn + '.exe')) # remove the original script From 39134d60a61b6fce38765cf920a6a9ae6a08f0e3 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 5 Oct 2026 08:11:47 -0700 Subject: [PATCH 4/4] Add target architecture detection for script fixes (cherry picked from commit 6e713eb1421e8bc77e1b4a2986ebc63ab486a8ec) --- recipe/fix_staged_scripts.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipe/fix_staged_scripts.py b/recipe/fix_staged_scripts.py index 4bfea1003..050ce856f 100644 --- a/recipe/fix_staged_scripts.py +++ b/recipe/fix_staged_scripts.py @@ -10,6 +10,7 @@ def fix_staged_scripts(scripts_dir): Fixes scripts which have been installed unix-style to have a .bat helper """ + target_arch = os.environ["target_platform"].split("-")[-1] if not isdir(scripts_dir): return for fn in os.listdir(scripts_dir): @@ -33,8 +34,8 @@ def fix_staged_scripts(scripts_dir): base_env = dirname(dirname(os.environ['CONDA_EXE'])) # conda-build >= 26.9 sources launchers from conda-launchers candidates = [ - join(base_env, 'share', 'conda-launchers', 'cli-64.exe'), - join(base_env, 'lib', 'site-packages', 'conda_build', 'cli-64.exe'), + join(base_env, 'share', 'conda-launchers', f'cli-{target_arch}.exe'), + join(base_env, 'lib', 'site-packages', 'conda_build', f'cli-{target_arch}.exe'), ] exe = next((path for path in candidates if isfile(path)), None) if exe is None: