From e91b0491717c069141cbe2d54625bf742e86f389 Mon Sep 17 00:00:00 2001 From: Michael Sarahan Date: Sat, 3 Oct 2026 16:58:01 -0500 Subject: [PATCH 1/4] [3.10] Update Python to 3.10.22 Bring the final upstream Python 3.10 security release into conda-forge. Verify the source checksum, reset the base build number, and refresh the Windows Expat patch so it applies to the updated source. --- recipe/meta.yaml | 4 ++-- recipe/patches/0026-Unvendor-expat.patch | 26 ++++++++++++++++-------- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 601acea26..17ae26685 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "3.10.21" %} +{% set version = "3.10.22" %} {% set dev = "" %} {% set dev_ = "" %} {% set ver2 = '.'.join(version.split('.')[0:2]) %} @@ -47,7 +47,7 @@ source: {% else %} - url: https://www.python.org/ftp/python/{{ version }}/Python-{{ version }}{{ dev }}.tar.xz # sha256 from: https://www.python.org/downloads/release/python-{{ ver3nd }}/ - sha256: a0da1e72132e950154eca0f6f47d5db828454700de20e5113667940d81e0db04 + sha256: c61fe9b1a1a7ec2a0b0388e664187c378a5325a89e3606d220abf5bdfccb2543 {% endif %} patches: - patches/0001-Win32-Change-FD_SETSIZE-from-512-to-2048.patch diff --git a/recipe/patches/0026-Unvendor-expat.patch b/recipe/patches/0026-Unvendor-expat.patch index e06f993af..1e666f107 100644 --- a/recipe/patches/0026-Unvendor-expat.patch +++ b/recipe/patches/0026-Unvendor-expat.patch @@ -4,11 +4,11 @@ Date: Wed, 29 Mar 2023 23:07:10 -0500 Subject: [PATCH 26/26] Unvendor expat --- - PCbuild/_elementtree.vcxproj | 23 +---------- - PCbuild/_elementtree.vcxproj.filters | 59 ---------------------------- - PCbuild/pyexpat.vcxproj | 14 ++----- - PCbuild/pyexpat.vcxproj.filters | 23 ----------- - 4 files changed, 5 insertions(+), 114 deletions(-) + PCbuild/_elementtree.vcxproj | 24 +---------- + PCbuild/_elementtree.vcxproj.filters | 62 ---------------------------- + PCbuild/pyexpat.vcxproj | 15 ++----- + PCbuild/pyexpat.vcxproj.filters | 26 ----------- + 4 files changed, 5 insertions(+), 122 deletions(-) diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj index ec55d5c981e..3a51495de73 100644 @@ -23,7 +23,7 @@ index ec55d5c981e..3a51495de73 100644 _CRT_SECURE_NO_WARNINGS;USE_PYEXPAT_CAPI;XML_POOR_ENTROPY;XML_STATIC;%(PreprocessorDefinitions) /d1trimfile:%SRC_DIR% /d1trimfile:%SRC_DIR% -@@ -101,29 +101,8 @@ +@@ -101,30 +101,8 @@ /d1trimfile:%SRC_DIR% @@ -34,6 +34,7 @@ index ec55d5c981e..3a51495de73 100644 - - - +- - - - @@ -57,7 +58,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} @@ -80,6 +81,9 @@ index f6b55d8ff82..88a13faa683 100644 - - Header Files\expat - +- +- Header Files\expat +- - - Header Files\expat - @@ -131,7 +135,7 @@ diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj index a5c01c6bc6f..f56eff65e8b 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj -@@ -90,25 +90,19 @@ +@@ -90,26 +90,19 @@ @@ -149,6 +153,7 @@ index a5c01c6bc6f..f56eff65e8b 100644 - - +- - - - @@ -165,7 +170,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} @@ -173,6 +178,9 @@ index 230531033fc..b8280b4049c 100644 - - Header Files - +- +- Header Files +- - - Header Files - From e6139514553ef239701ec3978e90d0148421e3e5 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 +- ...Add-support-to-cygwinccompiler-for-V.patch | 4 +- ...03-Support-cross-compiling-byte-code.patch | 8 +- ...-for-isysroot-in-addition-to-sysroot.patch | 4 +- ...dir_option-Use-1st-word-of-CC-as-com.patch | 4 +- ...0006-Win32-Do-not-download-externals.patch | 4 +- ...-so-that-it-looks-in-sys.prefix-lib-.patch | 6 +- ...compiling-on-debian-ubuntu-with-a-di.patch | 4 +- ...-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch | 4 +- recipe/patches/0010-Unvendor-openssl.patch | 16 ++-- recipe/patches/0011-Unvendor-sqlite3.patch | 10 +-- ...nlib-from-env-if-env-variable-is-set.patch | 4 +- ...dd-CondaEcosystemModifyDllSearchPath.patch | 8 +- ...RC_DIR-to-make-pdbs-more-relocatable.patch | 4 +- recipe/patches/0015-Doing-d1trimfile.patch | 86 +++++++++---------- .../patches/0016-cross-compile-darwin.patch | 10 +-- .../patches/0017-Fix-TZPATH-on-windows.patch | 4 +- ...ch-work-with-SYSTEM_VERSION_COMPAT-1.patch | 4 +- ...ED-when-CC-is-overriden-on-Linux-too.patch | 4 +- recipe/patches/0020-Unvendor-bzip2.patch | 6 +- recipe/patches/0021-Unvendor-libffi.patch | 4 +- recipe/patches/0022-Unvendor-tcltk.patch | 4 +- recipe/patches/0023-unvendor-xz.patch | 4 +- recipe/patches/0024-unvendor-zlib.patch | 6 +- ...-not-pass-g-to-GCC-when-not-Py_DEBUG.patch | 6 +- recipe/patches/0026-Unvendor-expat.patch | 12 +-- recipe/patches/README.md | 63 +++++++++++--- 28 files changed, 183 insertions(+), 130 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 2e05c3ada..a78a89956 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 664e2356fdbd34f87e4a2cb3f59c97dd1e6026e9 Mon Sep 17 00:00:00 2001 +From 3ca60242a2458a4b41a037109b07eed78cfb6916 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:53:55 +0100 Subject: [PATCH 01/26] 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 3afcb0e2a02..1ee953a6aea 100644 +index 3afcb0e2a0..1ee953a6ae 100644 --- a/Modules/selectmodule.c +++ b/Modules/selectmodule.c @@ -33,7 +33,7 @@ diff --git a/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch b/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch index 84f75c44b..cab4998de 100644 --- a/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch +++ b/recipe/patches/0002-Win32-distutils-Add-support-to-cygwinccompiler-for-V.patch @@ -1,4 +1,4 @@ -From 76e282d3720759bd681934774ea3d710e8c5fa69 Mon Sep 17 00:00:00 2001 +From 3dccfc4942ce9ecc6f140ce28c98b6d6c7cba89f Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:59:00 +0100 Subject: [PATCH 02/26] Win32: distutils: Add support to cygwinccompiler for @@ -10,7 +10,7 @@ Really this is for mingw-w64 though 1 file changed, 3 insertions(+) diff --git a/Lib/distutils/cygwinccompiler.py b/Lib/distutils/cygwinccompiler.py -index 66c12dd3583..e6c790118bb 100644 +index 66c12dd358..e6c790118b 100644 --- a/Lib/distutils/cygwinccompiler.py +++ b/Lib/distutils/cygwinccompiler.py @@ -80,6 +80,9 @@ def get_msvcr(): diff --git a/recipe/patches/0003-Support-cross-compiling-byte-code.patch b/recipe/patches/0003-Support-cross-compiling-byte-code.patch index c68b0a09c..594ee4a1d 100644 --- a/recipe/patches/0003-Support-cross-compiling-byte-code.patch +++ b/recipe/patches/0003-Support-cross-compiling-byte-code.patch @@ -1,4 +1,4 @@ -From 6473bec059b0b98c2d96198ce87c2d453645c852 Mon Sep 17 00:00:00 2001 +From 972f7a6dabf1c6d21b24979ee13028480a9d16f1 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 12:17:33 +0100 Subject: [PATCH 03/26] Support cross-compiling byte-code @@ -11,7 +11,7 @@ https://bugs.python.org/issue22724 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in -index fa99dd86c41..eada53ed360 100644 +index fa99dd86c4..eada53ed36 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -261,6 +261,7 @@ BUILDPYTHON= python$(BUILDEXE) @@ -77,7 +77,7 @@ index fa99dd86c41..eada53ed360 100644 --install-scripts=$(BINDIR) \ --install-platlib=$(DESTSHARED) \ diff --git a/configure b/configure -index 4b71c4e00f8..03a361cbd90 100755 +index 4b71c4e00f..03a361cbd9 100755 --- a/configure +++ b/configure @@ -760,6 +760,7 @@ CONFIG_ARGS @@ -99,7 +99,7 @@ index 4b71c4e00f8..03a361cbd90 100755 elif test "$cross_compiling" = maybe; then as_fn_error $? "Cross compiling required --host=HOST-TUPLE and --build=ARCH" "$LINENO" 5 diff --git a/configure.ac b/configure.ac -index ac3be3850a9..08d81c26c6e 100644 +index ac3be3850a..08d81c26c6 100644 --- a/configure.ac +++ b/configure.ac @@ -82,13 +82,15 @@ if test "$cross_compiling" = yes; then diff --git a/recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch b/recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch index b906b84f0..e3825fda6 100644 --- a/recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch +++ b/recipe/patches/0004-bpo-45258-search-for-isysroot-in-addition-to-sysroot.patch @@ -1,4 +1,4 @@ -From 957a0e6e879f4e43769c78dc76ffafb2cda862eb Mon Sep 17 00:00:00 2001 +From 65bbff7dd424c30936475df1a20423c293648e7e Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Tue, 21 Sep 2021 13:05:20 -0500 Subject: [PATCH 04/26] bpo-45258: search for -isysroot in addition to @@ -10,7 +10,7 @@ Subject: [PATCH 04/26] bpo-45258: search for -isysroot in addition to 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index a39610a1c7c..b2d68de7cd1 100644 +index a39610a1c7..b2d68de7cd 100644 --- a/setup.py +++ b/setup.py @@ -163,7 +163,7 @@ def sysroot_paths(make_vars, subdirs): diff --git a/recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch b/recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch index 0efec69e1..8be83f26f 100644 --- a/recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch +++ b/recipe/patches/0005-runtime_library_dir_option-Use-1st-word-of-CC-as-com.patch @@ -1,4 +1,4 @@ -From 42fe97e6cbb184cda0e2c96b63e227627828ddf8 Mon Sep 17 00:00:00 2001 +From 44a9f79d1721b83e3f78d22ed76459eeb4104fb1 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Thu, 5 Oct 2017 02:00:41 +0100 Subject: [PATCH 05/26] runtime_library_dir_option: Use 1st word of CC as @@ -12,7 +12,7 @@ not get detected as gcc (or whatever it actually is). 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Lib/distutils/unixccompiler.py b/Lib/distutils/unixccompiler.py -index d00c48981eb..54dd556fe5a 100644 +index d00c48981e..54dd556fe5 100644 --- a/Lib/distutils/unixccompiler.py +++ b/Lib/distutils/unixccompiler.py @@ -232,7 +232,8 @@ def runtime_library_dir_option(self, dir): diff --git a/recipe/patches/0006-Win32-Do-not-download-externals.patch b/recipe/patches/0006-Win32-Do-not-download-externals.patch index d3e3a4d64..2a4b59211 100644 --- a/recipe/patches/0006-Win32-Do-not-download-externals.patch +++ b/recipe/patches/0006-Win32-Do-not-download-externals.patch @@ -1,4 +1,4 @@ -From 4892411b32b8b4e46fc00e75504daf3e25ecd610 Mon Sep 17 00:00:00 2001 +From 7eb36d70e1b5743364a368bca5eb7640ab0abb2e Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Thu, 7 Sep 2017 11:35:47 +0100 Subject: [PATCH 06/26] Win32: Do not download externals @@ -8,7 +8,7 @@ Subject: [PATCH 06/26] 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/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch b/recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch index 944de1d39..99e091bf2 100644 --- a/recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch +++ b/recipe/patches/0007-Fix-find_library-so-that-it-looks-in-sys.prefix-lib-.patch @@ -1,4 +1,4 @@ -From d69ba7d9a48299238f7c564f99234e56ea74dcca Mon Sep 17 00:00:00 2001 +From b7074cbd937048c13fde9bbe50b37c54a598673b Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 5 Dec 2017 22:47:59 +0000 Subject: [PATCH 07/26] Fix find_library so that it looks in sys.prefix/lib @@ -10,7 +10,7 @@ Subject: [PATCH 07/26] 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 1c3f8fd38b0..82a4b4fd58a 100644 +index 1c3f8fd38b..82a4b4fd58 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 1c3f8fd38b0..82a4b4fd58a 100644 yield os.path.join(executable_path, name[len('@executable_path/'):]) diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py -index 0c2510e1619..4548cd27a8c 100644 +index 0c2510e161..4548cd27a8 100644 --- a/Lib/ctypes/util.py +++ b/Lib/ctypes/util.py @@ -70,7 +70,8 @@ def find_library(name): diff --git a/recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch b/recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch index b4a62a779..4aabb1c7f 100644 --- a/recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch +++ b/recipe/patches/0008-bpo-22699-Allow-compiling-on-debian-ubuntu-with-a-di.patch @@ -1,4 +1,4 @@ -From 2936ce4d00b332f2539524c00571bff9cfac5f02 Mon Sep 17 00:00:00 2001 +From 406d24dd79ccf9710716826b292626f3b4703c41 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Thu, 16 Sep 2021 15:46:09 -0500 Subject: [PATCH 08/26] bpo-22699: Allow compiling on debian/ubuntu with a @@ -12,7 +12,7 @@ patch than given 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py -index b2d68de7cd1..ddaa6d743cd 100644 +index b2d68de7cd..ddaa6d743c 100644 --- a/setup.py +++ b/setup.py @@ -666,9 +666,30 @@ def check_extension_import(self, ext): diff --git a/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch b/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch index e16c152bf..5bca6935c 100644 --- a/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch +++ b/recipe/patches/0009-Disable-registry-lookup-unless-CONDA_PY_ALLOW_REG_PA.patch @@ -1,4 +1,4 @@ -From 250524b831eaf0684399911a5285a8cb582109a1 Mon Sep 17 00:00:00 2001 +From 9fb9d77d84876ba0bdf348e964089f27042cf1ac Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Sat, 27 Oct 2018 18:48:30 +0100 Subject: [PATCH 09/26] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS @@ -9,7 +9,7 @@ Subject: [PATCH 09/26] Disable registry lookup unless CONDA_PY_ALLOW_REG_PATHS 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/PC/getpathp.c b/PC/getpathp.c -index 7c0eeab5dba..a73ea8a0e91 100644 +index 7c0eeab5db..a73ea8a0e9 100644 --- a/PC/getpathp.c +++ b/PC/getpathp.c @@ -778,13 +778,18 @@ calculate_module_search_path(PyCalculatePath *calculate, diff --git a/recipe/patches/0010-Unvendor-openssl.patch b/recipe/patches/0010-Unvendor-openssl.patch index 50bc449d8..392487580 100644 --- a/recipe/patches/0010-Unvendor-openssl.patch +++ b/recipe/patches/0010-Unvendor-openssl.patch @@ -1,4 +1,4 @@ -From f5bad88adbed923fe017d01691cdec1ce1c8e562 Mon Sep 17 00:00:00 2001 +From 08b69d17cd366f4437aee8818892475b1b1daa75 Mon Sep 17 00:00:00 2001 From: Nehal J Wani Date: Sat, 24 Nov 2018 20:38:02 -0600 Subject: [PATCH 10/26] Unvendor openssl @@ -15,7 +15,7 @@ Co-authored-by: Isuru Fernando 7 files changed, 9 insertions(+), 70 deletions(-) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj -index 4907f49b662..b2c23d5e8cc 100644 +index 4907f49b66..b2c23d5e8c 100644 --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -99,9 +99,6 @@ @@ -29,7 +29,7 @@ index 4907f49b662..b2c23d5e8cc 100644 diff --git a/PCbuild/_ssl.vcxproj.filters b/PCbuild/_ssl.vcxproj.filters -index 716a69a41af..8aef9e03fcc 100644 +index 716a69a41a..8aef9e03fc 100644 --- a/PCbuild/_ssl.vcxproj.filters +++ b/PCbuild/_ssl.vcxproj.filters @@ -12,9 +12,6 @@ @@ -43,7 +43,7 @@ index 716a69a41af..8aef9e03fcc 100644 diff --git a/PCbuild/openssl.props b/PCbuild/openssl.props -index a7e16793c7f..f7e9be4d110 100644 +index a7e16793c7..f7e9be4d11 100644 --- a/PCbuild/openssl.props +++ b/PCbuild/openssl.props @@ -2,10 +2,10 @@ @@ -72,7 +72,7 @@ index a7e16793c7f..f7e9be4d110 100644 \ No newline at end of file diff --git a/PCbuild/openssl.vcxproj b/PCbuild/openssl.vcxproj -index 0da6f674958..17eee400ebb 100644 +index 0da6f67495..17eee400eb 100644 --- a/PCbuild/openssl.vcxproj +++ b/PCbuild/openssl.vcxproj @@ -60,64 +60,8 @@ @@ -141,7 +141,7 @@ index 0da6f674958..17eee400ebb 100644 diff --git a/PCbuild/python.props b/PCbuild/python.props -index 057ed5ac224..b7f958193cb 100644 +index 057ed5ac22..b7f958193c 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -57,6 +57,7 @@ @@ -153,7 +153,7 @@ index 057ed5ac224..b7f958193cb 100644 $(ExternalsDir)\ diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index 0adce0958b1..38bab083060 100644 +index 0adce0958b..38bab08306 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -106,6 +106,9 @@ @@ -167,7 +167,7 @@ index 0adce0958b1..38bab083060 100644 diff --git a/PCbuild/pythonw.vcxproj b/PCbuild/pythonw.vcxproj -index e23635e5ea9..525295c76ff 100644 +index e23635e5ea..525295c76f 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -98,6 +98,9 @@ diff --git a/recipe/patches/0011-Unvendor-sqlite3.patch b/recipe/patches/0011-Unvendor-sqlite3.patch index 8944400b6..9e5993d4b 100644 --- a/recipe/patches/0011-Unvendor-sqlite3.patch +++ b/recipe/patches/0011-Unvendor-sqlite3.patch @@ -1,4 +1,4 @@ -From 13fddbf07b7cdf832b90e4a2ab56cbaaf38703f2 Mon Sep 17 00:00:00 2001 +From b65f4da7b545fa047ed1ff32b1fd73b3c505049c Mon Sep 17 00:00:00 2001 From: Nehal J Wani Date: Tue, 5 Oct 2021 12:42:06 -0700 Subject: [PATCH 11/26] Unvendor sqlite3 @@ -11,7 +11,7 @@ Subject: [PATCH 11/26] Unvendor sqlite3 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index 5eb8559d292..fcdee1be600 100644 +index 5eb8559d29..fcdee1be60 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -93,8 +93,11 @@ @@ -39,7 +39,7 @@ index 5eb8559d292..fcdee1be600 100644 diff --git a/PCbuild/pcbuild.sln b/PCbuild/pcbuild.sln -index 3507b972797..2b4ac3258c0 100644 +index 3507b97279..2b4ac3258c 100644 --- a/PCbuild/pcbuild.sln +++ b/PCbuild/pcbuild.sln @@ -55,8 +55,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pyexpat", "pyexpat.vcxproj" @@ -52,7 +52,7 @@ index 3507b972797..2b4ac3258c0 100644 EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "python3dll", "python3dll.vcxproj", "{885D4898-D08D-4091-9C40-C700CFE3FC5A}" diff --git a/PCbuild/python.props b/PCbuild/python.props -index b7f958193cb..fe3fd7bad2a 100644 +index b7f958193c..fe3fd7bad2 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -65,7 +65,7 @@ @@ -65,7 +65,7 @@ index b7f958193cb..fe3fd7bad2a 100644 $(ExternalsDir)xz-5.2.5\ $(ExternalsDir)libffi-3.3.0\ diff --git a/PCbuild/sqlite3.vcxproj b/PCbuild/sqlite3.vcxproj -index e39e2d9c226..63d1c27fbc7 100644 +index e39e2d9c22..63d1c27fbc 100644 --- a/PCbuild/sqlite3.vcxproj +++ b/PCbuild/sqlite3.vcxproj @@ -88,12 +88,12 @@ diff --git a/recipe/patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch b/recipe/patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch index b586ae7e9..be8a8637b 100644 --- a/recipe/patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch +++ b/recipe/patches/0012-Use-ranlib-from-env-if-env-variable-is-set.patch @@ -1,4 +1,4 @@ -From d7816251bb78db7b8ac45f9081bf41be9e7b02dd Mon Sep 17 00:00:00 2001 +From c70ec9760f0dbb81efe28dfc1295e41f8149b28b Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Sun, 3 Nov 2019 15:09:45 -0600 Subject: [PATCH 12/26] Use ranlib from env if env variable is set @@ -8,7 +8,7 @@ Subject: [PATCH 12/26] Use ranlib from env if env variable is set 1 file changed, 3 insertions(+) diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index 3414a761e76..181f66708e9 100644 +index 3414a761e7..181f66708e 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py @@ -263,6 +263,9 @@ def customize_compiler(compiler): diff --git a/recipe/patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch b/recipe/patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch index 16974d0fb..329fcb2fa 100644 --- a/recipe/patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch +++ b/recipe/patches/0013-Add-CondaEcosystemModifyDllSearchPath.patch @@ -1,4 +1,4 @@ -From dcdf1dee198f8fc7a63828ec179bcd23096a0211 Mon Sep 17 00:00:00 2001 +From efe10f11947f43d55b8d7a3f34315585e47cd3d7 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 24 Dec 2019 18:37:17 +0100 Subject: [PATCH 13/26] Add CondaEcosystemModifyDllSearchPath() @@ -61,7 +61,7 @@ Co-authored-by: Isuru Fernando 3 files changed, 378 insertions(+), 1 deletion(-) diff --git a/Modules/main.c b/Modules/main.c -index 48d9247c132..697a13cc751 100644 +index 48d9247c13..697a13cc75 100644 --- a/Modules/main.c +++ b/Modules/main.c @@ -17,6 +17,10 @@ @@ -453,7 +453,7 @@ index 48d9247c132..697a13cc751 100644 if (_PyStatus_IS_EXIT(status)) { pymain_free(); diff --git a/Python/dynload_win.c b/Python/dynload_win.c -index 96faa4b4629..06dedc4af67 100644 +index 96faa4b462..06dedc4af6 100644 --- a/Python/dynload_win.c +++ b/Python/dynload_win.c @@ -191,6 +191,10 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix, @@ -468,7 +468,7 @@ index 96faa4b4629..06dedc4af67 100644 hDLL = LoadLibraryExW(wpathname, NULL, LOAD_LIBRARY_SEARCH_DEFAULT_DIRS | diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c -index b0c5da56c4f..41948479574 100644 +index b0c5da56c4..4194847957 100644 --- a/Python/pylifecycle.c +++ b/Python/pylifecycle.c @@ -101,7 +101,10 @@ _PyRuntime_Initialize(void) diff --git a/recipe/patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch b/recipe/patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch index 7e2a81398..6bf936276 100644 --- a/recipe/patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch +++ b/recipe/patches/0014-Add-d1trimfile-SRC_DIR-to-make-pdbs-more-relocatable.patch @@ -1,4 +1,4 @@ -From 422fe2754b69fd46b815cf97e6040c690d43f13a Mon Sep 17 00:00:00 2001 +From 4fcbf4d2ad273439ca4dc3d9eeb7b442af315ba4 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 31 Dec 2019 20:46:36 +0100 Subject: [PATCH 14/26] Add /d1trimfile:%SRC_DIR% to make pdbs more relocatable @@ -8,7 +8,7 @@ Subject: [PATCH 14/26] Add /d1trimfile:%SRC_DIR% to make pdbs more relocatable 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Lib/distutils/_msvccompiler.py b/Lib/distutils/_msvccompiler.py -index af8099a4078..0b245adb309 100644 +index af8099a407..0b245adb30 100644 --- a/Lib/distutils/_msvccompiler.py +++ b/Lib/distutils/_msvccompiler.py @@ -346,6 +346,13 @@ def compile(self, sources, diff --git a/recipe/patches/0015-Doing-d1trimfile.patch b/recipe/patches/0015-Doing-d1trimfile.patch index a8be5c91c..4ad4b0f8d 100644 --- a/recipe/patches/0015-Doing-d1trimfile.patch +++ b/recipe/patches/0015-Doing-d1trimfile.patch @@ -1,4 +1,4 @@ -From 38058502bcf78ccea4493ae11b92e7e8d63d8e6e Mon Sep 17 00:00:00 2001 +From 10f325659315a7dfe157e3177ba59f4be7351d2c Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 31 Dec 2019 21:47:47 +0100 Subject: [PATCH 15/26] Doing d1trimfile @@ -49,7 +49,7 @@ Subject: [PATCH 15/26] Doing d1trimfile 42 files changed, 363 insertions(+), 3 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 69e4271a9bd..f28002d190a 100644 +index 69e4271a9b..f28002d190 100644 --- a/PCbuild/_ctypes.vcxproj +++ b/PCbuild/_ctypes.vcxproj @@ -95,6 +95,10 @@ @@ -110,7 +110,7 @@ index 69e4271a9bd..f28002d190a 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 8aad9513e35..ec55d5c981e 100644 +index 9c4210cfef..528c54c3ac 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -95,6 +95,10 @@ @@ -171,7 +171,7 @@ index 8aad9513e35..ec55d5c981e 100644 diff --git a/PCbuild/_freeze_importlib.vcxproj b/PCbuild/_freeze_importlib.vcxproj -index e437412a161..c4d5886b9f4 100644 +index e437412a16..c4d5886b9f 100644 --- a/PCbuild/_freeze_importlib.vcxproj +++ b/PCbuild/_freeze_importlib.vcxproj @@ -89,6 +89,10 @@ @@ -186,7 +186,7 @@ index e437412a161..c4d5886b9f4 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 @@ @@ -209,7 +209,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 @@ @@ -224,7 +224,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 @@ @@ -247,7 +247,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 @@ @@ -270,7 +270,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 @@ @@ -293,7 +293,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 @@ @@ -324,7 +324,7 @@ index 8065b235851..e46ab5a83b2 100644 diff --git a/PCbuild/_socket.vcxproj b/PCbuild/_socket.vcxproj -index 8fd75f90e7e..b403828291c 100644 +index 8fd75f90e7..b403828291 100644 --- a/PCbuild/_socket.vcxproj +++ b/PCbuild/_socket.vcxproj @@ -95,6 +95,18 @@ @@ -347,7 +347,7 @@ index 8fd75f90e7e..b403828291c 100644 diff --git a/PCbuild/_sqlite3.vcxproj b/PCbuild/_sqlite3.vcxproj -index fcdee1be600..ec2680955fb 100644 +index fcdee1be60..ec2680955f 100644 --- a/PCbuild/_sqlite3.vcxproj +++ b/PCbuild/_sqlite3.vcxproj @@ -94,6 +94,10 @@ @@ -362,7 +362,7 @@ index fcdee1be600..ec2680955fb 100644 $(sqlite3Dir)\lib\sqlite3.lib;%(AdditionalDependencies) diff --git a/PCbuild/_ssl.vcxproj b/PCbuild/_ssl.vcxproj -index b2c23d5e8cc..ebe4e888487 100644 +index b2c23d5e8c..ebe4e88848 100644 --- a/PCbuild/_ssl.vcxproj +++ b/PCbuild/_ssl.vcxproj @@ -96,6 +96,18 @@ @@ -385,7 +385,7 @@ index b2c23d5e8cc..ebe4e888487 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 @@ @@ -416,7 +416,7 @@ index 917d7ae50fe..8c7e141eeaa 100644 diff --git a/PCbuild/_testcapi.vcxproj b/PCbuild/_testcapi.vcxproj -index c1a19437253..99ee2f4a414 100644 +index c1a1943725..99ee2f4a41 100644 --- a/PCbuild/_testcapi.vcxproj +++ b/PCbuild/_testcapi.vcxproj @@ -92,6 +92,26 @@ @@ -447,7 +447,7 @@ index c1a19437253..99ee2f4a414 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 @@ @@ -462,7 +462,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 @@ @@ -477,7 +477,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 @@ @@ -508,7 +508,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 @@ @@ -539,7 +539,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 @@ @@ -554,7 +554,7 @@ index 430eb528cc3..7a268d227bc 100644 Console diff --git a/PCbuild/_tkinter.vcxproj b/PCbuild/_tkinter.vcxproj -index af813b77c1d..9ff2acde0ab 100644 +index af813b77c1..9ff2acde0a 100644 --- a/PCbuild/_tkinter.vcxproj +++ b/PCbuild/_tkinter.vcxproj @@ -96,6 +96,10 @@ @@ -569,7 +569,7 @@ index af813b77c1d..9ff2acde0ab 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 @@ @@ -584,7 +584,7 @@ index 4dd42ab98a9..7c2dbc7e701 100644 diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj -index 27b0123c777..a5c01c6bc6f 100644 +index a81383a813..0dcf38584a 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -92,6 +92,10 @@ @@ -599,7 +599,7 @@ index 27b0123c777..a5c01c6bc6f 100644 diff --git a/PCbuild/pylauncher.vcxproj b/PCbuild/pylauncher.vcxproj -index 550e0842300..0ea871bddb1 100644 +index 550e084230..0ea871bddb 100644 --- a/PCbuild/pylauncher.vcxproj +++ b/PCbuild/pylauncher.vcxproj @@ -93,6 +93,10 @@ @@ -614,7 +614,7 @@ index 550e0842300..0ea871bddb1 100644 version.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 @@ @@ -629,7 +629,7 @@ index ea432d6bc9a..13bc6921030 100644 version.lib;shlwapi.lib;%(AdditionalDependencies) diff --git a/PCbuild/python.vcxproj b/PCbuild/python.vcxproj -index 38bab083060..8cedf9f9e86 100644 +index 38bab08306..8cedf9f9e8 100644 --- a/PCbuild/python.vcxproj +++ b/PCbuild/python.vcxproj @@ -91,6 +91,10 @@ @@ -644,7 +644,7 @@ index 38bab083060..8cedf9f9e86 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 @@ @@ -659,7 +659,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 @@ @@ -672,7 +672,7 @@ index fb27e9e7122..f8dc841ef1b 100644 windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index fe8b2c90ed0..215ebfdbf4d 100644 +index fe8b2c90ed..215ebfdbf4 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -99,7 +99,7 @@ @@ -685,7 +685,7 @@ index fe8b2c90ed0..215ebfdbf4d 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 525295c76ff..bb4972618af 100644 +index 525295c76f..bb4972618a 100644 --- a/PCbuild/pythonw.vcxproj +++ b/PCbuild/pythonw.vcxproj @@ -92,6 +92,18 @@ @@ -708,7 +708,7 @@ index 525295c76ff..bb4972618af 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 @@ @@ -721,7 +721,7 @@ index e21e46a1b72..ff7dc6635df 100644 windowsapp.lib;%(AdditionalDependencies) diff --git a/PCbuild/pywlauncher.vcxproj b/PCbuild/pywlauncher.vcxproj -index 44e3fc29272..1105c998072 100644 +index 44e3fc2927..1105c99807 100644 --- a/PCbuild/pywlauncher.vcxproj +++ b/PCbuild/pywlauncher.vcxproj @@ -93,6 +93,10 @@ @@ -736,7 +736,7 @@ index 44e3fc29272..1105c998072 100644 version.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 @@ @@ -759,7 +759,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 @@ @@ -790,7 +790,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 @@ @@ -805,7 +805,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 @@ @@ -820,7 +820,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 @@ @@ -843,7 +843,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 @@ @@ -860,7 +860,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/0016-cross-compile-darwin.patch b/recipe/patches/0016-cross-compile-darwin.patch index eb9914026..c9814b58f 100644 --- a/recipe/patches/0016-cross-compile-darwin.patch +++ b/recipe/patches/0016-cross-compile-darwin.patch @@ -1,4 +1,4 @@ -From 6fd1398ae9b032b26f98b01f4d8e5dd46e1d4eb2 Mon Sep 17 00:00:00 2001 +From 22ba3109339fa02856ea22c028a2805c1f1f4fc2 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Fri, 2 Oct 2020 00:03:12 +0200 Subject: [PATCH 16/26] cross compile darwin @@ -12,7 +12,7 @@ By Isuru Fernando. 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/Lib/platform.py b/Lib/platform.py -index 6a820c90a1a..0238aeb3650 100755 +index 6a820c90a1..0238aeb365 100755 --- a/Lib/platform.py +++ b/Lib/platform.py @@ -411,7 +411,12 @@ def win32_ver(release='', version='', csd='', ptype=''): @@ -30,7 +30,7 @@ index 6a820c90a1a..0238aeb3650 100755 try: import plistlib diff --git a/configure b/configure -index 03a361cbd90..0427ae321cc 100755 +index 03a361cbd9..0427ae321c 100755 --- a/configure +++ b/configure @@ -3393,6 +3393,9 @@ if test "$cross_compiling" = yes; then @@ -53,7 +53,7 @@ index 03a361cbd90..0427ae321cc 100755 readelf|:) as_fn_error $? "readelf for the host is required for cross builds" "$LINENO" 5 diff --git a/configure.ac b/configure.ac -index 08d81c26c6e..b23727c5fc7 100644 +index 08d81c26c6..b23727c5fc 100644 --- a/configure.ac +++ b/configure.ac @@ -448,6 +448,9 @@ if test "$cross_compiling" = yes; then @@ -76,7 +76,7 @@ index 08d81c26c6e..b23727c5fc7 100644 readelf|:) AC_MSG_ERROR([readelf for the host is required for cross builds]) diff --git a/setup.py b/setup.py -index ddaa6d743cd..67197000d20 100644 +index ddaa6d743c..67197000d2 100644 --- a/setup.py +++ b/setup.py @@ -83,7 +83,7 @@ def get_platform(): diff --git a/recipe/patches/0017-Fix-TZPATH-on-windows.patch b/recipe/patches/0017-Fix-TZPATH-on-windows.patch index 7511b15bd..46bc4998b 100644 --- a/recipe/patches/0017-Fix-TZPATH-on-windows.patch +++ b/recipe/patches/0017-Fix-TZPATH-on-windows.patch @@ -1,4 +1,4 @@ -From 5abfc2e9f4c53c5e8794e847922e40ead4488046 Mon Sep 17 00:00:00 2001 +From d842118685bff92c997ef27de1498ea2471ea9f8 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 7 Oct 2020 10:08:30 -0500 Subject: [PATCH 17/26] Fix TZPATH on windows @@ -8,7 +8,7 @@ Subject: [PATCH 17/26] Fix TZPATH on windows 1 file changed, 1 insertion(+) diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py -index daf9f000060..5d124267569 100644 +index daf9f00006..5d12426756 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -611,6 +611,7 @@ def get_config_vars(*args): diff --git a/recipe/patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch b/recipe/patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch index 4bb332fcb..fe655eaa3 100644 --- a/recipe/patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch +++ b/recipe/patches/0018-Make-dyld-search-work-with-SYSTEM_VERSION_COMPAT-1.patch @@ -1,4 +1,4 @@ -From 19048581ca7c132b08925ee485d12ba27baf5a0e Mon Sep 17 00:00:00 2001 +From 1c8ae04ccab80554ceced5a75b3c9b8bf501780a Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 25 Jan 2021 03:28:08 -0600 Subject: [PATCH 18/26] 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 e009661d4a2..708d866673c 100644 +index e009661d4a..708d866673 100644 --- a/Modules/_ctypes/callproc.c +++ b/Modules/_ctypes/callproc.c @@ -1448,7 +1448,7 @@ copy_com_pointer(PyObject *self, PyObject *args) diff --git a/recipe/patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch b/recipe/patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch index 061a992f0..bbfb47294 100644 --- a/recipe/patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch +++ b/recipe/patches/0019-Fix-LDSHARED-when-CC-is-overriden-on-Linux-too.patch @@ -1,4 +1,4 @@ -From 9db97dceb515b1860f73bb8868422b4274ac7b9c Mon Sep 17 00:00:00 2001 +From 1d33747b237aa5d51e39c643ca6846fcfb904970 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 02:18:50 -0700 Subject: [PATCH 19/26] Fix LDSHARED when CC is overriden on Linux too @@ -8,7 +8,7 @@ Subject: [PATCH 19/26] Fix LDSHARED when CC is overriden on Linux too 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index 181f66708e9..07bb42df04f 100644 +index 181f66708e..07bb42df04 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py @@ -222,10 +222,9 @@ def customize_compiler(compiler): diff --git a/recipe/patches/0020-Unvendor-bzip2.patch b/recipe/patches/0020-Unvendor-bzip2.patch index c0753176f..7da7e9413 100644 --- a/recipe/patches/0020-Unvendor-bzip2.patch +++ b/recipe/patches/0020-Unvendor-bzip2.patch @@ -1,4 +1,4 @@ -From d80291c3d64900625d4bc591c2924007daa7dc6b Mon Sep 17 00:00:00 2001 +From 7582931ebd815a264b6b2220c2875c65a70c1ae0 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 02:56:27 -0700 Subject: [PATCH 20/26] Unvendor bzip2 @@ -9,7 +9,7 @@ Subject: [PATCH 20/26] 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/0021-Unvendor-libffi.patch b/recipe/patches/0021-Unvendor-libffi.patch index aacb9e62a..d440610ee 100644 --- a/recipe/patches/0021-Unvendor-libffi.patch +++ b/recipe/patches/0021-Unvendor-libffi.patch @@ -1,4 +1,4 @@ -From 3b5d0cbe4b3aecd5197c6b65552fda0917101134 Mon Sep 17 00:00:00 2001 +From 7f28749f0a05c353d900c1bd3cea867d6fb20e35 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Mon, 16 Aug 2021 03:07:40 -0700 Subject: [PATCH 21/26] Unvendor libffi @@ -8,7 +8,7 @@ Subject: [PATCH 21/26] Unvendor libffi 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/PCbuild/libffi.props b/PCbuild/libffi.props -index 975c4a0d355..97fb5966bfb 100644 +index 975c4a0d35..97fb5966bf 100644 --- a/PCbuild/libffi.props +++ b/PCbuild/libffi.props @@ -2,20 +2,11 @@ diff --git a/recipe/patches/0022-Unvendor-tcltk.patch b/recipe/patches/0022-Unvendor-tcltk.patch index 9c4c3264d..e821c0006 100644 --- a/recipe/patches/0022-Unvendor-tcltk.patch +++ b/recipe/patches/0022-Unvendor-tcltk.patch @@ -1,4 +1,4 @@ -From 90fe3783c82fb0dffce2ddede7c26c235cfb85ce Mon Sep 17 00:00:00 2001 +From a9fbf5fba0e5dc81ee06bd26383189905c964557 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Fri, 20 Aug 2021 10:23:51 -0700 Subject: [PATCH 22/26] Unvendor tcltk @@ -8,7 +8,7 @@ Subject: [PATCH 22/26] Unvendor tcltk 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/PCbuild/tcltk.props b/PCbuild/tcltk.props -index 6ff152970c7..a46efb89d26 100644 +index 6ff152970c..a46efb89d2 100644 --- a/PCbuild/tcltk.props +++ b/PCbuild/tcltk.props @@ -17,10 +17,10 @@ diff --git a/recipe/patches/0023-unvendor-xz.patch b/recipe/patches/0023-unvendor-xz.patch index 3525f98b6..986bef0ae 100644 --- a/recipe/patches/0023-unvendor-xz.patch +++ b/recipe/patches/0023-unvendor-xz.patch @@ -1,4 +1,4 @@ -From ac0c2638890346fea3f81a8c13503914939d34c9 Mon Sep 17 00:00:00 2001 +From bc8ec84d78c440b7f1a1568f15407414688f5a12 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Sat, 25 Sep 2021 10:07:05 -0700 Subject: [PATCH 23/26] unvendor xz @@ -8,7 +8,7 @@ Subject: [PATCH 23/26] 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/0024-unvendor-zlib.patch b/recipe/patches/0024-unvendor-zlib.patch index 1913108fc..fe78974f0 100644 --- a/recipe/patches/0024-unvendor-zlib.patch +++ b/recipe/patches/0024-unvendor-zlib.patch @@ -1,4 +1,4 @@ -From 8e3be19ebe2b3543988fd7a08e9141c7b7d1dbc8 Mon Sep 17 00:00:00 2001 +From 44a07cc0bb4fd9c51fc60ab90095b626ad25d3c7 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 29 Sep 2021 15:21:55 -0700 Subject: [PATCH 24/26] unvendor zlib @@ -9,7 +9,7 @@ Subject: [PATCH 24/26] unvendor zlib 2 files changed, 4 insertions(+), 95 deletions(-) diff --git a/PCbuild/pythoncore.vcxproj b/PCbuild/pythoncore.vcxproj -index 215ebfdbf4d..7e729e79245 100644 +index 215ebfdbf4..7e729e7924 100644 --- a/PCbuild/pythoncore.vcxproj +++ b/PCbuild/pythoncore.vcxproj @@ -82,7 +82,7 @@ @@ -78,7 +78,7 @@ index 215ebfdbf4d..7e729e79245 100644 diff --git a/PCbuild/pythoncore.vcxproj.filters b/PCbuild/pythoncore.vcxproj.filters -index 55b57ef29dc..2fc1a571618 100644 +index 55b57ef29d..2fc1a57161 100644 --- a/PCbuild/pythoncore.vcxproj.filters +++ b/PCbuild/pythoncore.vcxproj.filters @@ -606,39 +606,6 @@ diff --git a/recipe/patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch b/recipe/patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch index 35de18217..81946f7f5 100644 --- a/recipe/patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch +++ b/recipe/patches/0025-Do-not-pass-g-to-GCC-when-not-Py_DEBUG.patch @@ -1,4 +1,4 @@ -From 52513b2bb34d129063ec179ce799aded30f9eaf2 Mon Sep 17 00:00:00 2001 +From d84481a6397531bb4fbbd2913e140099822b7ad4 Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Wed, 16 Aug 2017 11:45:28 +0100 Subject: [PATCH 25/26] 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 0427ae321cc..8ea6c81e0f7 100755 +index 0427ae321c..8ea6c81e0f 100755 --- a/configure +++ b/configure @@ -4299,9 +4299,9 @@ if test "$ac_test_CFLAGS" = set; then @@ -35,7 +35,7 @@ index 0427ae321cc..8ea6c81e0f7 100755 ;; *) diff --git a/configure.ac b/configure.ac -index b23727c5fc7..9c685d26613 100644 +index b23727c5fc..9c685d2661 100644 --- a/configure.ac +++ b/configure.ac @@ -1584,7 +1584,7 @@ then diff --git a/recipe/patches/0026-Unvendor-expat.patch b/recipe/patches/0026-Unvendor-expat.patch index 1e666f107..3659e71ca 100644 --- a/recipe/patches/0026-Unvendor-expat.patch +++ b/recipe/patches/0026-Unvendor-expat.patch @@ -1,4 +1,4 @@ -From 3cb9f861f64aca04fb652250fa0056a9ae7e40ed Mon Sep 17 00:00:00 2001 +From b70d81b46b6ff7bd3f1793198b5c113f77398e84 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Wed, 29 Mar 2023 23:07:10 -0500 Subject: [PATCH 26/26] Unvendor expat @@ -7,11 +7,11 @@ Subject: [PATCH 26/26] Unvendor expat PCbuild/_elementtree.vcxproj | 24 +---------- PCbuild/_elementtree.vcxproj.filters | 62 ---------------------------- PCbuild/pyexpat.vcxproj | 15 ++----- - PCbuild/pyexpat.vcxproj.filters | 26 ----------- + PCbuild/pyexpat.vcxproj.filters | 26 ------------ 4 files changed, 5 insertions(+), 122 deletions(-) diff --git a/PCbuild/_elementtree.vcxproj b/PCbuild/_elementtree.vcxproj -index ec55d5c981e..3a51495de73 100644 +index 528c54c3ac..3a51495de7 100644 --- a/PCbuild/_elementtree.vcxproj +++ b/PCbuild/_elementtree.vcxproj @@ -93,7 +93,7 @@ @@ -55,7 +55,7 @@ index ec55d5c981e..3a51495de73 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 @@ @@ -132,7 +132,7 @@ index f6b55d8ff82..88a13faa683 100644 diff --git a/PCbuild/pyexpat.vcxproj b/PCbuild/pyexpat.vcxproj -index a5c01c6bc6f..f56eff65e8b 100644 +index 0dcf38584a..f56eff65e8 100644 --- a/PCbuild/pyexpat.vcxproj +++ b/PCbuild/pyexpat.vcxproj @@ -90,26 +90,19 @@ @@ -167,7 +167,7 @@ index a5c01c6bc6f..f56eff65e8b 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/README.md b/recipe/patches/README.md index cf9afd812..d309a6c13 100644 --- a/recipe/patches/README.md +++ b/recipe/patches/README.md @@ -1,17 +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.10.21 +new=v3.10.22 +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 ``` + +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 +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 54e8f265f62be92050e920873a5040ffc71df704 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 39cd718d99a25ef7aa2f149cbf8329e2eb0adcd7 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: