Also fixes gh-149507, regenerating `configure` for 3.16.
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Zachary Ware <zach@python.org>
Removed
=======
-module_name
------------
+sysconfig
+---------
+
+* The :func:`!sysconfig.expand_makefile_vars` function
+ which has been deprecated since Python 3.14.
+ Use the ``vars`` argument of :func:`sysconfig.get_paths` instead.
-* TODO
.. Add removals above alphabetically, not here at the end.
Removed C APIs
--------------
-
Python 3.15a8 3664 (Fix __qualname__ for __annotate__ functions)
Python 3.15a8 3665 (Add FOR_ITER_VIRTUAL and GET_ITER specializations)
Python 3.15b1 3666 (Add SEND_VIRTUAL and SEND_ASYNC_GEN specializations)
+ Python 3.16a0 3700 (Initial version)
- Python 3.16 will start with 3700
+ Python 3.17 will start with 3750
Please don't copy-paste the same pre-release tag for new entries above!!!
You should always use the *upcoming* tag. For example, if 3.12a6 came out
*/
-#define PYC_MAGIC_NUMBER 3666
+#define PYC_MAGIC_NUMBER 3700
/* This is equivalent to converting PYC_MAGIC_NUMBER to 2 bytes
(little-endian) and then appending b'\r\n'. */
#define PYC_MAGIC_NUMBER_TOKEN \
def _get_python_version_abi():
return _PY_VERSION_SHORT + get_config_var("abi_thread")
-
-
-def expand_makefile_vars(s, vars):
- """Expand Makefile-style variables -- "${foo}" or "$(foo)" -- in
- 'string' according to 'vars' (a dictionary mapping variable names to
- values). Variables not present in 'vars' are silently expanded to the
- empty string. The variable values in 'vars' should not contain further
- variable expansions; if 'vars' is the output of 'parse_makefile()',
- you're fine. Returns a variable-expanded version of 's'.
- """
-
- import warnings
- warnings.warn(
- 'sysconfig.expand_makefile_vars is deprecated and will be removed in '
- 'Python 3.16. Use sysconfig.get_paths(vars=...) instead.',
- DeprecationWarning,
- stacklevel=2,
- )
-
- import re
-
- _findvar1_rx = r"\$\(([A-Za-z][A-Za-z0-9_]*)\)"
- _findvar2_rx = r"\${([A-Za-z][A-Za-z0-9_]*)}"
-
- # This algorithm does multiple expansion, so if vars['foo'] contains
- # "${bar}", it will expand ${foo} to ${bar}, and then expand
- # ${bar}... and so forth. This is fine as long as 'vars' comes from
- # 'parse_makefile()', which takes care of such expansions eagerly,
- # according to make's variable expansion semantics.
-
- while True:
- m = re.search(_findvar1_rx, s) or re.search(_findvar2_rx, s)
- if m:
- (beg, end) = m.span()
- s = s[0:beg] + vars.get(m.group(1)) + s[end:]
- else:
- break
- return s
--- /dev/null
+Removed the :func:`!sysconfig.expand_makefile_vars` function which has been
+deprecated since Python 3.14. Use the ``vars`` argument of
+:func:`sysconfig.get_paths` instead.
{ 3550, 3599, L"3.13" },
{ 3600, 3649, L"3.14" },
{ 3650, 3699, L"3.15" },
+ { 3700, 3749, L"3.16" },
{ 0 }
};
the linking is explicitly handled */
# if defined(Py_GIL_DISABLED)
# if defined(Py_DEBUG)
-# pragma comment(lib,"python315t_d.lib")
+# pragma comment(lib,"python316t_d.lib")
# elif defined(Py_LIMITED_API) || defined(Py_TARGET_ABI3T)
# pragma comment(lib,"python3t.lib")
# else
-# pragma comment(lib,"python315t.lib")
+# pragma comment(lib,"python316t.lib")
# endif /* Py_DEBUG */
# else /* Py_GIL_DISABLED */
# if defined(Py_DEBUG)
-# pragma comment(lib,"python315_d.lib")
+# pragma comment(lib,"python316_d.lib")
# elif defined(Py_TARGET_ABI3T)
# pragma comment(lib,"python3t.lib")
# elif defined(Py_LIMITED_API)
# pragma comment(lib,"python3.lib")
# else
-# pragma comment(lib,"python315.lib")
+# pragma comment(lib,"python316.lib")
# endif /* Py_DEBUG */
# endif /* Py_GIL_DISABLED */
# endif /* _MSC_VER && !Py_NO_LINK_LIB */
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.72 for python 3.15.
+# Generated by GNU Autoconf 2.72 for python 3.16.
#
# Report bugs to <https://github.com/python/cpython/issues/>.
#
# Identity of this package.
PACKAGE_NAME='python'
PACKAGE_TARNAME='python'
-PACKAGE_VERSION='3.15'
-PACKAGE_STRING='python 3.15'
+PACKAGE_VERSION='3.16'
+PACKAGE_STRING='python 3.16'
PACKAGE_BUGREPORT='https://github.com/python/cpython/issues/'
PACKAGE_URL=''
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-'configure' configures python 3.15 to adapt to many kinds of systems.
+'configure' configures python 3.16 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of python 3.15:";;
+ short | recursive ) echo "Configuration of python 3.16:";;
esac
cat <<\_ACEOF
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-build-python=python3.15
+ --with-build-python=python3.16
path to build python binary for cross compiling
- (default: _bootstrap_python or python3.15)
+ (default: _bootstrap_python or python3.16)
--with-pkg-config=[yes|no|check]
use pkg-config to detect build options (default is
check)
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-python configure 3.15
+python configure 3.16
generated by GNU Autoconf 2.72
Copyright (C) 2023 Free Software Foundation, Inc.
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by python $as_me 3.15, which was
+It was created by python $as_me 3.16, which was
generated by GNU Autoconf 2.72. Invocation command line was
$ $0$ac_configure_args_raw
-for ac_prog in python$PACKAGE_VERSION python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 python3 python
+for ac_prog in python$PACKAGE_VERSION python3.16 python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 python3 python
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
mv confdefs.h.new confdefs.h
-VERSION=3.15
+VERSION=3.16
# Version number of Python's own shared library file.
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by python $as_me 3.15, which was
+This file was extended by python $as_me 3.16, which was
generated by GNU Autoconf 2.72. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-python config.status 3.15
+python config.status 3.16
configured by $0, generated by GNU Autoconf 2.72,
with options \\"\$ac_cs_config\\"