(cherry picked from commit d2ce6d708a9eaac4e546744ca4da359ee6901ebc)
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Emma Smith <emma@emmatyping.dev>
Co-authored-by: Author: Terry Jan Reedy <tjreedy@udel.edu>
Co-authored-by: Victor Stinner <vstinner@python.org>
gh-131189: Remove `curses` mention from `PYTHON_BASIC_REPL` docs (GH-140022)
The `curses` dependency for the default REPL has been removed
in 031645a88427d8c8df70ae96519b4d2d0ae550f7 (backport of
09dfb50f1b7c23bc48d86bd579671761bb8ca48b).
(cherry picked from commit 0344db8d60621705af88daa7ff65bde063271f99)
Co-authored-by: Bartosz Sławecki <bartosz@ilikepython.com>
gh-139823: Extend list of optional dependencies in `configure.rst` (GH-139826)
(cherry picked from commit 8f14bddeae8935817166c4f594466f42c9f14139)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Emma Smith <emma@emmatyping.dev>
Co-authored-by: Victor Stinner <vstinner@python.org>
gh-139573: Update OpenSSL in CI (GH-139577)
(cherry picked from commit 98e748b3a0d97bd2c785efc63693f971113b3b63)
Co-authored-by: Zachary Ware <zach@python.org>
gh-137242: Mention Android binary releases in documentation (GH-138305)
Adds a mention of binary releases to the Android documentation.
---------
(cherry picked from commit 594bdde9df6841f760cd54aa8cb8035b38f99c3a)
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Extend the documentation for disabling pymalloc with the `--without-pymalloc` flag regarding why it is worth to use it when enabling AddressSanitizer for Python build (which is done, e.g., in CPython's CI builds).
I have tested the CPython latest main build with both ASan and pymalloc enabled and it seems to work just fine. I did run the `python -m test` suite which didn't uncover any ASan crashes (though, it detected some memory leaks, which I believe are irrelevant here).
I have discussed ASan and this flag with @encukou on the CPython Core sprint on EuroPython 2025. We initially thought that the `--without-pymalloc` flag is needed for ASan builds due to the fact pymalloc must hit the begining of page when determining if the memory to be freed comes from pymalloc or was allocated by the system malloc. In other words, we thought, that ASan would crash CPython during free of big objects (allocated by system malloc). It may be that this was the case in the past, but it is not the case anymore as the `address_in_range` function used by pymalloc is annotated to be skipped from the ASan instrumentation.
(cherry picked from commit d19bb4471331ca2cb87b86e4c904bc9a2bafb044)
Co-authored-by: Disconnect3d <dominik.b.czarnota@gmail.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
The iOS testbed now treats the app_packages folder as a site folder. This ensures it is
on the path, but also ensures any .pth files are processed on app startup.
(cherry picked from commit b38810bab76c11ea09260a817b3354aebc2af580)
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
gh-135805: Document the X option and env var for controlling thread-local bytecode (GH-135868)
Document the X option and env var for controlling thread-local bytecode.
(cherry picked from commit fea5ccc55d8486300beb1d0254da030a4da10394)
Co-authored-by: mpage <mpage@meta.com>
Remove `experimental` qualification for free-threading in the document text. Note that images included in the document will be updated later in the release cycle.
(cherry picked from commit 7c685894cd9c2c669f09fad31365e3ad6c0c3861)
Co-authored-by: Ned Deily <nad@python.org>
---------
(cherry picked from commit f0799795994bfd9ab0740c4d70ac54270991ba47)
Co-authored-by: Donghee Na <donghee.na@python.org>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Co-authored-by: T. Wouters <thomas@python.org>
Modifies the environment handling and execution arguments of the Android management
script to support the compilation of third-party binaries, and the use of the testbed to
invoke third-party test code.
(cherry picked from commit 2e1544fd2b0cd46ba93fc51e3cdd47f4781d7499)
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
Further improves Advanced installation docs for PyManager (GH-134541)
(cherry picked from commit 99a9ab1c64dce26c0f2dce7621b4d7f75da69856)
Co-authored-by: Steve Dower <steve.dower@python.org>
Tiny doc fix to double up backslashes in a Windows filesystem path (GH-133828)
(cherry picked from commit e7741dd77392ac1fef1e12d86045b0d1d27ec1d9)
Co-authored-by: Tim Golden <mail@timgolden.me.uk>
This change to the core CPython repo:
* Adds PyManager support to PC/layout
* Adds a warning message to the legacy py.exe if subcommands are invoked
* Add deprecation message to traditional installer
* Updates using/windows docs
OpenSSL 3.4.1 mnemonics are not compatible with OpenSSL 3.4.0 ones since
they were renumbered [1, 2]. Consequently, `_ssl_data_34.h` is renamed to
`_ssl_data_340.h` and `_ssl_data_34.h` now contains OpenSSL 3.4.1 mnemonics.
We also refine the mnemonics that are selected, discarding those that are
mnemonic-like but should not be used as such. More precisely, we remove
the ERR_LIB_MASK and ERR_LIB_OFFSET entries from OpenSSL 1.1.1 data.
[1]: https://github.com/openssl/openssl/issues/26316
[2]: https://github.com/openssl/openssl/issues/26388
Make `warnings.catch_warnings()` use a context variable for holding
the warning filtering state if the `sys.flags.context_aware_warnings`
flag is set to true. This makes using the context manager thread-safe in
multi-threaded programs.
Add the `sys.flags.thread_inherit_context` flag. If true, starting a new
thread with `threading.Thread` will use a copy of the context
from the caller of `Thread.start()`.
Both these flags are set to true by default for the free-threaded build
and false for the default build.
Move the Python implementation of warnings.py into _py_warnings.py.
Make _contextvars a builtin module.
Co-authored-by: Kumar Aditya <kumaraditya@python.org>