https://github.com/python/cpython/commit/728a881321f00a11f2f3270f0e0108415f2a208b
commit: 728a881321f00a11f2f3270f0e0108415f2a208b
branch: 3.13
author: Steve Dower <[email protected]>
committer: zooba <[email protected]>
date: 2025-06-05T23:03:38+01:00
summary:
[3.13] gh-135151: Fix incorrect packaging of pyconfig.h in Windows installer
(GH-135180)
files:
A Misc/NEWS.d/next/Windows/2025-06-05-13-52-36.gh-issue-135151.4PfNZQ.rst
M Doc/howto/free-threading-extensions.rst
M Tools/msi/dev/dev_files.wxs
diff --git a/Doc/howto/free-threading-extensions.rst
b/Doc/howto/free-threading-extensions.rst
index 882e39416a2d4b..c7d1c00cd17d40 100644
--- a/Doc/howto/free-threading-extensions.rst
+++ b/Doc/howto/free-threading-extensions.rst
@@ -23,6 +23,14 @@ You can use it to enable code that only runs under the
free-threaded build::
/* code that only runs in the free-threaded build */
#endif
+.. note::
+
+ On Windows, this macro is not defined automatically, but must be specified
+ to the compiler when building. The :func:`sysconfig.get_config_var` function
+ can be used to determine whether the current running interpreter had the
+ macro defined.
+
+
Module Initialization
=====================
diff --git
a/Misc/NEWS.d/next/Windows/2025-06-05-13-52-36.gh-issue-135151.4PfNZQ.rst
b/Misc/NEWS.d/next/Windows/2025-06-05-13-52-36.gh-issue-135151.4PfNZQ.rst
new file mode 100644
index 00000000000000..06039a87c03a6b
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2025-06-05-13-52-36.gh-issue-135151.4PfNZQ.rst
@@ -0,0 +1,3 @@
+Avoid distributing modified :file:`pyconfig.h` in the traditional installer.
+Extension module builds must always specify ``Py_GIL_DISABLED`` when
+targeting the free-threaded runtime.
diff --git a/Tools/msi/dev/dev_files.wxs b/Tools/msi/dev/dev_files.wxs
index 4357dc86d9d356..d7c8e9007e40a4 100644
--- a/Tools/msi/dev/dev_files.wxs
+++ b/Tools/msi/dev/dev_files.wxs
@@ -3,7 +3,8 @@
<Fragment>
<ComponentGroup Id="dev_pyconfig">
<Component Id="include_pyconfig.h" Directory="include" Guid="*">
- <File Id="include_pyconfig.h" Name="pyconfig.h"
Source="pyconfig.h" KeyPath="yes" />
+ <!-- gh-135151 Always use the unmodified header for the
installer. -->
+ <File Id="include_pyconfig.h" Name="pyconfig.h"
Source="!(bindpath.src)PC\pyconfig.h.in" KeyPath="yes" />
</Component>
</ComponentGroup>
</Fragment>
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]