summaryrefslogtreecommitdiffstats
path: root/PCbuild
Commit message (Collapse)AuthorAgeFilesLines
* [3.13] gh-137134: Update SQLite to 3.50.4 for binary releases (GH-137135) ↵Hugo van Kemenade2025-08-063-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | (#137455) gh-137134: Update SQLite to 3.50.4 for binary releases (GH-137135) * Update SQLite to 3.50.3 for binary releases. * macOS and Windows news entries. what about Android? * update sbom hash * newline fix via regen-sbom * news wording * Update SQLite to 3.50.4 for binary releases. * update 3.50.4.0.tar.gz hash in sbom & regen-sbom to fix whitespace * Postpone to a separate PR the build-installer changes to support additional hash types (cherry picked from commit 532c37695d03f84fc6d12f891d26b901ef402ac4) Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Ned Deily <nad@python.org>
* [3.13] gh-136759: revert rename `lock.h` to `pylock.h` (GH-137041) (#137075) ↵Kumar Aditya2025-07-282-4/+4
| | | | | | | (#137166) Revert "[3.13] gh-136759: rename `lock.h` to `pylock.h` (GH-137041) (#137075)" This reverts commit 74503acba7d6c563aeef307ccf2d0cee141838b0.
* [3.13] gh-136759: rename `lock.h` to `pylock.h` (GH-137041) (#137075)AN Long2025-07-242-4/+4
| | | | Rename `lock.h` to `pylock.h` to avoid conflicts with headers of other projects. (cherry picked from commit ec02db5caa546cb4759999453bd6efc1d517b95c)
* gh-134923: Use /GENPROFILE and /USEPROFILE for Windows PGO builds (GH-134924)Steve Dower2025-05-302-7/+6
|
* gh-134262: Add retries to downloads in PCbuild\get_external.py (GH-134820)Miss Islington (bot)2025-05-281-2/+21
| | | | | (cherry picked from commit e9d845b41dca9ad84b76ef777d05e647a4b4d8cd) Co-authored-by: Emma Smith <emma@emmatyping.dev>
* gh-131423: Update OpenSSL build tag to 3.0.16.2 to fix ARM64 crash (GH-132051)Miss Islington (bot)2025-04-032-2/+2
| | | | | (cherry picked from commit 24decb05ddda445d96f45e2cd0b39497318c98d4) Co-authored-by: Steve Dower <steve.dower@python.org>
* [3.13] gh-129917: Update installers to use SQLite 3.49.1 (GH-131025) (#131957)Miss Islington (bot)2025-03-313-3/+3
| | | | | | | | gh-129917: Update installers to use SQLite 3.49.1 (GH-131025) (cherry picked from commit 45a3ab5a81769eadd94da3e26eb9bb2f3ae80fb1) Co-authored-by: Erlend E. Aasland <erlend@python.org> Co-authored-by: Ned Deily <nad@python.org>
* gh-131423: Update to OpenSSL 3.0.16. (GH-131839)Steve Dower2025-03-285-35/+5
| | | | | The bin tag is 3.0.16.1 because we rebuilt without uplink support to fix gh-131804. This PR also prevents making calls that are now unsafe without uplink, and updates the tests to property interpret these failures as unsupported.
* [3.13] gh-111495: Add PyFile tests (#129449) (#129477)Victor Stinner2025-01-302-0/+2
| | | | | | | | | | | | | | | | | | gh-111495: Add PyFile tests (#129449) Add tests for the following functions in test_capi.test_file: * PyFile_FromFd() * PyFile_GetLine() * PyFile_NewStdPrinter() * PyFile_WriteObject() * PyFile_WriteString() * PyObject_AsFileDescriptor() Add Modules/_testlimitedcapi/file.c file. Remove test_embed.StdPrinterTests which became redundant. (cherry picked from commit 4ca9fc08f89bf7172d41e523d9e520eb1729ee8c)
* [3.13] gh-111495: Add more tests on PyEval C APIs (#122789) (#128987)Victor Stinner2025-01-182-0/+2
| | | | | | | | | | | | * gh-111495: Add more tests on PyEval C APIs (#122789) * Add Lib/test/test_capi/test_eval.py * Add Modules/_testlimitedcapi/eval.c (cherry picked from commit bf8b3746398ea756c97e3cf263d63ca3ce3a544e) * gh-111495: Fix refleaks in test_capi.test_eval tests (#122851) (cherry picked from commit b4a316087c32d83e375087fd35fc511bc430ee8b)
* [3.13] gh-128911: Add tests on the PyImport C API (#128915) (#128960)Victor Stinner2025-01-172-0/+2
| | | | | | | | | | | gh-128911: Add tests on the PyImport C API (#128915) * Add Modules/_testlimitedcapi/import.c * Add Lib/test/test_capi/test_import.py * Remove _testcapi.check_pyimport_addmodule(): tests already covered by newly added tests. Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> (cherry picked from commit d95ba9fa1110534b7247fa2ff12b90e930c93256)
* gh-126084: Fix venvwlauncher.exe to run pythonw.exe (GH-126088)Miss Islington (bot)2024-10-291-1/+1
| | | | | (cherry picked from commit 802d405ff1233a48004a7c9b302baa76291514d1) Co-authored-by: Christian Ullrich <chris@chrullrich.net>
* [3.13] gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-125795)Zachary Ware2024-10-213-5/+5
| | | (cherry picked from commit 9d8f2d8e08336695fdade5846da4bbcc3eb5f152)
* [3.13] gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125650)Miss Islington (bot)2024-10-171-1/+1
| | | | | (cherry picked from commit 0cb20f2e7e867d5c34fc17dd5b8e51e8b0020bb3) Co-authored-by: Wulian <xiguawulian@gmail.com>
* [3.13] gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123686)Miss Islington (bot)2024-09-042-4/+4
| | | | | (cherry picked from commit d2eafe2f48aac31aa8a152620bdfd0f2a274ee1d) Co-authored-by: Zachary Ware <zach@python.org>
* [3.13] gh-111495: Add tests for PyTuple C API (GH-118757) (GH-123371)Sergey B Kirpichev2024-08-272-0/+2
| | | | | | | (cherry picked from commit dbc1752d4107532d312c78263212e807a3674eb1) Co-authored-by: kalyanr <kalyan.ben10@live.com> Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.13] gh-122573: Require Python 3.10 or newer for Windows builds ↵Miss Islington (bot)2024-08-061-3/+3
| | | | | | | | | | | | | (GH-122574) (#122674) gh-122573: Require Python 3.10 or newer for Windows builds (GH-122574) Match statements in tooling require a more recent Python. Tools/cases_generator/*.py (and `Tools/jit/*.py` in 3.13+). (cherry picked from commit d0b92dd5ca46a10558857adeb7bb48ecf39fa783) Co-authored-by: Jonathan Protzenko <protz@microsoft.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> Co-authored-by: Gregory P. Smith <greg@krypto.org>
* Fixed regenerating files in a checkout path with spaces (GH-121384)Miss Islington (bot)2024-07-081-9/+9
| | | | | (cherry picked from commit 0e77540d86833f0a0ef964ab51f35be9bfb533f9) Co-authored-by: AraHaan <seandhunt_7@yahoo.com>
* [3.13] gh-112136: Restore removed _PyArg_Parser (GH-121262) (#121344)Miss Islington (bot)2024-07-032-0/+4
| | | | | | | | | | | | gh-112136: Restore removed _PyArg_Parser (GH-121262) Restore the private _PyArg_Parser structure and the private _PyArg_ParseTupleAndKeywordsFast() function, previously removed in Python 3.13 alpha 1. Recreate Include/cpython/modsupport.h header file. (cherry picked from commit f8373db153920b890c2e2dd8def249e8df63bcc6) Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.13] gh-120642: Move private PyCode APIs to the internal C API (#120643) ↵Victor Stinner2024-06-262-4/+0
| | | | | | | | | | | | | | | | | | | | | (#121043) gh-120642: Move private PyCode APIs to the internal C API (#120643) * Move _Py_CODEUNIT and related functions to pycore_code.h. * Move _Py_BackoffCounter to pycore_backoff.h. * Move Include/cpython/optimizer.h content to pycore_optimizer.h. * Remove Include/cpython/optimizer.h. * Remove PyUnstable_Replace_Executor(). Rename functions: * PyUnstable_GetExecutor() => _Py_GetExecutor() * PyUnstable_GetOptimizer() => _Py_GetOptimizer() * PyUnstable_SetOptimizer() => _Py_SetTier2Optimizer() * PyUnstable_Optimizer_NewCounter() => _PyOptimizer_NewCounter() * PyUnstable_Optimizer_NewUOpOptimizer() => _PyOptimizer_NewUOpOptimizer() (cherry picked from commit 9e4a81f00fef689c6e18a64245aa064eaadc7ac7)
* [3.13] gh-119344: Make critical section API public (GH-119353) (#120856)Sam Gross2024-06-212-0/+8
| | | | | | | | | | | This makes the following macros public as part of the non-limited C-API for locking a single object or two objects at once. * `Py_BEGIN_CRITICAL_SECTION(op)` / `Py_END_CRITICAL_SECTION()` * `Py_BEGIN_CRITICAL_SECTION2(a, b)` / `Py_END_CRITICAL_SECTION2()` The supporting functions and structs used by the macros are also exposed for cases where C macros are not available. (cherry picked from commit 8f17d69b7bc906e8407095317842cc0fd52cd84a)
* [3.13] gh-117511: Make PyMutex public in the non-limited API (GH-117731) ↵Sam Gross2024-06-202-0/+8
| | | | | (#120800) (cherry picked from commit 3af7263037de1d0ef63b070fc7bfc2cf042eaebe)
* gh-116145: Updated bundled Tcl/Tk on Windows to 8.6.14 (GH-117030)Miss Islington (bot)2024-05-312-4/+4
| | | | | (cherry picked from commit 0e8d35b931f41210483cc51c4169e9a943c7f166) Co-authored-by: Steve Dower <steve.dower@python.org>
* gh-118734: Fixes Windows build when Use_TIER2 is unspecified (#118735)Steve Dower2024-05-073-3/+3
|
* gh-118518: Allow perf to work without frame pointers (#112254)Pablo Galindo Salgado2024-05-054-0/+8
|
* gh-111997: C-API for signalling monitoring events (#116413)Irit Katriel2024-05-043-1/+5
|
* gh-115119: Update Windows installer to mpdecimal 4.0.0 (#118506)Erlend E. Aasland2024-05-032-2/+2
|
* gh-118335: Rename --experimental-interpreter on Windows to ↵Guido van Rossum2024-05-021-3/+3
| | | | | --experimental-jit-interpreter (#118497) Also fix docs for this in whatsnew.
* gh-118335: Configure Tier 2 interpreter at build time (#118339)Guido van Rossum2024-05-013-2/+16
| | | | | | | | | | | | | | | | | | | | | | The code for Tier 2 is now only compiled when configured with `--enable-experimental-jit[=yes|interpreter]`. We drop support for `PYTHON_UOPS` and -`Xuops`, but you can disable the interpreter or JIT at runtime by setting `PYTHON_JIT=0`. You can also build it without enabling it by default using `--enable-experimental-jit=yes-off`; enable with `PYTHON_JIT=1`. On Windows, the `build.bat` script supports `--experimental-jit`, `--experimental-jit-off`, `--experimental-interpreter`. In the C code, `_Py_JIT` is defined as before when the JIT is enabled; the new variable `_Py_TIER2` is defined when the JIT *or* the interpreter is enabled. It is actually a bitmask: 1: JIT; 2: default-off; 4: interpreter.
* gh-117139: Add header for tagged pointers (GH-118330)Ken Jin2024-04-302-0/+4
| | | | | --------- Co-authored-by: Sam Gross <655866+colesbury@users.noreply.github.com>
* gh-116122: Add SBOM generation to PCbuild/build.bat (GH-116138)Seth Michael Larson2024-04-301-2/+13
|
* gh-76785: Rename _xxsubinterpreters to _interpreters (gh-117791)Eric Snow2024-04-242-6/+6
| | | See https://discuss.python.org/t/pep-734-multiple-interpreters-in-the-stdlib/41147/26.
* gh-117968: Add tests for the part of the PyRun family of the C API (GH-117982)Serhiy Storchaka2024-04-172-0/+4
| | | | Co-authored-by: NGRsoftlab <78017794+NGRsoftlab@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-115009: Update Windows installer to use SQLite 3.45.3 (GH-117445)Mariusz Felisiak2024-04-163-3/+3
|
* gh-117494: extract the Instruction Sequence data structure into a separate ↵Irit Katriel2024-04-044-0/+10
| | | | file (#117496)
* gh-116968: Reimplement Tier 2 counters (#117144)Guido van Rossum2024-04-041-0/+1
| | | | | | | | | | | | Introduce a unified 16-bit backoff counter type (``_Py_BackoffCounter``), shared between the Tier 1 adaptive specializer and the Tier 2 optimizer. The API used for adaptive specialization counters is changed but the behavior is (supposed to be) identical. The behavior of the Tier 2 counters is changed: - There are no longer dynamic thresholds (we never varied these). - All counters now use the same exponential backoff. - The counter for ``JUMP_BACKWARD`` starts counting down from 16. - The ``temperature`` in side exits starts counting down from 64.
* gh-76785: Add PyInterpreterConfig Helpers (gh-117170)Eric Snow2024-04-024-0/+8
| | | These helpers make it easier to customize and inspect the config used to initialize interpreters. This is especially valuable in our tests. I found inspiration from the PyConfig API for the PyInterpreterConfig dict conversion stuff. As part of this PR I've also added a bunch of tests.
* gh-94808:Improve coverage of PyObject_Print (GH-98749)MonadChains2024-04-012-0/+4
|
* gh-117323: Make `cell` thread-safe in free-threaded builds (#117330)Sam Gross2024-03-292-0/+4
| | | Use critical sections to lock around accesses to cell contents. The critical sections are no-ops in the default (with GIL) build.
* gh-87193: Support bytes objects with refcount > 1 in _PyBytes_Resize() ↵Serhiy Storchaka2024-03-252-0/+4
| | | | | (GH-117160) Create a new bytes object and destroy the old one if it has refcount > 1.
* gh-76785: Drop PyInterpreterID_Type (gh-117101)Eric Snow2024-03-214-16/+0
| | | I added it quite a while ago as a strategy for managing interpreter lifetimes relative to the PEP 554 (now 734) implementation. Relatively recently I refactored that implementation to no longer rely on InterpreterID objects. Thus now I'm removing it.
* gh-115754: Add Py_GetConstant() function (#116883)Victor Stinner2024-03-212-0/+2
| | | | | | | | | | | | Add Py_GetConstant() and Py_GetConstantBorrowed() functions. In the limited C API version 3.13, getting Py_None, Py_False, Py_True, Py_Ellipsis and Py_NotImplemented singletons is now implemented as function calls at the stable ABI level to hide implementation details. Getting these constants still return borrowed references. Add _testlimitedcapi/object.c and test_capi/test_object.py to test Py_GetConstant() and Py_GetConstantBorrowed() functions.
* gh-116417: Move limited C API complex.c tests to _testlimitedcapi (#117014)Victor Stinner2024-03-192-0/+2
| | | | Split complex.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi.
* gh-116417: Move limited C API dict.c tests to _testlimitedcapi (#117006)Victor Stinner2024-03-192-0/+2
| | | | Split dict.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi.
* gh-116417: Move limited C API long.c tests to _testlimitedcapi (#117001)Victor Stinner2024-03-192-0/+3
| | | | | | | * Split long.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. * Move testcapi_long.h from Modules/_testcapi/ to Modules/_testlimitedcapi/. * Add MODULE__TESTLIMITEDCAPI_DEPS to Makefile.pre.in.
* gh-116417: Move limited C API unicode.c tests to _testlimitedcapi (#116993)Victor Stinner2024-03-192-0/+2
| | | | | | Split unicode.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. Update test_codecs.
* gh-116417: Move limited C API abstract.c tests to _testlimitedcapi (#116986)Victor Stinner2024-03-192-0/+4
| | | | | | | Split abstract.c and float.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. Update test_bytes and test_class.
* gh-116417: Move limited C API list.c tests to _testlimitedcapi (#116602)Victor Stinner2024-03-182-0/+4
| | | | | Split list.c and set.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi.
* gh-108716: Cleanup remaining deepfreeze infrastructure (#116919)Guido van Rossum2024-03-182-24/+0
| | | | | Keep Tools/build/deepfreeze.py around (we may repurpose it for deepfreezing non-code objects), and keep basic "clean" targets that remove the output of former deep-freeze activities, to keep the build directories of current devs clean.
* gh-115119: Switch Windows build to mpdecimal external (GH-115182)Zachary Ware2024-03-184-63/+75
| | | | | This includes adding what should be a relatively temporary `Modules/_decimal/windows/mpdecimal.h` shim to choose between `mpdecimal32vc.h` or `mpdecimal64vc.h` based on which of `CONFIG_64` or `CONFIG_32` is defined.