3501 Commits

Author SHA1 Message Date
Zachary Ware
e84015f846
[3.11] gh-123418: Update CI to use fresh OpenSSL releases (GH-123675) (#123699)
* [3.11] gh-123418: Update CI to use fresh OpenSSL releases (GH-123675)

Also adds openssl/openssl GitHub URL template for newer OpenSSL downloads
(cherry picked from commit 56b00f4705634af2861a8aa9c2eb5769012220f0)

Co-authored-by: Zachary Ware <zach@python.org>

* Adjust build_ubuntu_ssltests job to use cache for the correct OS version
2024-10-22 15:48:51 +00:00
Miss Islington (bot)
34e808ec6c
[3.11] gh-116576: Fix Tools/scripts/sortperf.py sorting the same list (GH-116577) (#116583)
gh-116576: Fix `Tools/scripts/sortperf.py` sorting the same list (GH-116577)
(cherry picked from commit 4704e55a71c859c5d17cc2747ba62f49da58ea2d)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-03-11 07:23:05 +00:00
Brett Cannon
4637a1fcbd
[3.11] GH-116313: get WASI builds to run under wasmtime 18 w/ WASI 0.2/preview2 primitives (GH-116327) (GH-116373) (GH-116384)
(cherry picked from commit 88fdb082d98104dd5612b06397f4c764a0936616)
2024-03-05 22:05:42 +00:00
Terry Jan Reedy
f4672e2569
[3.11] chore: fix typos (GH-116345) (#116375)
Co-authored-by: cui fliter <imcusg@gmail.com>
(cherry picked from commit e7ba6e9dbe5433b4a0bcb0658da6a68197c28630)
2024-03-05 20:33:59 +00:00
Miss Islington (bot)
7fa33187cb
[3.11] gh-116265: Remove obsolete sentence. (GH-116284) (#116332)
Remove sentence in Tools/c-analyzer/README referring to deleted
ignore-globals.txt.
(cherry picked from commit 88b5c665ee1624af1bc5097d3eb2af090b9cabed)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2024-03-04 22:27:14 +00:00
Miss Islington (bot)
862775bdc2
[3.11] GH-115978: Disable *readv() and *writev() on WASI (GH-116228) (GH-116232)
GH-115978: Disable `*readv()` and `*writev()` on WASI (GH-116228)

Wasmtime doesn't implement these functions in a way to pass test_posix (https://github.com/bytecodealliance/wasmtime/issues/7830).
(cherry picked from commit 5dc8c84d397110f9edfa56793ad8887b1f176d79)

Co-authored-by: Brett Cannon <brett@python.org>
2024-03-02 01:13:39 +00:00
Steve Dower
677356b7a6
gh-115554: Improved logic for handling multiple existing py.exe launcher installs (GH-116201) 2024-03-01 13:42:46 +00:00
Miss Islington (bot)
91262320da
[3.11] gh-108303: Move Lib/test/sortperf.py to Tools/scripts (GH-114687) (#115626)
gh-108303: Move `Lib/test/sortperf.py` to `Tools/scripts` (GH-114687)
(cherry picked from commit f9154f8f237e31e7c30f8698f980bee5e494f1e0)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2024-02-18 07:43:36 +00:00
Miss Islington (bot)
9bb3f56592
[3.11] [3.12] GH-113516: don't set LDSHARED when building for WASI (GH-115495) (GH-115496) (GH-115497)
[3.12] GH-113516: don't set `LDSHARED` when building for WASI (GH-115495) (GH-115496)
(cherry picked from commit 0e4f73b8e457b1efa57b735205e8e85a3d11d9f2)

Co-authored-by: Brett Cannon <brett@python.org>
2024-02-14 17:34:45 -08:00
Seth Michael Larson
e071b0d558
[3.11] Upgrade bundled libexpat to 2.6.0 (GH-115399) (GH-115468)
Manual backport due to code differences.
2024-02-14 18:29:27 +01:00
John Belmonte
b86fdf2222
[3.11] gh-114563: C decimal falls back to pydecimal for unsupported format strings (GH-114879) (GH-115384)
Immediate merits:
* eliminate complex workarounds for 'z' format support
  (NOTE: mpdecimal recently added 'z' support, so this becomes
  efficient in the long term.)
* fix 'z' format memory leak
* fix 'z' format applied to 'F'
* fix missing 'GH-' format support

Suggested and prototyped by Stefan Krah.

Fixes gh-114563, gh-91060

(cherry picked from commit 72340d15cdfdfa4796fdd7c702094c852c2b32d2)
(cherry picked from commit 09c98e4633848ce05df8621f41eb09954b55217a)

Co-authored-by: Stefan Krah <skrah@bytereef.org>
2024-02-13 10:38:06 +02:00
Erlend E. Aasland
ead9e784fb
[3.11] gh-115015: Argument Clinic: fix generated code for METH_METHOD methods without params (#115016) (#115069)
(cherry picked from commit 09096a1647913526a3d4fa69a9d2056ec82a8f37)
2024-02-06 11:21:00 +01:00
Ned Deily
319e69579e
[3.11] gh-109991: Update GitHub CI workflows to use OpenSSL 3.0.13. (GH-115057)
Also update multissltests to use 1.1.1w, 3.0.13, 3.1.5, and 3.2.1.
2024-02-05 23:02:10 -05:00
Miss Islington (bot)
706b40e892
[3.11] gh-65701: document that freeze doesn't work with framework builds on macOS (GH-113352) (#113361)
gh-65701: document that freeze doesn't work with framework builds on macOS (GH-113352)

* gh-65701: document that freeze doesn't work with framework builds on macOS

The framework install is inherently incompatible with freeze. Document
that that freeze doesn't work with framework builds and bail out
early when trying to run freeze anyway.

(cherry picked from commit df1eec3dae3b1eddff819fd70f58b03b3fbd0eda)

Co-authored-by: Ronald Oussoren <ronaldoussoren@mac.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2023-12-22 11:16:59 +01:00
Miss Islington (bot)
d099defc63
[3.11] gh-109408: Add the docs whitespace check from patchcheck to pre-commit (GH-109854) (#110595)
gh-109408: Add the docs whitespace check from patchcheck to pre-commit (GH-109854)
(cherry picked from commit 7426ed0347d66f7ef61ea7ae6c3163258b8fb128)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-10-10 08:36:28 +00:00
Miss Islington (bot)
4499e6caff
[3.11] gh-103053: Fix test_tools.test_freeze on FreeBSD (GH-110451) (#110457)
gh-103053: Fix test_tools.test_freeze on FreeBSD (GH-110451)

Fix test_tools.test_freeze on FreeBSD: run "make distclean" instead
of "make clean" in the copied source directory to remove also the
"python" program.

Other test_freeze changes:

* Log executed commands and directories, and the current directory.
* No longer uses make -C option to change the directory, instead use
  subprocess cwd parameter.
(cherry picked from commit a4baa9e8ac62cac3ea6363b15ea585b1998ea1f9)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-10-06 01:32:21 +00:00
Ned Deily
1fd6a73bd8
[3.11] gh-109991: Update GitHub CI workflows to use OpenSSL 3.0.11 and multissltests to use 1.1.1w, 3.0.11, and 3.1.3. (#110006)
(cherry picked from commit c88037d137a98d7c399c7bd74d5117b5bcae1543)
2023-09-28 01:31:17 -04:00
Victor Stinner
8ac20e5404
[3.11] gh-109615: Fix support test_copy_python_src_ignore() (#109958) (#109962)
gh-109615: Fix support test_copy_python_src_ignore() (#109958)

Fix the test when run on an installed Python: use "abs_srcdir" of
sysconfig, and skip the test if the Python source code cannot be
found.

* Tools/patchcheck/patchcheck.py, Tools/freeze/test/freeze.py and
  Lib/test/libregrtest/utils.py now first try to get "abs_srcdir"
  from sysconfig, before getting "srcdir" from sysconfig.
* test.pythoninfo logs sysconfig "abs_srcdir".

(cherry picked from commit b89ed9df39851348fbb1552294644f99f6b17d2c)
2023-09-27 11:00:22 +00:00
Victor Stinner
2423168604
[3.11] gh-109615: Fix test_tools.test_freeze SRCDIR (#109935) (#109951)
gh-109615: Fix test_tools.test_freeze SRCDIR (#109935)

Fix copy_source_tree() function of test_tools.test_freeze:

* Don't copy SRC_DIR/build/ anymore. This directory is modified by
  other tests running in parallel.
* Add test.support.copy_python_src_ignore().
* Use sysconfig to get the source directory.
* Use sysconfig.get_config_var() to get CONFIG_ARGS variable.

(cherry picked from commit 1512d6c6ee2a770afb339bbb74c1b990116f7f89)
2023-09-27 08:59:02 +00:00
Miss Islington (bot)
8ed9bda519
[3.11] gh-109098: Fuzz re module instead of internal sre (GH-109911) (GH-109933)
* Fix c-analyzer globals test failure
* Put globals exception in ignored.tsv
(cherry picked from commit a829356f86d597e4dfe92e236a6d711c8a464f16)

Co-authored-by: Ammar Askar <ammar@ammaraskar.com>
2023-09-27 09:15:40 +03:00
Victor Stinner
ed233ddc00
[3.11] gh-108740: Fix "make regen-all" race condition (#108741) (#109021)
gh-108740: Fix "make regen-all" race condition (#108741)

Fix a race condition in "make regen-all". The deepfreeze.c source and
files generated by Argument Clinic are now generated or updated
before generating "global objects". Previously, some identifiers may
miss depending on the order in which these files were generated.

* "make regen-global-objects": Make sure that deepfreeze.c is
  generated and up to date, and always run "make clinic".
* "make regen-deepfreeze" now only updates deepfreeze.c (C file).
  It doesn't build deepfreeze.o (object) anymore.
* Remove misleading messages in "make regen-global-objects" and
  "make clinic". They are now outdated, these commands are now
  safe to use.

Backport notes:

* Omit Doc/using/configure.rst changes.
* no need to change "make clinic", it didn't run
  generate_global_objects.py script before.

Co-authored-by: Erlend E. Aasland <erlend@python.org>
(cherry picked from commit db1ee6a19ab62191c16ecb732cb4dcaede98a902)
2023-09-06 23:00:30 +02:00
Miss Islington (bot)
d631b82311
[3.11] gh-109002: Ensure only one wheel for each vendored package (GH-109003) (#109006)
Output with one wheel:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
Verifying checksum for /Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl.
Expected digest: 7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be
Actual digest:   7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be
::notice file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Successfully verified the checksum of the pip wheel.
```

Output with two wheels:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-22.0.4-py3-none-any.whl::Found more than one wheel for package pip.

::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Found more than one wheel for package pip.
```

Output without wheels:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
::error file=::Could not find a pip wheel on disk.
```
(cherry picked from commit f8a047941f2e4a1848700c21d58a08c9ec6a9c68)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2023-09-06 20:01:25 +02:00
Hugo van Kemenade
d678ee7719
[3.11] Trim trailing whitespace and test on CI (GH-104275) (#108215) 2023-08-22 12:57:31 +03:00
Miss Islington (bot)
dd0a1f9da2
[3.11] gh-102507 Remove invisible pagebreak characters (GH-102531) (#108266)
gh-102507 Remove invisible pagebreak characters (GH-102531)
(cherry picked from commit b097925858c6975c73e989226cf278cc382c0416)

Co-authored-by: JosephSBoyle <48555120+JosephSBoyle@users.noreply.github.com>
Co-authored-by: AlexWaygood <alex.waygood@gmail.com>
2023-08-22 08:49:35 +00:00
Ned Deily
441797d4ff
[3.11] gh-107565: Update multissltests and GitHub CI workflows to use OpenSSL 1.1.1v, 3.0.10, and 3.1.2. (GH-108119) 2023-08-18 20:50:11 +00:00
Miss Islington (bot)
202efe1a3b
[3.11] Fix the long64 reader in umarshal.py (GH-107828) (GH-107850)
(cherry picked from commit 50bbc56009ae7303d2482f28eb62f2603664b58f)

Co-authored-by: Martin DeMello <martindemello@gmail.com>
2023-08-10 21:10:46 +00:00
Serhiy Storchaka
edaa0db93e
[3.11] gh-86457: Fix signature for code.replace() (GH-23199) (GH-107746)
Also add support of @text_signature in Argument Clinic.
(cherry picked from commit 0e6e32fb84b2f7cb668e0b9927637587081e38cd)
2023-08-09 06:12:02 +00:00
Charlie Zhao
a15d06c230
[3.11] gh-106263: Fix segfault in signaldict_repr in _decimal module (#… (#107490)
Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
(cherry picked from commit 3979150a0d406707f6d253d7c15fb32c1e005a77)
2023-07-31 15:52:23 +02:00
Erlend E. Aasland
00b65da493
[3.11] Docs: Argument Clinic: Restructure "Basic concepts and usage" (#106981) (#107327)
Split "Basic concepts and usage" into:

- Reference
  - Terminology
  - CLI reference

- Background
  - Basic concepts

(cherry picked from commit 2ad699002e3ce09e9fa41e333ac72f16a32d94de)

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
2023-07-27 01:26:04 +02:00
Erlend E. Aasland
63c945a3f5
[3.11] gh-106970: Fix Argument Clinic 'destination <name> clear' command (#106972) (#107059)
Add test for the 'destination <name> clear' command,
and the 'destination' directive in general.

Fix two bugs in 'destination <name> clear' command:

1. The text attribute of the allocator is called 'text', not '_text'
2. Return after processing the 'clear' command,
   instead of proceeding directly to the fail().

(cherry picked from commit 3372bcba9893030e4063a9264ec0b4d1b6166883)
2023-07-22 17:44:11 +00:00
Miss Islington (bot)
9aeb9d1e80
wasm: do not use inline comment in .editorconfig (GH-106610)
It is no longer valid since 0.15.0
https://github.com/editorconfig/specification/blob/v0.15/index.rstGH-no-inline-comments
(cherry picked from commit 64c0890b697783db9b3f67e3bb4dcee1165a0b9b)

Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
2023-07-16 16:03:24 +09:00
Miss Islington (bot)
9f8aa7a6d7
[3.11] gh-106368: Add tests for permutation helpers in Argument Clinic (GH-106407) (#106410)
Added new test class PermutationTests()
(cherry picked from commit 8f6df5e9cbc3a1689601714192aa6ecbb23e1927)

Co-authored-by: Erlend E. Aasland <erlend@python.org>
2023-07-04 14:17:26 +02:00
Miss Islington (bot)
966e0f6494
[3.11] gh-100340: Allows -Wno-int-conversion for wasm (GH-100341) (#106066)
(cherry picked from commit 75c8133efec035ec1083ebd8e7d43ef340c2e581)

Co-authored-by: Kushal Das <mail@kushaldas.in>
2023-06-28 09:27:59 +02:00
Miss Islington (bot)
9cc0533459
[3.11] Fix c-analyzer for GCC: ignore LANG env var (GH-106173) (#106177)
Fix c-analyzer for GCC: ignore LANG env var (GH-106173)

The c-analyzer doesn't support GCC localized messages, so just unset
the LANG environment variable.
(cherry picked from commit 1f74b9e933d546a015e8497e3b8728357196acc8)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-06-28 05:17:31 +02:00
Gregory P. Smith
a5d2b546c1
[3.11] gh-103142: Upgrade binary builds and CI to OpenSSL 1.1.1u (GH-105174) (#105200)
Upgrade builds to OpenSSL 1.1.1u.

This OpenSSL version addresses a pile if less-urgent CVEs since 1.1.1t.

The Mac/BuildScript/build-installer.py was already updated.

Also updates _ssl_data_111.h from OpenSSL 1.1.1u, _ssl_data_300.h from 3.0.9.

Manual edits to the _ssl_data_300.h file prevent it from removing any existing definitions in case those exist in some peoples builds and were important (avoiding regressions during backporting).

(cherry picked from commit ede89af)
2023-06-01 18:07:53 +00:00
Miss Islington (bot)
3b0747af90
gh-105146: Update links at end of Windows installer (uninstall/repair) (GH-105147)
(cherry picked from commit ed86e14b1672f32f0a31d72070e93d361ee0e2b4)

Co-authored-by: Steve Dower <steve.dower@python.org>
2023-05-31 22:42:57 +01:00
Pablo Galindo Salgado
58de2eb26b
[3.11] gh-102416: Do not memoize incorrectly loop rules in the parser (GH-102467). (#102473) 2023-03-06 17:13:28 +00:00
Miss Islington (bot)
3cc00127a2
gh-102151: Correctly fetch CONFIG_ARGS in Tools/freeze/test/freeze.py (GH-102152)
(cherry picked from commit c3a178398c199038f3a0891d09f0363ec73f3b38)

Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2023-02-23 06:36:28 -08:00
Miss Islington (bot)
fd155b9139
gh-101849: Add upgrade codes for old versions of launcher that ended up with later version numbers (GH-101877)
(cherry picked from commit 0c6fe81dce9d6bb1dce5e4503f1b42bc5355ba24)

Co-authored-by: Steve Dower <steve.dower@python.org>
2023-02-13 12:59:12 -08:00
Miss Islington (bot)
cec99ed1a7
gh-89792: Limit test_tools freeze test build parallelism based on the number of cores (GH-101841)
unhardcode freeze test build parallelism. base it on the number of cpus, don't use more than max(2, os.cpu_count()/3).
(cherry picked from commit dfc2e065a2e71011017077e549cd2f9bf4944c54)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-02-11 22:33:13 -08:00
Miss Islington (bot)
d17cc3dfeb
gh-89792: Prevent test_tools from copying 1000M of "source" in freeze test (GH-101837)
Prevent test_tools from copying 1000M of "source"

It doesn't need a git repo, just the checkout.  We skip .git metadata, Doc/build, Doc/venv, and `__pycache__` subdirs, that developers often have in their clients to reduce the size of the source tree copy ten-fold.

This should significantly reduce IO and presumably time on buildbots during this long test.
(cherry picked from commit 1d194235e4d5981b5fea25c75318d61189103a58)

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-02-11 21:18:07 -08:00
Steve Dower
52a03a0006
gh-101726: Update the OpenSSL version to 1.1.1t (GH-101727)
Fixes CVE-2023-0286 (High) and a couple of Medium security issues.
https://www.openssl.org/news/secadv/20230207.txt

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-02-09 19:28:59 +00:00
Pablo Galindo Salgado
31b82abb5c
[3.11] gh-101046: Fix a potential memory leak in the parser when raising MemoryError (GH-101051) (#101085)
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2023-01-16 23:48:51 +00:00
Eli Schwartz
d8073ee6f3
[3.11] gh-89419: gdb: fix bug causing AttributeError in py-locals when no frame is available (GH-100611) (#100738)
gh-89419: gdb: fix bug causing AttributeError in py-locals when no frame is available (GH-100611)

```
Unable to read information on python frame
Python Exception <class 'AttributeError'>: 'NoneType' object has no attribute 'co_name'
```

Regression in commit b4903afd4debbbd71dc49a2c8fefa74a3b6c6832. While
refactoring the code into a while loop, the previous early return when
no frame exists went missing. We have just printed a message that we
cannot get information about this, so the frame will be None, and we
cannot attempt to use it.

Discovered on python 3.11, in python 3.12a2 this should error out with
`.is_shim()` instead of `co_name`.

(cherry picked from commit 85869498331f7020e18bb243c89cd694f674b911)
2023-01-04 13:29:21 +05:30
Kumar Aditya
ebe428824d
[3.11] GH-100342: check for allocation failure in AC *args parsing (GH-100343). (#100568)
(cherry picked from commit 7cf164ad5e3c8c6af5ae8813ad6a784448605418)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
2022-12-28 10:11:27 +05:30
colorfulappl
a3dbd4c70e
[3.11] gh-64490: Fix bugs in argument clinic varargs processing (GH-32092) (#100368)
(cherry picked from commit 0da728387c99fe6c127b070f2d250dc5bdd62ee5)
2022-12-28 02:10:06 +01:00
Gregory P. Smith
341bdd6589
[3.11] gh-100454: Start running SSL tests with OpenSSL 3.1.0-beta1 (#100486)
[3.11] gh-100454: Start running SSL tests with OpenSSL 3.1.0-beta1 (GH-100456).
(cherry picked from commit a23cb72ac82372fac05ba36ce08923840ca0de06)

Co-authored-by: Illia Volochii <illia.volochii@gmail.com>
2022-12-24 12:12:04 -08:00
colorfulappl
ba8e30c56b
[3.11] gh-99240: Fix double-free bug in Argument Clinic str_converter generated code (GH-99241) (#100352)
(cherry picked from commit 8dbe08eb7c807f484fe9870f5b7f5ae2881fd966)

Fix double-free bug mentioned at GH-99240, by moving memory clean up out of "exit" label.
2022-12-20 15:49:53 +05:30
colorfulappl
c42a4ad587
[3.11] gh-64490: Fix refcount error when arguments are packed to tuple in argument clinic (GH-99233) (#100338)
(cherry picked from commit 69f6cc77d0f1664f983a83b6ae707d99a99f5c4f)
2022-12-19 15:18:49 +05:30
colorfulappl
dd323afea8
[3.11] gh-96002: Add functional test for Argument Clinic (GH-96178) (#100230)
(cherry picked from commit c450c8c9ed6e420025f39d0e4850a79f8160cdcd)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2022-12-17 12:04:54 +05:30