[Python-checkins] [3.12] gh-123646: Remove accidentally left ``lel.patch`` (GH-123647)
https://github.com/python/cpython/commit/4170bddbcf8d3f6554ddd4a16435a497c10dc252
commit: 4170bddbcf8d3f6554ddd4a16435a497c10dc252
branch: 3.12
author: Kirill Podoprigora
committer: zware
date: 2024-09-03T13:21:39-05:00
summary:
[3.12] gh-123646: Remove accidentally left ``lel.patch`` (GH-123647)
files:
D lel.patch
diff --git a/lel.patch b/lel.patch
deleted file mode 100644
index c525a7a00a9d2a..00
--- a/lel.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
-index 3118fb19846..9e0dee8cc38 100644
a/Parser/tokenizer.c
-+++ b/Parser/tokenizer.c
-@@ -65,7 +65,7 @@ static const char *type_comment_prefix = "# type: ";
-
- static struct tok_state *tok_new(void) {
- struct tok_state *tok =
-- (struct tok_state *)PyMem_Malloc(sizeof(struct tok_state));
-+ (struct tok_state *)PyMem_Calloc(1, sizeof(struct tok_state));
- if (tok == NULL)
- return NULL;
- tok->buf = tok->cur = tok->inp = NULL;
___
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]
[Python-checkins] gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123673)
https://github.com/python/cpython/commit/d2eafe2f48aac31aa8a152620bdfd0f2a274ee1d
commit: d2eafe2f48aac31aa8a152620bdfd0f2a274ee1d
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-04T17:08:02Z
summary:
gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123673)
files:
A Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
M Misc/externals.spdx.json
M PCbuild/get_externals.bat
M PCbuild/python.props
diff --git
a/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
b/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
new file mode 100644
index 00..c2b47dc40652dc
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
@@ -0,0 +1 @@
+Updated Windows build to use OpenSSL 3.0.15.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index 758d41910054ce..f7aea9e8f990ba 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -70,21 +70,21 @@
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"e6a77c273ebb284fedd8ea19b081fce74a9455936ffd47215f7c24713e2614b2"
+ "checksumValue":
"1550c87996a0858474a9dd179deab2c55eb73726b9a140b32865b02fd3d8a86b"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.13.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.15.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.13:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.15:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "openssl",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "3.0.13"
+ "versionInfo": "3.0.15"
},
{
"SPDXID": "SPDXRef-PACKAGE-sqlite",
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index 1927938ef0821c..a1a67966182863 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -53,7 +53,7 @@ echo.Fetching external libraries...
set libraries=
set libraries=%libraries% bzip2-1.0.8
if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4
-if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.13
+if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.15
set libraries=%libraries% mpdecimal-4.0.0
set libraries=%libraries% sqlite-3.45.3.0
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.14.0
@@ -77,7 +77,7 @@ echo.Fetching external binaries...
set binaries=
if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4
-if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.13
+if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.15
if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.14.0
if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 86fe8531d7df55..c8ecdb4515ae9a 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -75,8 +75,8 @@
$(libffiDir)$(ArchName)\
$(libffiOutDir)include
$(ExternalsDir)\mpdecimal-4.0.0\
-$(ExternalsDir)openssl-3.0.13\
-$(ExternalsDir)openssl-bin-3.0.13\$(ArchName)\
+$(ExternalsDir)openssl-3.0.15\
+$(ExternalsDir)openssl-bin-3.0.15\$(ArchName)\
$(opensslOutDir)include
$(ExternalsDir)\nasm-2.11.06\
$(ExternalsDir)\zlib-1.3.1\
___
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]
[Python-checkins] gh-123418: Update CI to use fresh OpenSSL releases (GH-123675)
https://github.com/python/cpython/commit/56b00f4705634af2861a8aa9c2eb5769012220f0
commit: 56b00f4705634af2861a8aa9c2eb5769012220f0
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-04T13:16:53-05:00
summary:
gh-123418: Update CI to use fresh OpenSSL releases (GH-123675)
Also adds openssl/openssl GitHub URL template for newer OpenSSL downloads
files:
A Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
M .github/workflows/build.yml
M .github/workflows/reusable-ubuntu.yml
M Tools/ssl/multissltests.py
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 4f3995a020e31b..efd3162731f77d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -202,7 +202,7 @@ jobs:
strategy:
fail-fast: false
matrix:
-openssl_ver: [1.1.1w, 3.0.13, 3.1.5, 3.2.1]
+openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3]
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
MULTISSL_DIR: ${{ github.workspace }}/multissl
@@ -266,7 +266,7 @@ jobs:
needs: check_source
if: needs.check_source.outputs.run_tests == 'true' &&
needs.check_source.outputs.run_hypothesis == 'true'
env:
- OPENSSL_VER: 3.0.13
+ OPENSSL_VER: 3.0.15
PYTHONSTRICTEXTENSIONBUILD: 1
steps:
- uses: actions/checkout@v4
@@ -380,7 +380,7 @@ jobs:
needs: check_source
if: needs.check_source.outputs.run_tests == 'true'
env:
- OPENSSL_VER: 3.0.13
+ OPENSSL_VER: 3.0.15
PYTHONSTRICTEXTENSIONBUILD: 1
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0
steps:
diff --git a/.github/workflows/reusable-ubuntu.yml
b/.github/workflows/reusable-ubuntu.yml
index 92069fddc31217..b197db814b2743 100644
--- a/.github/workflows/reusable-ubuntu.yml
+++ b/.github/workflows/reusable-ubuntu.yml
@@ -17,7 +17,7 @@ jobs:
runs-on: ubuntu-22.04
env:
FORCE_COLOR: 1
- OPENSSL_VER: 3.0.13
+ OPENSSL_VER: 3.0.15
PYTHONSTRICTEXTENSIONBUILD: 1
TERM: linux
steps:
diff --git
a/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
b/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
new file mode 100644
index 00..fb9ac9e4f96725
--- /dev/null
+++
b/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
@@ -0,0 +1,2 @@
+Update GitHub CI workflows to use OpenSSL 3.0.15 and multissltests to use
+3.0.15, 3.1.7, and 3.2.3.
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index baa16102068aa0..7baf9c29d408c8 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -47,9 +47,9 @@
OPENSSL_RECENT_VERSIONS = [
"1.1.1w",
-"3.0.13",
-"3.1.5",
-"3.2.1",
+"3.0.15",
+"3.1.7",
+"3.2.3",
]
LIBRESSL_OLD_VERSIONS = [
@@ -397,6 +397,7 @@ def run_python_tests(self, tests, network=True):
class BuildOpenSSL(AbstractBuilder):
library = "OpenSSL"
url_templates = (
+
"https://github.com/openssl/openssl/releases/download/openssl-{v}/openssl-{v}.tar.gz";,
"https://www.openssl.org/source/openssl-{v}.tar.gz";,
"https://www.openssl.org/source/old/{s}/openssl-{v}.tar.gz";
)
@@ -439,6 +440,7 @@ def short_version(self):
parsed = parsed[:2]
return ".".join(str(i) for i in parsed)
+
class BuildLibreSSL(AbstractBuilder):
library = "LibreSSL"
url_templates = (
___
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]
[Python-checkins] gh-123700: Update OpenSSL versions in multissltests and CI (#123701)
https://github.com/python/cpython/commit/d83e30caddcbf9482273743d287577517ec735b7
commit: d83e30caddcbf9482273743d287577517ec735b7
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-04T14:29:41-05:00
summary:
gh-123700: Update OpenSSL versions in multissltests and CI (#123701)
Remove EOL 1.1.1w from CI and move it to the 'old' set in multissltests,
add latest 3.3.2 to both CI and multissltests.
files:
M .github/workflows/build.yml
M Tools/ssl/multissltests.py
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index efd3162731f77d..e5f6fd47e7367b 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -202,7 +202,7 @@ jobs:
strategy:
fail-fast: false
matrix:
-openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3]
+openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2]
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
MULTISSL_DIR: ${{ github.workspace }}/multissl
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index 7baf9c29d408c8..eae0e0c5e8761f 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -43,13 +43,14 @@
log = logging.getLogger("multissl")
OPENSSL_OLD_VERSIONS = [
+"1.1.1w",
]
OPENSSL_RECENT_VERSIONS = [
-"1.1.1w",
"3.0.15",
"3.1.7",
"3.2.3",
+"3.3.2",
]
LIBRESSL_OLD_VERSIONS = [
___
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]
[Python-checkins] [3.13] gh-123418: Update CI to use fresh OpenSSL releases (GH-123696)
https://github.com/python/cpython/commit/e3b4564f6c23b8444fd95815642ee72e54dbd847 commit: e3b4564f6c23b8444fd95815642ee72e54dbd847 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-04T14:33:56-05:00 summary: [3.13] gh-123418: Update CI to use fresh OpenSSL releases (GH-123696) Also adds openssl/openssl GitHub URL template for newer OpenSSL downloads (cherry picked from commit 56b00f4705634af2861a8aa9c2eb5769012220f0) Co-authored-by: Zachary Ware files: A Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst M .github/workflows/build.yml M .github/workflows/reusable-ubuntu.yml M Tools/ssl/multissltests.py diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a0278bfd2cbf18..82224cced443bb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -245,7 +245,7 @@ jobs: strategy: fail-fast: false matrix: -openssl_ver: [1.1.1w, 3.0.13, 3.1.5, 3.2.1] +openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3] env: OPENSSL_VER: ${{ matrix.openssl_ver }} MULTISSL_DIR: ${{ github.workspace }}/multissl @@ -309,7 +309,7 @@ jobs: needs: check_source if: needs.check_source.outputs.run_tests == 'true' && needs.check_source.outputs.run_hypothesis == 'true' env: - OPENSSL_VER: 3.0.13 + OPENSSL_VER: 3.0.15 PYTHONSTRICTEXTENSIONBUILD: 1 steps: - uses: actions/checkout@v4 @@ -422,7 +422,7 @@ jobs: needs: check_source if: needs.check_source.outputs.run_tests == 'true' env: - OPENSSL_VER: 3.0.13 + OPENSSL_VER: 3.0.15 PYTHONSTRICTEXTENSIONBUILD: 1 ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0 steps: diff --git a/.github/workflows/reusable-ubuntu.yml b/.github/workflows/reusable-ubuntu.yml index 018a1d80497659..49845303645ee3 100644 --- a/.github/workflows/reusable-ubuntu.yml +++ b/.github/workflows/reusable-ubuntu.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-22.04 env: FORCE_COLOR: 1 - OPENSSL_VER: 3.0.13 + OPENSSL_VER: 3.0.15 PYTHONSTRICTEXTENSIONBUILD: 1 TERM: linux steps: diff --git a/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst b/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst new file mode 100644 index 00..fb9ac9e4f96725 --- /dev/null +++ b/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst @@ -0,0 +1,2 @@ +Update GitHub CI workflows to use OpenSSL 3.0.15 and multissltests to use +3.0.15, 3.1.7, and 3.2.3. diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py index baa16102068aa0..7baf9c29d408c8 100755 --- a/Tools/ssl/multissltests.py +++ b/Tools/ssl/multissltests.py @@ -47,9 +47,9 @@ OPENSSL_RECENT_VERSIONS = [ "1.1.1w", -"3.0.13", -"3.1.5", -"3.2.1", +"3.0.15", +"3.1.7", +"3.2.3", ] LIBRESSL_OLD_VERSIONS = [ @@ -397,6 +397,7 @@ def run_python_tests(self, tests, network=True): class BuildOpenSSL(AbstractBuilder): library = "OpenSSL" url_templates = ( + "https://github.com/openssl/openssl/releases/download/openssl-{v}/openssl-{v}.tar.gz";, "https://www.openssl.org/source/openssl-{v}.tar.gz";, "https://www.openssl.org/source/old/{s}/openssl-{v}.tar.gz"; ) @@ -439,6 +440,7 @@ def short_version(self): parsed = parsed[:2] return ".".join(str(i) for i in parsed) + class BuildLibreSSL(AbstractBuilder): library = "LibreSSL" url_templates = ( ___ 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]
[Python-checkins] [3.12] gh-123418: Update CI to use fresh OpenSSL releases (GH-123698)
https://github.com/python/cpython/commit/e094d61a155a4a3f380d07391f47cfd0886559b1
commit: e094d61a155a4a3f380d07391f47cfd0886559b1
branch: 3.12
author: Zachary Ware
committer: zware
date: 2024-09-04T14:37:09-05:00
summary:
[3.12] gh-123418: Update CI to use fresh OpenSSL releases (GH-123698)
Also adds openssl/openssl GitHub URL template for newer OpenSSL downloads
(cherry picked from commit 56b00f4705634af2861a8aa9c2eb5769012220f0)
files:
A Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
M .github/workflows/build.yml
M .github/workflows/reusable-ubuntu.yml
M Tools/ssl/multissltests.py
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index b10d3beaf53a67..4ec61918613938 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -255,7 +255,7 @@ jobs:
strategy:
fail-fast: false
matrix:
-openssl_ver: [1.1.1w, 3.0.13, 3.1.5, 3.2.1]
+openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3]
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
MULTISSL_DIR: ${{ github.workspace }}/multissl
@@ -311,7 +311,7 @@ jobs:
needs: check_source
if: needs.check_source.outputs.run_tests == 'true' &&
needs.check_source.outputs.run_hypothesis == 'true'
env:
- OPENSSL_VER: 3.0.13
+ OPENSSL_VER: 3.0.15
PYTHONSTRICTEXTENSIONBUILD: 1
steps:
- uses: actions/checkout@v4
@@ -424,7 +424,7 @@ jobs:
needs: check_source
if: needs.check_source.outputs.run_tests == 'true'
env:
- OPENSSL_VER: 3.0.13
+ OPENSSL_VER: 3.0.15
PYTHONSTRICTEXTENSIONBUILD: 1
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0
steps:
diff --git a/.github/workflows/reusable-ubuntu.yml
b/.github/workflows/reusable-ubuntu.yml
index dd47a380da1e77..d27653925342ed 100644
--- a/.github/workflows/reusable-ubuntu.yml
+++ b/.github/workflows/reusable-ubuntu.yml
@@ -16,7 +16,7 @@ jobs:
timeout-minutes: 60
runs-on: ubuntu-22.04
env:
- OPENSSL_VER: 3.0.13
+ OPENSSL_VER: 3.0.15
PYTHONSTRICTEXTENSIONBUILD: 1
steps:
- uses: actions/checkout@v4
diff --git
a/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
b/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
new file mode 100644
index 00..fb9ac9e4f96725
--- /dev/null
+++
b/Misc/NEWS.d/next/Tools-Demos/2024-09-04-10-07-51.gh-issue-123418.1eIFZb.rst
@@ -0,0 +1,2 @@
+Update GitHub CI workflows to use OpenSSL 3.0.15 and multissltests to use
+3.0.15, 3.1.7, and 3.2.3.
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index efc4b243f6456c..1d5a64a84883b9 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -47,9 +47,9 @@
OPENSSL_RECENT_VERSIONS = [
"1.1.1w",
-"3.0.13",
-"3.1.5",
-"3.2.1",
+"3.0.15",
+"3.1.7",
+"3.2.3",
]
LIBRESSL_OLD_VERSIONS = [
@@ -394,6 +394,7 @@ def run_python_tests(self, tests, network=True):
class BuildOpenSSL(AbstractBuilder):
library = "OpenSSL"
url_templates = (
+
"https://github.com/openssl/openssl/releases/download/openssl-{v}/openssl-{v}.tar.gz";,
"https://www.openssl.org/source/openssl-{v}.tar.gz";,
"https://www.openssl.org/source/old/{s}/openssl-{v}.tar.gz";
)
@@ -436,6 +437,7 @@ def short_version(self):
parsed = parsed[:2]
return ".".join(str(i) for i in parsed)
+
class BuildLibreSSL(AbstractBuilder):
library = "LibreSSL"
url_templates = (
___
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]
[Python-checkins] [3.13] gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123686)
https://github.com/python/cpython/commit/9b541ac9ac09a15b665c360b33e89cc5ce8b92c1 commit: 9b541ac9ac09a15b665c360b33e89cc5ce8b92c1 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-04T16:21:12-05:00 summary: [3.13] gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123686) (cherry picked from commit d2eafe2f48aac31aa8a152620bdfd0f2a274ee1d) Co-authored-by: Zachary Ware files: A Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst M Misc/externals.spdx.json M PCbuild/get_externals.bat M PCbuild/python.props diff --git a/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst b/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst new file mode 100644 index 00..c2b47dc40652dc --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst @@ -0,0 +1 @@ +Updated Windows build to use OpenSSL 3.0.15. diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json index 758d41910054ce..f7aea9e8f990ba 100644 --- a/Misc/externals.spdx.json +++ b/Misc/externals.spdx.json @@ -70,21 +70,21 @@ "checksums": [ { "algorithm": "SHA256", - "checksumValue": "e6a77c273ebb284fedd8ea19b081fce74a9455936ffd47215f7c24713e2614b2" + "checksumValue": "1550c87996a0858474a9dd179deab2c55eb73726b9a140b32865b02fd3d8a86b" } ], - "downloadLocation": "https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.13.tar.gz";, + "downloadLocation": "https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.15.tar.gz";, "externalRefs": [ { "referenceCategory": "SECURITY", - "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.13:*:*:*:*:*:*:*", + "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.15:*:*:*:*:*:*:*", "referenceType": "cpe23Type" } ], "licenseConcluded": "NOASSERTION", "name": "openssl", "primaryPackagePurpose": "SOURCE", - "versionInfo": "3.0.13" + "versionInfo": "3.0.15" }, { "SPDXID": "SPDXRef-PACKAGE-sqlite", diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 1927938ef0821c..a1a67966182863 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -53,7 +53,7 @@ echo.Fetching external libraries... set libraries= set libraries=%libraries% bzip2-1.0.8 if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4 -if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.13 +if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.15 set libraries=%libraries% mpdecimal-4.0.0 set libraries=%libraries% sqlite-3.45.3.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.14.0 @@ -77,7 +77,7 @@ echo.Fetching external binaries... set binaries= if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4 -if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.13 +if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.15 if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.14.0 if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06 diff --git a/PCbuild/python.props b/PCbuild/python.props index 86fe8531d7df55..c8ecdb4515ae9a 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -75,8 +75,8 @@ $(libffiDir)$(ArchName)\ $(libffiOutDir)include $(ExternalsDir)\mpdecimal-4.0.0\ -$(ExternalsDir)openssl-3.0.13\ -$(ExternalsDir)openssl-bin-3.0.13\$(ArchName)\ +$(ExternalsDir)openssl-3.0.15\ +$(ExternalsDir)openssl-bin-3.0.15\$(ArchName)\ $(opensslOutDir)include $(ExternalsDir)\nasm-2.11.06\ $(ExternalsDir)\zlib-1.3.1\ ___ 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]
[Python-checkins] [3.12] gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123691)
https://github.com/python/cpython/commit/e27406465fa9cef1d92f7962e41a8aaa9fb26765
commit: e27406465fa9cef1d92f7962e41a8aaa9fb26765
branch: 3.12
author: Zachary Ware
committer: zware
date: 2024-09-04T16:21:37-05:00
summary:
[3.12] gh-123418: Update OpenSSL to 3.0.15 on Windows (GH-123691)
(cherry picked from commit d2eafe2f48aac31aa8a152620bdfd0f2a274ee1d)
files:
A Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
M Misc/externals.spdx.json
M PCbuild/get_externals.bat
M PCbuild/python.props
diff --git
a/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
b/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
new file mode 100644
index 00..c2b47dc40652dc
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-09-04-09-59-18.gh-issue-123418.QaMC12.rst
@@ -0,0 +1 @@
+Updated Windows build to use OpenSSL 3.0.15.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index e905c2b907e736..6c711e74f94c79 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -48,21 +48,21 @@
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"e6a77c273ebb284fedd8ea19b081fce74a9455936ffd47215f7c24713e2614b2"
+ "checksumValue":
"1550c87996a0858474a9dd179deab2c55eb73726b9a140b32865b02fd3d8a86b"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.13.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.15.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.13:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.15:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "openssl",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "3.0.13"
+ "versionInfo": "3.0.15"
},
{
"SPDXID": "SPDXRef-PACKAGE-sqlite",
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index 1b741d6e49f28a..e0144bcdf18c10 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -53,7 +53,7 @@ echo.Fetching external libraries...
set libraries=
set libraries=%libraries% bzip2-1.0.8
if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4
-if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.13
+if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.15
set libraries=%libraries% sqlite-3.45.3.0
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.13.0
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.13.0
@@ -77,7 +77,7 @@ echo.Fetching external binaries...
set binaries=
if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4
-if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.13
+if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.15
if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.13.0
if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06
diff --git a/PCbuild/python.props b/PCbuild/python.props
index d799948fa31188..b893960f99619f 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -74,8 +74,8 @@
$(ExternalsDir)libffi-3.4.4\
$(libffiDir)$(ArchName)\
$(libffiOutDir)include
-$(ExternalsDir)openssl-3.0.13\
-$(ExternalsDir)openssl-bin-3.0.13\$(ArchName)\
+$(ExternalsDir)openssl-3.0.15\
+$(ExternalsDir)openssl-bin-3.0.15\$(ArchName)\
$(opensslOutDir)include
$(ExternalsDir)\nasm-2.11.06\
$(ExternalsDir)\zlib-1.3.1\
___
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]
[Python-checkins] [3.13] gh-123700: Update OpenSSL versions in multissltests and CI (GH-123702)
https://github.com/python/cpython/commit/ad944b5e1f304be1a8c2cc03e9f15005bcb97108 commit: ad944b5e1f304be1a8c2cc03e9f15005bcb97108 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-04T16:31:01-05:00 summary: [3.13] gh-123700: Update OpenSSL versions in multissltests and CI (GH-123702) Remove EOL 1.1.1w from CI and move it to the 'old' set in multissltests, add latest 3.3.2 to both CI and multissltests. (cherry picked from commit d83e30caddcbf9482273743d287577517ec735b7) Co-authored-by: Zachary Ware files: M .github/workflows/build.yml M Tools/ssl/multissltests.py diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 82224cced443bb..ecd94467ceaf50 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -245,7 +245,7 @@ jobs: strategy: fail-fast: false matrix: -openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3] +openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2] env: OPENSSL_VER: ${{ matrix.openssl_ver }} MULTISSL_DIR: ${{ github.workspace }}/multissl diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py index 7baf9c29d408c8..eae0e0c5e8761f 100755 --- a/Tools/ssl/multissltests.py +++ b/Tools/ssl/multissltests.py @@ -43,13 +43,14 @@ log = logging.getLogger("multissl") OPENSSL_OLD_VERSIONS = [ +"1.1.1w", ] OPENSSL_RECENT_VERSIONS = [ -"1.1.1w", "3.0.15", "3.1.7", "3.2.3", +"3.3.2", ] LIBRESSL_OLD_VERSIONS = [ ___ 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]
[Python-checkins] [3.12] gh-123700: Update OpenSSL versions in multissltests and CI (GH-123704)
https://github.com/python/cpython/commit/e75ecd0b424f2218e0591ae251a09365dcc4e731 commit: e75ecd0b424f2218e0591ae251a09365dcc4e731 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-04T16:31:28-05:00 summary: [3.12] gh-123700: Update OpenSSL versions in multissltests and CI (GH-123704) Remove EOL 1.1.1w from CI and move it to the 'old' set in multissltests, add latest 3.3.2 to both CI and multissltests. (cherry picked from commit d83e30caddcbf9482273743d287577517ec735b7) Co-authored-by: Zachary Ware files: M .github/workflows/build.yml M Tools/ssl/multissltests.py diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4ec61918613938..b1c8672af4e623 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -255,7 +255,7 @@ jobs: strategy: fail-fast: false matrix: -openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3] +openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2] env: OPENSSL_VER: ${{ matrix.openssl_ver }} MULTISSL_DIR: ${{ github.workspace }}/multissl diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py index 1d5a64a84883b9..2cab972a5f8e06 100755 --- a/Tools/ssl/multissltests.py +++ b/Tools/ssl/multissltests.py @@ -43,13 +43,14 @@ log = logging.getLogger("multissl") OPENSSL_OLD_VERSIONS = [ +"1.1.1w", ] OPENSSL_RECENT_VERSIONS = [ -"1.1.1w", "3.0.15", "3.1.7", "3.2.3", +"3.3.2", ] LIBRESSL_OLD_VERSIONS = [ ___ 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]
[Python-checkins] gh-123418: Update Android build to use OpenSSL 3.0.15 (GH-123685)
https://github.com/python/cpython/commit/1fdfce9452706a8a12ccdacff6d02c9231dc48ce
commit: 1fdfce9452706a8a12ccdacff6d02c9231dc48ce
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-04T17:42:58-05:00
summary:
gh-123418: Update Android build to use OpenSSL 3.0.15 (GH-123685)
files:
A Misc/NEWS.d/next/Build/2024-09-04-12-01-43.gh-issue-123418.ynzspB.rst
M Android/android.py
diff --git a/Android/android.py b/Android/android.py
index b5403b5d2a4a5e..bfa7832a4a83da 100755
--- a/Android/android.py
+++ b/Android/android.py
@@ -138,7 +138,7 @@ def make_build_python(context):
def unpack_deps(host):
deps_url =
"https://github.com/beeware/cpython-android-source-deps/releases/download";
-for name_ver in ["bzip2-1.0.8-1", "libffi-3.4.4-2", "openssl-3.0.13-1",
+for name_ver in ["bzip2-1.0.8-1", "libffi-3.4.4-2", "openssl-3.0.15-0",
"sqlite-3.45.1-0", "xz-5.4.6-0"]:
filename = f"{name_ver}-{host}.tar.gz"
download(f"{deps_url}/{name_ver}/{filename}")
diff --git
a/Misc/NEWS.d/next/Build/2024-09-04-12-01-43.gh-issue-123418.ynzspB.rst
b/Misc/NEWS.d/next/Build/2024-09-04-12-01-43.gh-issue-123418.ynzspB.rst
new file mode 100644
index 00..38d0e02f3ce404
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2024-09-04-12-01-43.gh-issue-123418.ynzspB.rst
@@ -0,0 +1 @@
+Updated Android build to use OpenSSL 3.0.15.
___
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]
[Python-checkins] subprocess docs: Fix semantically important typo (GH-119752)
https://github.com/python/cpython/commit/2cc3502f98bb9aea386ab55443fc077ddcdde91d commit: 2cc3502f98bb9aea386ab55443fc077ddcdde91d branch: main author: Zachary Ware committer: zware date: 2024-05-29T22:19:54Z summary: subprocess docs: Fix semantically important typo (GH-119752) GH-25416 accidentally replaced a reference to the *stderr* argument of `subprocess.run` with a reference to the *stdin* argument. *stdin* is not affected by the `check_output` option. files: M Doc/library/subprocess.rst diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst index d77dc8b04d01e4..3a2178e2b7b839 100644 --- a/Doc/library/subprocess.rst +++ b/Doc/library/subprocess.rst @@ -52,7 +52,7 @@ underlying :class:`Popen` interface can be used directly. If *capture_output* is true, stdout and stderr will be captured. When used, the internal :class:`Popen` object is automatically created with - *stdout* and *stdin* both set to :data:`~subprocess.PIPE`. + *stdout* and *stderr* both set to :data:`~subprocess.PIPE`. The *stdout* and *stderr* arguments may not be supplied at the same time as *capture_output*. If you wish to capture and combine both streams into one, set *stdout* to :data:`~subprocess.PIPE` ___ 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]
[Python-checkins] contextlib docs: Clean up redundant 'up' after 'cleanup' (GH-119867)
https://github.com/python/cpython/commit/f3fc800d5f17b144a752a262102b750bedcdaa14 commit: f3fc800d5f17b144a752a262102b750bedcdaa14 branch: main author: Zachary Ware committer: zware date: 2024-05-31T17:19:54Z summary: contextlib docs: Clean up redundant 'up' after 'cleanup' (GH-119867) Reported by Michael Kass on docs@ files: M Doc/library/contextlib.rst diff --git a/Doc/library/contextlib.rst b/Doc/library/contextlib.rst index 73e53aec9cbf1c..bad9da52d6a6ca 100644 --- a/Doc/library/contextlib.rst +++ b/Doc/library/contextlib.rst @@ -796,7 +796,7 @@ executing that callback:: if result: stack.pop_all() -This allows the intended cleanup up behaviour to be made explicit up front, +This allows the intended cleanup behaviour to be made explicit up front, rather than requiring a separate flag variable. If a particular application uses this pattern a lot, it can be simplified ___ 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]
[Python-checkins] [3.12] contextlib docs: Clean up redundant 'up' after 'cleanup' (GH-119873)
https://github.com/python/cpython/commit/2f7fada58091c518fd6784e108cce83bf6c310ac commit: 2f7fada58091c518fd6784e108cce83bf6c310ac branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-05-31T17:27:57Z summary: [3.12] contextlib docs: Clean up redundant 'up' after 'cleanup' (GH-119873) Reported by Michael Kass on docs@ (cherry picked from commit f3fc800d5f17b144a752a262102b750bedcdaa14) files: M Doc/library/contextlib.rst diff --git a/Doc/library/contextlib.rst b/Doc/library/contextlib.rst index 73e53aec9cbf1c..bad9da52d6a6ca 100644 --- a/Doc/library/contextlib.rst +++ b/Doc/library/contextlib.rst @@ -796,7 +796,7 @@ executing that callback:: if result: stack.pop_all() -This allows the intended cleanup up behaviour to be made explicit up front, +This allows the intended cleanup behaviour to be made explicit up front, rather than requiring a separate flag variable. If a particular application uses this pattern a lot, it can be simplified ___ 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]
[Python-checkins] [3.13] contextlib docs: Clean up redundant 'up' after 'cleanup' (GH-119872)
https://github.com/python/cpython/commit/eb5e19aa685fab3832b2a44ec5867068baf6e1a7 commit: eb5e19aa685fab3832b2a44ec5867068baf6e1a7 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-05-31T17:39:02Z summary: [3.13] contextlib docs: Clean up redundant 'up' after 'cleanup' (GH-119872) Reported by Michael Kass on docs@ (cherry picked from commit f3fc800d5f17b144a752a262102b750bedcdaa14) files: M Doc/library/contextlib.rst diff --git a/Doc/library/contextlib.rst b/Doc/library/contextlib.rst index 73e53aec9cbf1c..bad9da52d6a6ca 100644 --- a/Doc/library/contextlib.rst +++ b/Doc/library/contextlib.rst @@ -796,7 +796,7 @@ executing that callback:: if result: stack.pop_all() -This allows the intended cleanup up behaviour to be made explicit up front, +This allows the intended cleanup behaviour to be made explicit up front, rather than requiring a separate flag variable. If a particular application uses this pattern a lot, it can be simplified ___ 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]
[Python-checkins] gh-120078: Fix struct_time attr typo tm_day -> tm_mday in Doc/library/time.rst (GH-120081)
https://github.com/python/cpython/commit/b6b0dcbfc054f581b6f78602e4c2e9474e3efe21 commit: b6b0dcbfc054f581b6f78602e4c2e9474e3efe21 branch: main author: shurj0 <[email protected]> committer: zware date: 2024-06-04T19:23:12-05:00 summary: gh-120078: Fix struct_time attr typo tm_day -> tm_mday in Doc/library/time.rst (GH-120081) files: M Doc/library/time.rst diff --git a/Doc/library/time.rst b/Doc/library/time.rst index ef033d59d56185..4d7661715aa0af 100644 --- a/Doc/library/time.rst +++ b/Doc/library/time.rst @@ -617,7 +617,7 @@ Functions - range [1, 12] * - 2 -- .. attribute:: tm_day +- .. attribute:: tm_mday - range [1, 31] * - 3 ___ 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]
[Python-checkins] [3.12] gh-120078: Fix struct_time attr typo tm_day -> tm_mday in Doc/library/time.rst (GH-120084)
https://github.com/python/cpython/commit/c46621bf33f037c7f6d3fd8299bef02d4e186b70 commit: c46621bf33f037c7f6d3fd8299bef02d4e186b70 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-06-05T00:29:28Z summary: [3.12] gh-120078: Fix struct_time attr typo tm_day -> tm_mday in Doc/library/time.rst (GH-120084) (cherry picked from commit b6b0dcbfc054f581b6f78602e4c2e9474e3efe21) Co-authored-by: shurj0 <[email protected]> files: M Doc/library/time.rst diff --git a/Doc/library/time.rst b/Doc/library/time.rst index c53579bdd1284c..d792d5633dd6e0 100644 --- a/Doc/library/time.rst +++ b/Doc/library/time.rst @@ -594,7 +594,7 @@ Functions - range [1, 12] * - 2 -- .. attribute:: tm_day +- .. attribute:: tm_mday - range [1, 31] * - 3 ___ 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]
[Python-checkins] [3.13] gh-120078: Fix struct_time attr typo tm_day -> tm_mday in Doc/library/time.rst (GH-120085)
https://github.com/python/cpython/commit/df8a98abee44d22192d1900d8f62c12399e080ae commit: df8a98abee44d22192d1900d8f62c12399e080ae branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-06-05T00:39:54Z summary: [3.13] gh-120078: Fix struct_time attr typo tm_day -> tm_mday in Doc/library/time.rst (GH-120085) (cherry picked from commit b6b0dcbfc054f581b6f78602e4c2e9474e3efe21) Co-authored-by: shurj0 <[email protected]> files: M Doc/library/time.rst diff --git a/Doc/library/time.rst b/Doc/library/time.rst index ef033d59d56185..4d7661715aa0af 100644 --- a/Doc/library/time.rst +++ b/Doc/library/time.rst @@ -617,7 +617,7 @@ Functions - range [1, 12] * - 2 -- .. attribute:: tm_day +- .. attribute:: tm_mday - range [1, 31] * - 3 ___ 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]
[Python-checkins] gh-95144: Improve error message of `... in None` (GH-119888)
https://github.com/python/cpython/commit/dc03ce797ae8786a9711e6ee5dcaadde02c55864
commit: dc03ce797ae8786a9711e6ee5dcaadde02c55864
branch: main
author: Zachary Ware
committer: zware
date: 2024-07-12T16:34:17Z
summary:
gh-95144: Improve error message of `... in None` (GH-119888)
files:
A Misc/NEWS.d/next/Core and
Builtins/2022-07-22-15-56-35.gh-issue-95144.FZYWX-.rst
M Lib/test/test_contains.py
M Lib/test/test_sqlite3/test_dbapi.py
M Objects/abstract.c
diff --git a/Lib/test/test_contains.py b/Lib/test/test_contains.py
index 471d04a76ca4e4..259c954aa1d616 100644
--- a/Lib/test/test_contains.py
+++ b/Lib/test/test_contains.py
@@ -24,8 +24,11 @@ def test_common_tests(self):
self.assertNotIn(0, b)
self.assertIn(1, c)
self.assertNotIn(0, c)
-self.assertRaises(TypeError, lambda: 1 in a)
-self.assertRaises(TypeError, lambda: 1 not in a)
+msg = "argument of type 'base_set' is not a container or iterable"
+with self.assertRaisesRegex(TypeError, msg):
+1 in a
+with self.assertRaisesRegex(TypeError, msg):
+1 not in a
# test char in string
self.assertIn('c', 'abc')
diff --git a/Lib/test/test_sqlite3/test_dbapi.py
b/Lib/test/test_sqlite3/test_dbapi.py
index 293baccaf1831d..488b401fb0054d 100644
--- a/Lib/test/test_sqlite3/test_dbapi.py
+++ b/Lib/test/test_sqlite3/test_dbapi.py
@@ -1434,7 +1434,7 @@ def test_blob_sequence_not_supported(self):
self.blob + self.blob
with self.assertRaisesRegex(TypeError, "unsupported operand"):
self.blob * 5
-with self.assertRaisesRegex(TypeError, "is not iterable"):
+with self.assertRaisesRegex(TypeError, "is not.+iterable"):
b"a" in self.blob
def test_blob_context_manager(self):
diff --git a/Misc/NEWS.d/next/Core and
Builtins/2022-07-22-15-56-35.gh-issue-95144.FZYWX-.rst b/Misc/NEWS.d/next/Core
and Builtins/2022-07-22-15-56-35.gh-issue-95144.FZYWX-.rst
new file mode 100644
index 00..83b1126a8a455f
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and
Builtins/2022-07-22-15-56-35.gh-issue-95144.FZYWX-.rst
@@ -0,0 +1,2 @@
+Improve the error message from ``a in b`` when ``b`` is not a container
+to mention the term "container".
diff --git a/Objects/abstract.c b/Objects/abstract.c
index 200817064e3cda..afb068718bb010 100644
--- a/Objects/abstract.c
+++ b/Objects/abstract.c
@@ -2141,7 +2141,7 @@ PySequence_Fast(PyObject *v, const char *m)
PY_ITERSEARCH_COUNT: -1 if error, else # of times obj appears in seq.
PY_ITERSEARCH_INDEX: 0-based index of first occurrence of obj in seq;
set ValueError and return -1 if none found; also return -1 on error.
- Py_ITERSEARCH_CONTAINS: return 1 if obj in seq, else 0; -1 on error.
+ PY_ITERSEARCH_CONTAINS: return 1 if obj in seq, else 0; -1 on error.
*/
Py_ssize_t
_PySequence_IterSearch(PyObject *seq, PyObject *obj, int operation)
@@ -2158,7 +2158,15 @@ _PySequence_IterSearch(PyObject *seq, PyObject *obj, int
operation)
it = PyObject_GetIter(seq);
if (it == NULL) {
if (PyErr_ExceptionMatches(PyExc_TypeError)) {
-type_error("argument of type '%.200s' is not iterable", seq);
+if (operation == PY_ITERSEARCH_CONTAINS) {
+type_error(
+"argument of type '%.200s' is not a container or iterable",
+seq
+);
+}
+else {
+type_error("argument of type '%.200s' is not iterable", seq);
+}
}
return -1;
}
___
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]
[Python-checkins] gh-83648: Use versionadded in 'deprecated' description (GH-121877)
https://github.com/python/cpython/commit/4e35dd607b0f32657341e6c4f583d14964ee1699 commit: 4e35dd607b0f32657341e6c4f583d14964ee1699 branch: main author: Zachary Ware committer: zware date: 2024-07-16T21:26:17Z summary: gh-83648: Use versionadded in 'deprecated' description (GH-121877) files: M Doc/library/argparse.rst diff --git a/Doc/library/argparse.rst b/Doc/library/argparse.rst index 0367c83d9369d3..aa1341c8d4d4a8 100644 --- a/Doc/library/argparse.rst +++ b/Doc/library/argparse.rst @@ -1466,7 +1466,7 @@ printed to standard error when the argument is used:: snake.py: warning: option '--legs' is deprecated Namespace(legs=4) -.. versionchanged:: 3.13 +.. versionadded:: 3.13 Action classes ___ 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]
[Python-checkins] [3.13] gh-83648: Use versionadded in 'deprecated' description (GH-121878)
https://github.com/python/cpython/commit/b11a77668c8e2fd5dec4d59ef78ce4733b4a8e3a commit: b11a77668c8e2fd5dec4d59ef78ce4733b4a8e3a branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-07-16T21:43:40Z summary: [3.13] gh-83648: Use versionadded in 'deprecated' description (GH-121878) (cherry picked from commit 4e35dd607b0f32657341e6c4f583d14964ee1699) Authored-by: Zachary Ware files: M Doc/library/argparse.rst diff --git a/Doc/library/argparse.rst b/Doc/library/argparse.rst index 0367c83d9369d3..aa1341c8d4d4a8 100644 --- a/Doc/library/argparse.rst +++ b/Doc/library/argparse.rst @@ -1466,7 +1466,7 @@ printed to standard error when the argument is used:: snake.py: warning: option '--legs' is deprecated Namespace(legs=4) -.. versionchanged:: 3.13 +.. versionadded:: 3.13 Action classes ___ 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]
[Python-checkins] gh-112301: Add argument aliases and tee compiler output for check warnings (GH-122465)
https://github.com/python/cpython/commit/1cac0908fb6866c30b7fe106bc8d6cd03c7977f9
commit: 1cac0908fb6866c30b7fe106bc8d6cd03c7977f9
branch: main
author: Nate Ohlson
committer: zware
date: 2024-07-30T14:49:15-05:00
summary:
gh-112301: Add argument aliases and tee compiler output for check warnings
(GH-122465)
Also remove superfluous shebang from the warning check script
files:
M .github/workflows/reusable-ubuntu.yml
M Tools/build/check_warnings.py
diff --git a/.github/workflows/reusable-ubuntu.yml
b/.github/workflows/reusable-ubuntu.yml
index c6289a74e9a5f6..8dd5f559585368 100644
--- a/.github/workflows/reusable-ubuntu.yml
+++ b/.github/workflows/reusable-ubuntu.yml
@@ -75,7 +75,7 @@ jobs:
${{ fromJSON(inputs.free-threading) && '--disable-gil' || '' }}
- name: Build CPython out-of-tree
working-directory: ${{ env.CPYTHON_BUILDDIR }}
- run: make -j4 &> compiler_output.txt
+ run: set -o pipefail; make -j4 2>&1 | tee compiler_output.txt
- name: Display build info
working-directory: ${{ env.CPYTHON_BUILDDIR }}
run: make pythoninfo
diff --git a/Tools/build/check_warnings.py b/Tools/build/check_warnings.py
index f0c0067f4ab255..af9f7f169ad943 100644
--- a/Tools/build/check_warnings.py
+++ b/Tools/build/check_warnings.py
@@ -1,4 +1,3 @@
-#!/usr/bin/env python3
"""
Parses compiler output with -fdiagnostics-format=json and checks that warnings
exist only in files that are expected to have warnings.
@@ -114,24 +113,28 @@ def get_unexpected_improvements(
def main(argv: list[str] | None = None) -> int:
parser = argparse.ArgumentParser()
parser.add_argument(
+"-c",
"--compiler-output-file-path",
type=str,
required=True,
help="Path to the compiler output file",
)
parser.add_argument(
+"-i",
"--warning-ignore-file-path",
type=str,
required=True,
help="Path to the warning ignore file",
)
parser.add_argument(
+"-x",
"--fail-on-regression",
action="store_true",
default=False,
help="Flag to fail if new warnings are found",
)
parser.add_argument(
+"-X",
"--fail-on-improvement",
action="store_true",
default=False,
___
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]
[Python-checkins] gh-111239: Update Windows build to use zlib 1.3.1 (GH-114877)
https://github.com/python/cpython/commit/618d7256e78da8200f6e2c6235094a1ef885dca4 commit: 618d7256e78da8200f6e2c6235094a1ef885dca4 branch: main author: Zachary Ware committer: zware date: 2024-02-01T17:54:02-06:00 summary: gh-111239: Update Windows build to use zlib 1.3.1 (GH-114877) files: A Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst M PCbuild/get_externals.bat M PCbuild/python.props diff --git a/Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst b/Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst new file mode 100644 index 00..ea82c3b941f802 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2024-02-01-14-35-05.gh-issue-111239.SO7SUF.rst @@ -0,0 +1 @@ +Update Windows builds to use zlib v1.3.1. diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 3919c0592ec00d..de73d923d8f4df 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -58,7 +58,7 @@ set libraries=%libraries% sqlite-3.44.2.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.13.1 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.13.1 set libraries=%libraries% xz-5.2.5 -set libraries=%libraries% zlib-1.2.13 +set libraries=%libraries% zlib-1.3.1 for %%e in (%libraries%) do ( if exist "%EXTERNALS_DIR%\%%e" ( diff --git a/PCbuild/python.props b/PCbuild/python.props index e8796081c4eaf3..2cb16693e546b1 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -78,7 +78,7 @@ $(ExternalsDir)openssl-bin-3.0.11\$(ArchName)\ $(opensslOutDir)include $(ExternalsDir)\nasm-2.11.06\ -$(ExternalsDir)\zlib-1.2.13\ +$(ExternalsDir)\zlib-1.3.1\ ___ 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]
[Python-checkins] gh-114883: Fix Makefile dependency tree for non-jit builds (GH-114884)
https://github.com/python/cpython/commit/1032326fe46afaef57c3e01160a4f889dadfee95
commit: 1032326fe46afaef57c3e01160a4f889dadfee95
branch: main
author: Zachary Ware
committer: zware
date: 2024-02-03T23:16:03Z
summary:
gh-114883: Fix Makefile dependency tree for non-jit builds (GH-114884)
files:
M Makefile.pre.in
M configure
M configure.ac
diff --git a/Makefile.pre.in b/Makefile.pre.in
index fff3d3c4914e7a..aad637876ead80 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -2643,7 +2643,18 @@ config.status: $(srcdir)/configure
Python/asm_trampoline.o: $(srcdir)/Python/asm_trampoline.S
$(CC) -c $(PY_CORE_CFLAGS) -o $@ $<
-Python/jit.o: regen-jit
+
+JIT_DEPS = \
+ $(srcdir)/Tools/jit/*.c \
+ $(srcdir)/Tools/jit/*.py \
+ $(srcdir)/Python/executor_cases.c.h \
+ pyconfig.h
+
+jit_stencils.h: $(JIT_DEPS)
+ @REGEN_JIT_COMMAND@
+
+Python/jit.o: $(srcdir)/Python/jit.c @JIT_STENCILS_H@
+ $(CC) -c $(PY_CORE_CFLAGS) -o $@ $<
.PHONY: regen-jit
regen-jit:
diff --git a/configure b/configure
index 1d41d7ba66470d..0375565c294552 100755
--- a/configure
+++ b/configure
@@ -920,6 +920,7 @@ LLVM_AR
PROFILE_TASK
DEF_MAKE_RULE
DEF_MAKE_ALL_RULE
+JIT_STENCILS_H
REGEN_JIT_COMMAND
ABIFLAGS
LN
@@ -8019,12 +8020,14 @@ then :
else $as_nop
as_fn_append CFLAGS_NODIST " -D_Py_JIT"
REGEN_JIT_COMMAND="\$(PYTHON_FOR_REGEN)
\$(srcdir)/Tools/jit/build.py $host"
+ JIT_STENCILS_H="jit_stencils.h"
if test "x$Py_DEBUG" = xtrue
then :
as_fn_append REGEN_JIT_COMMAND " --debug"
fi
fi
+
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result:
$enable_experimental_jit" >&5
printf "%s\n" "$enable_experimental_jit" >&6; }
diff --git a/configure.ac b/configure.ac
index b29cd028f8f200..e121e893a1d0d9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1592,11 +1592,13 @@ AS_VAR_IF([enable_experimental_jit],
[AS_VAR_APPEND([CFLAGS_NODIST], [" -D_Py_JIT"])
AS_VAR_SET([REGEN_JIT_COMMAND],
["\$(PYTHON_FOR_REGEN) \$(srcdir)/Tools/jit/build.py
$host"])
+ AS_VAR_SET([JIT_STENCILS_H], ["jit_stencils.h"])
AS_VAR_IF([Py_DEBUG],
[true],
[AS_VAR_APPEND([REGEN_JIT_COMMAND], [" --debug"])],
[])])
AC_SUBST([REGEN_JIT_COMMAND])
+AC_SUBST([JIT_STENCILS_H])
AC_MSG_RESULT([$enable_experimental_jit])
# Enable optimization flags
___
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]
[Python-checkins] gh-109991: Update Windows build to use OpenSSL 3.0.13 (#115043)
https://github.com/python/cpython/commit/01dceba13e872e9ca24b8e00a2b75db3d0d6c1a3 commit: 01dceba13e872e9ca24b8e00a2b75db3d0d6c1a3 branch: main author: Zachary Ware committer: zware date: 2024-02-05T23:10:55Z summary: gh-109991: Update Windows build to use OpenSSL 3.0.13 (#115043) files: A Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst M PCbuild/get_externals.bat M PCbuild/python.props diff --git a/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst b/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst new file mode 100644 index 00..d9923c35c2726e --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst @@ -0,0 +1 @@ +Update Windows build to use OpenSSL 3.0.13. diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index de73d923d8f4df..0989bd46a580f7 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -53,7 +53,7 @@ echo.Fetching external libraries... set libraries= set libraries=%libraries% bzip2-1.0.8 if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4 -if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.11 +if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.13 set libraries=%libraries% sqlite-3.44.2.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.13.1 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.13.1 @@ -76,7 +76,7 @@ echo.Fetching external binaries... set binaries= if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4 -if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.11 +if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.13 if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.13.1 if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06 diff --git a/PCbuild/python.props b/PCbuild/python.props index 2cb16693e546b1..54553db4057288 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -74,8 +74,8 @@ $(ExternalsDir)libffi-3.4.4\ $(libffiDir)$(ArchName)\ $(libffiOutDir)include -$(ExternalsDir)openssl-3.0.11\ -$(ExternalsDir)openssl-bin-3.0.11\$(ArchName)\ +$(ExternalsDir)openssl-3.0.13\ +$(ExternalsDir)openssl-bin-3.0.13\$(ArchName)\ $(opensslOutDir)include $(ExternalsDir)\nasm-2.11.06\ $(ExternalsDir)\zlib-1.3.1\ ___ 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]
[Python-checkins] [3.12] gh-109991: Update Windows build to use OpenSSL 3.0.13 (#115047)
https://github.com/python/cpython/commit/b967eabedf2561d41c4be2f30dfd2e2cbd0e44bc commit: b967eabedf2561d41c4be2f30dfd2e2cbd0e44bc branch: 3.12 author: Zachary Ware committer: zware date: 2024-02-06T00:11:15Z summary: [3.12] gh-109991: Update Windows build to use OpenSSL 3.0.13 (#115047) (cherry picked from commit 01dceba13e872e9ca24b8e00a2b75db3d0d6c1a3) files: A Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst M PCbuild/get_externals.bat M PCbuild/python.props diff --git a/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst b/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst new file mode 100644 index 00..d9923c35c2726e --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst @@ -0,0 +1 @@ +Update Windows build to use OpenSSL 3.0.13. diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 2656aa4c03f09f..1b60e47c527505 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -53,7 +53,7 @@ echo.Fetching external libraries... set libraries= set libraries=%libraries% bzip2-1.0.8 if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4 -if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.11 +if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.13 set libraries=%libraries% sqlite-3.43.1.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.13.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.13.0 @@ -77,7 +77,7 @@ echo.Fetching external binaries... set binaries= if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4 -if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.11 +if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.13 if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.13.0 if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06 diff --git a/PCbuild/python.props b/PCbuild/python.props index 496bc3dd4cf794..9a003c6b8c1307 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -74,8 +74,8 @@ $(ExternalsDir)libffi-3.4.4\ $(libffiDir)$(ArchName)\ $(libffiOutDir)include -$(ExternalsDir)openssl-3.0.11\ -$(ExternalsDir)openssl-bin-3.0.11\$(ArchName)\ +$(ExternalsDir)openssl-3.0.13\ +$(ExternalsDir)openssl-bin-3.0.13\$(ArchName)\ $(opensslOutDir)include $(ExternalsDir)\nasm-2.11.06\ $(ExternalsDir)\zlib-1.2.13\ ___ 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]
[Python-checkins] [3.11] gh-109991: Update Windows build to use OpenSSL 3.0.13 (#115048)
https://github.com/python/cpython/commit/30d999fa509056bae8145e492dfb6a7e78666f59 commit: 30d999fa509056bae8145e492dfb6a7e78666f59 branch: 3.11 author: Zachary Ware committer: zware date: 2024-02-06T00:19:44Z summary: [3.11] gh-109991: Update Windows build to use OpenSSL 3.0.13 (#115048) (cherry picked from commit 01dceba13e872e9ca24b8e00a2b75db3d0d6c1a3) files: A Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst M PCbuild/get_externals.bat M PCbuild/python.props diff --git a/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst b/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst new file mode 100644 index 00..d9923c35c2726e --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2024-02-05-16-53-12.gh-issue-109991.YqjnDz.rst @@ -0,0 +1 @@ +Update Windows build to use OpenSSL 3.0.13. diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 5e2781e9757c4d..f29f39e617e941 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -53,7 +53,7 @@ echo.Fetching external libraries... set libraries= set libraries=%libraries% bzip2-1.0.8 if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4 -if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.11 +if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.13 set libraries=%libraries% sqlite-3.43.1.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.12.1 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.12.1 @@ -77,7 +77,7 @@ echo.Fetching external binaries... set binaries= if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4 -if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.11 +if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.13 if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.12.1 if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06 diff --git a/PCbuild/python.props b/PCbuild/python.props index 496bc3dd4cf794..9a003c6b8c1307 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -74,8 +74,8 @@ $(ExternalsDir)libffi-3.4.4\ $(libffiDir)$(ArchName)\ $(libffiOutDir)include -$(ExternalsDir)openssl-3.0.11\ -$(ExternalsDir)openssl-bin-3.0.11\$(ArchName)\ +$(ExternalsDir)openssl-3.0.13\ +$(ExternalsDir)openssl-bin-3.0.13\$(ArchName)\ $(opensslOutDir)include $(ExternalsDir)\nasm-2.11.06\ $(ExternalsDir)\zlib-1.2.13\ ___ 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]
[Python-checkins] gh-115119: Switch Windows build to mpdecimal external (GH-115182)
https://github.com/python/cpython/commit/849e0716d378d6f9f724d1b3c386f6613d52a49d
commit: 849e0716d378d6f9f724d1b3c386f6613d52a49d
branch: main
author: Zachary Ware
committer: zware
date: 2024-03-18T12:07:25-05:00
summary:
gh-115119: Switch Windows build to mpdecimal external (GH-115182)
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.
files:
A Misc/NEWS.d/next/Windows/2024-02-08-14-48-15.gh-issue-115119.qMt32O.rst
A Modules/_decimal/windows/mpdecimal.h
M Misc/externals.spdx.json
M PCbuild/_decimal.vcxproj
M PCbuild/_decimal.vcxproj.filters
M PCbuild/get_externals.bat
M PCbuild/python.props
diff --git
a/Misc/NEWS.d/next/Windows/2024-02-08-14-48-15.gh-issue-115119.qMt32O.rst
b/Misc/NEWS.d/next/Windows/2024-02-08-14-48-15.gh-issue-115119.qMt32O.rst
new file mode 100644
index 00..f95fed1084cf4f
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-02-08-14-48-15.gh-issue-115119.qMt32O.rst
@@ -0,0 +1,3 @@
+Switched from vendored ``libmpdecimal`` code to a separately-hosted external
+package in the ``cpython-source-deps`` repository when building the
+``_decimal`` module.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index 2acfccbb004d6b..6df6401835c6f1 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -43,6 +43,28 @@
"primaryPackagePurpose": "SOURCE",
"versionInfo": "3.4.4"
},
+{
+ "SPDXID": "SPDXRef-PACKAGE-mpdecimal",
+ "checksums": [
+{
+ "algorithm": "SHA256",
+ "checksumValue":
"93118043651ffa33dcaaab445bae4f8929fca25d2d749079b78e97f220c3d8b1"
+}
+ ],
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/mpdecimal-2.5.1.tar.gz";,
+ "externalRefs": [
+{
+ "referenceCategory": "SECURITY",
+ "referenceLocator":
"cpe:2.3:a:bytereef:mpdecimal:2.5.1:*:*:*:*:*:*:*",
+ "referenceType": "cpe23Type"
+}
+ ],
+ "licenseConcluded": "NOASSERTION",
+ "name": "mpdecimal",
+ "originator": "Organization: bytereef.org",
+ "primaryPackagePurpose": "SOURCE",
+ "versionInfo": "2.5.1"
+},
{
"SPDXID": "SPDXRef-PACKAGE-openssl",
"checksums": [
diff --git a/Modules/_decimal/windows/mpdecimal.h
b/Modules/_decimal/windows/mpdecimal.h
new file mode 100644
index 00..77bc6229fbc119
--- /dev/null
+++ b/Modules/_decimal/windows/mpdecimal.h
@@ -0,0 +1,17 @@
+/* Windows mpdecimal.h shim
+ *
+ * Generally, the mpdecimal library build will copy the correct header into
+ * place named "mpdecimal.h", but since we're building it ourselves directly
+ * into _decimal.pyd, we need to pick the right one.
+ *
+ * */
+
+#if defined(_MSC_VER)
+ #if defined(CONFIG_64)
+#include
+ #elif defined(CONFIG_32)
+#include
+ #else
+#error "Unknown configuration!"
+ #endif
+#endif
diff --git a/PCbuild/_decimal.vcxproj b/PCbuild/_decimal.vcxproj
index 490d7df87eb1c6..ee7421484b5312 100644
--- a/PCbuild/_decimal.vcxproj
+++ b/PCbuild/_decimal.vcxproj
@@ -93,51 +93,55 @@
-
_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
+
BUILD_LIBMPDEC;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
CONFIG_32;PPRO;MASM;%(PreprocessorDefinitions)
CONFIG_32;ANSI;%(PreprocessorDefinitions)
CONFIG_64;ANSI;%(PreprocessorDefinitions)
CONFIG_64;MASM;%(PreprocessorDefinitions)
-
..\Modules\_decimal;..\Modules\_decimal\libmpdec;%(AdditionalIncludeDirectories)
+
..\Modules\_decimal;..\Modules\_decimal\windows;$(mpdecimalDir)\libmpdec;%(AdditionalIncludeDirectories)
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
true
true
true
diff --git a/PCbuild/_decimal.vcxproj.filters b/PCbuild/_decimal.vcxproj.filters
index 0cbd3d0736c241..e4bdb64ec1fb9f 100644
--- a/PCbuild/_decimal.vcxproj.filters
+++ b/PCbuild/_decimal.vcxproj.filters
@@ -21,49 +21,55 @@
Header Files
-
+
Header Files\libmpdec
-
+
Header Files\libmpdec
-
+
Header Files\libmpdec
[Python-checkins] Remove references to private symbols from zipimport module docstring (GH-119015)
https://github.com/python/cpython/commit/7d722b7d3ac78bfa74a5d2f21513ffbf4f85cff2 commit: 7d722b7d3ac78bfa74a5d2f21513ffbf4f85cff2 branch: main author: Thomas Grainger committer: zware date: 2024-05-15T11:21:52-05:00 summary: Remove references to private symbols from zipimport module docstring (GH-119015) files: M Lib/zipimport.py diff --git a/Lib/zipimport.py b/Lib/zipimport.py index 4e41d109865e85..a49a21f0799df2 100644 --- a/Lib/zipimport.py +++ b/Lib/zipimport.py @@ -1,11 +1,9 @@ """zipimport provides support for importing Python modules from Zip archives. -This module exports three objects: +This module exports two objects: - zipimporter: a class; its constructor takes a path to a Zip archive. - ZipImportError: exception raised by zipimporter objects. It's a subclass of ImportError, so it can be caught as ImportError, too. -- _zip_directory_cache: a dict, mapping archive paths to zip directory - info dicts, as used in zipimporter._files. It is usually not needed to use the zipimport module explicitly; it is used by the builtin import mechanism for sys.path items that are paths ___ 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]
[Python-checkins] [3.13] Remove references to private symbols from zipimport module docstring (GH-119071)
https://github.com/python/cpython/commit/f85d59ccf8efb916cf516e65d0e550d068fd442e commit: f85d59ccf8efb916cf516e65d0e550d068fd442e branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-05-15T16:52:48Z summary: [3.13] Remove references to private symbols from zipimport module docstring (GH-119071) (cherry picked from commit 7d722b7d3ac78bfa74a5d2f21513ffbf4f85cff2) Co-authored-by: Thomas Grainger files: M Lib/zipimport.py diff --git a/Lib/zipimport.py b/Lib/zipimport.py index 4e41d109865e85..a49a21f0799df2 100644 --- a/Lib/zipimport.py +++ b/Lib/zipimport.py @@ -1,11 +1,9 @@ """zipimport provides support for importing Python modules from Zip archives. -This module exports three objects: +This module exports two objects: - zipimporter: a class; its constructor takes a path to a Zip archive. - ZipImportError: exception raised by zipimporter objects. It's a subclass of ImportError, so it can be caught as ImportError, too. -- _zip_directory_cache: a dict, mapping archive paths to zip directory - info dicts, as used in zipimporter._files. It is usually not needed to use the zipimport module explicitly; it is used by the builtin import mechanism for sys.path items that are paths ___ 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]
[Python-checkins] gh-125084: Resolve paths in generator common code (GH-125085)
https://github.com/python/cpython/commit/7dca7322cca7ff146444e56f28f21f1090987fff commit: 7dca7322cca7ff146444e56f28f21f1090987fff branch: main author: Cody Maloney committer: zware date: 2024-10-08T12:16:02-05:00 summary: gh-125084: Resolve paths in generator common code (GH-125085) In out of tree builds, the paths can contain `../ which needs to be resolved for the relative path calculation to work. files: M Tools/cases_generator/generators_common.py diff --git a/Tools/cases_generator/generators_common.py b/Tools/cases_generator/generators_common.py index f32a20b304c354..0bfa1a3b56fbc2 100644 --- a/Tools/cases_generator/generators_common.py +++ b/Tools/cases_generator/generators_common.py @@ -43,13 +43,13 @@ def peek(self) -> Token | None: break return self.look_ahead -ROOT = Path(__file__).parent.parent.parent -DEFAULT_INPUT = (ROOT / "Python/bytecodes.c").absolute().as_posix() +ROOT = Path(__file__).parent.parent.parent.resolve() +DEFAULT_INPUT = (ROOT / "Python/bytecodes.c").as_posix() def root_relative_path(filename: str) -> str: try: -return Path(filename).absolute().relative_to(ROOT).as_posix() +return Path(filename).resolve().relative_to(ROOT).as_posix() except ValueError: # Not relative to root, just return original path. return filename ___ 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]
[Python-checkins] gh-124722: Fix leak in `test_detach_materialized_dict_no_memory` (GH-124769)
https://github.com/python/cpython/commit/6f4d64b048133c60d40705fb5ef776f78c7dd710
commit: 6f4d64b048133c60d40705fb5ef776f78c7dd710
branch: main
author: sobolevn
committer: zware
date: 2024-09-29T20:47:45-05:00
summary:
gh-124722: Fix leak in `test_detach_materialized_dict_no_memory` (GH-124769)
files:
M Lib/test/test_class.py
diff --git a/Lib/test/test_class.py b/Lib/test/test_class.py
index d2b6a23cc3c10d..b88c4d16ba4ef4 100644
--- a/Lib/test/test_class.py
+++ b/Lib/test/test_class.py
@@ -1,7 +1,7 @@
"Test the functionality of Python classes implementing operators."
import unittest
-import test.support
+from test.support import cpython_only, import_helper, script_helper
testmeths = [
@@ -933,20 +933,36 @@ class C:
C.a = X()
C.a = X()
+@cpython_only
def test_detach_materialized_dict_no_memory(self):
-import _testcapi
-class A:
-def __init__(self):
-self.a = 1
-self.b = 2
-a = A()
-d = a.__dict__
-with test.support.catch_unraisable_exception() as ex:
-_testcapi.set_nomemory(0, 1)
-del a
-self.assertEqual(ex.unraisable.exc_type, MemoryError)
-with self.assertRaises(KeyError):
-d["a"]
+# Skip test if _testcapi is not available:
+import_helper.import_module('_testcapi')
+
+code = """if 1:
+import test.support
+import _testcapi
+
+class A:
+def __init__(self):
+self.a = 1
+self.b = 2
+a = A()
+d = a.__dict__
+with test.support.catch_unraisable_exception() as ex:
+_testcapi.set_nomemory(0, 1)
+del a
+assert ex.unraisable.exc_type is MemoryError
+try:
+d["a"]
+except KeyError:
+pass
+else:
+assert False, "KeyError not raised"
+"""
+rc, out, err = script_helper.assert_python_ok("-c", code)
+self.assertEqual(rc, 0)
+self.assertFalse(out, msg=out.decode('utf-8'))
+self.assertFalse(err, msg=err.decode('utf-8'))
if __name__ == '__main__':
unittest.main()
___
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]
[Python-checkins] gh-125766: Docs: minor rewording of installation on Linux section (GH-125743)
https://github.com/python/cpython/commit/d67bf2d89ab57f94608d7d2cf949dc4a8749485d commit: d67bf2d89ab57f94608d7d2cf949dc4a8749485d branch: main author: partev committer: zware date: 2024-10-21T16:18:10Z summary: gh-125766: Docs: minor rewording of installation on Linux section (GH-125743) files: M Doc/using/unix.rst diff --git a/Doc/using/unix.rst b/Doc/using/unix.rst index 58838c28e6eb86..a2bcdab09a9282 100644 --- a/Doc/using/unix.rst +++ b/Doc/using/unix.rst @@ -17,12 +17,12 @@ On Linux Python comes preinstalled on most Linux distributions, and is available as a package on all others. However there are certain features you might want to use -that are not available on your distro's package. You can easily compile the +that are not available on your distro's package. You can compile the latest version of Python from source. -In the event that Python doesn't come preinstalled and isn't in the repositories as -well, you can easily make packages for your own distro. Have a look at the -following links: +In the event that the latest version of Python doesn't come preinstalled and isn't +in the repositories as well, you can make packages for your own distro. Have a +look at the following links: .. seealso:: ___ 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]
[Python-checkins] [3.13] gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-125795)
https://github.com/python/cpython/commit/13baff76ad25bf50b3a1fecd2df2c93b6ee32a8d
commit: 13baff76ad25bf50b3a1fecd2df2c93b6ee32a8d
branch: 3.13
author: Zachary Ware
committer: zware
date: 2024-10-21T11:55:15-05:00
summary:
[3.13] gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-125795)
(cherry picked from commit 9d8f2d8e08336695fdade5846da4bbcc3eb5f152)
files:
A Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
M Misc/externals.spdx.json
M PCbuild/get_externals.bat
M PCbuild/readme.txt
M PCbuild/tcltk.props
diff --git
a/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
b/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
new file mode 100644
index 00..ca9845a8daea9d
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
@@ -0,0 +1 @@
+Updated bundled Tcl/Tk to 8.6.15.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index f7aea9e8f990ba..d54b1fbe251378 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -112,42 +112,42 @@
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"ad7623a44e1b6e42df47ba8f16b2b0435ac605650b5054077c4355a30473074c"
+ "checksumValue":
"4c23f0dd3efcbe6f3a22c503a68d147617bb30c4f5290f1eb3eaacf0b460440b"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tcl-core-8.6.14.0.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tcl-core-8.6.15.0.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.14.0:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.15.0:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "tcl-core",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "8.6.14.0"
+ "versionInfo": "8.6.15.0"
},
{
"SPDXID": "SPDXRef-PACKAGE-tk",
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"e8d5cbe97952037962518b69aba85e324d80aa189054c163ab0ee764a448e802"
+ "checksumValue":
"0ae56d39bca92865f338529557a1e56d110594184b6dc5a91339c5675751e264"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tk-8.6.14.0.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tk-8.6.15.0.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.14.0:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.15.0:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "tk",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "8.6.14.0"
+ "versionInfo": "8.6.15.0"
},
{
"SPDXID": "SPDXRef-PACKAGE-xz",
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index a1a67966182863..779880258c13c3 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -56,8 +56,8 @@ if NOT "%IncludeLibffiSrc%"=="false" set
libraries=%libraries% libffi-3.4.4
if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.15
set libraries=%libraries% mpdecimal-4.0.0
set libraries=%libraries% sqlite-3.45.3.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.14.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.14.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.15.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.15.0
set libraries=%libraries% xz-5.2.5
set libraries=%libraries% zlib-1.3.1
@@ -78,7 +78,7 @@ echo.Fetching external binaries...
[Python-checkins] [3.13] gh-125766: Docs: minor rewording of installation on Linux section (GH-125793)
https://github.com/python/cpython/commit/ace547867389021c3441096a3d07f20af21a4f4e commit: ace547867389021c3441096a3d07f20af21a4f4e branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-10-21T11:56:01-05:00 summary: [3.13] gh-125766: Docs: minor rewording of installation on Linux section (GH-125793) (cherry picked from commit d67bf2d89ab57f94608d7d2cf949dc4a8749485d) Co-authored-by: partev files: M Doc/using/unix.rst diff --git a/Doc/using/unix.rst b/Doc/using/unix.rst index 58838c28e6eb86..a2bcdab09a9282 100644 --- a/Doc/using/unix.rst +++ b/Doc/using/unix.rst @@ -17,12 +17,12 @@ On Linux Python comes preinstalled on most Linux distributions, and is available as a package on all others. However there are certain features you might want to use -that are not available on your distro's package. You can easily compile the +that are not available on your distro's package. You can compile the latest version of Python from source. -In the event that Python doesn't come preinstalled and isn't in the repositories as -well, you can easily make packages for your own distro. Have a look at the -following links: +In the event that the latest version of Python doesn't come preinstalled and isn't +in the repositories as well, you can make packages for your own distro. Have a +look at the following links: .. seealso:: ___ 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]
[Python-checkins] [3.12] gh-125766: Docs: minor rewording of installation on Linux section (GH-125794)
https://github.com/python/cpython/commit/cea93dbd99d4d19c1c8ec688d9411e59f1ba42d2 commit: cea93dbd99d4d19c1c8ec688d9411e59f1ba42d2 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-10-21T11:56:29-05:00 summary: [3.12] gh-125766: Docs: minor rewording of installation on Linux section (GH-125794) (cherry picked from commit d67bf2d89ab57f94608d7d2cf949dc4a8749485d) Co-authored-by: partev files: M Doc/using/unix.rst diff --git a/Doc/using/unix.rst b/Doc/using/unix.rst index 58838c28e6eb86..a2bcdab09a9282 100644 --- a/Doc/using/unix.rst +++ b/Doc/using/unix.rst @@ -17,12 +17,12 @@ On Linux Python comes preinstalled on most Linux distributions, and is available as a package on all others. However there are certain features you might want to use -that are not available on your distro's package. You can easily compile the +that are not available on your distro's package. You can compile the latest version of Python from source. -In the event that Python doesn't come preinstalled and isn't in the repositories as -well, you can easily make packages for your own distro. Have a look at the -following links: +In the event that the latest version of Python doesn't come preinstalled and isn't +in the repositories as well, you can make packages for your own distro. Have a +look at the following links: .. seealso:: ___ 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]
[Python-checkins] [3.12] gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-125796)
https://github.com/python/cpython/commit/7a2bd3d2adba2c95f316243dc477910e63f4e6ae
commit: 7a2bd3d2adba2c95f316243dc477910e63f4e6ae
branch: 3.12
author: Zachary Ware
committer: zware
date: 2024-10-21T21:44:56-05:00
summary:
[3.12] gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-125796)
(cherry picked from commit 9d8f2d8e08336695fdade5846da4bbcc3eb5f152)
files:
A Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
M Misc/externals.spdx.json
M PCbuild/get_externals.bat
M PCbuild/readme.txt
M PCbuild/tcltk.props
diff --git
a/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
b/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
new file mode 100644
index 00..ca9845a8daea9d
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
@@ -0,0 +1 @@
+Updated bundled Tcl/Tk to 8.6.15.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index 6c711e74f94c79..4219cd4fe4c953 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -90,42 +90,42 @@
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"6e33a88f116822167734cd72b693b5d30ced130a3cae6dc2ff696042f993bb42"
+ "checksumValue":
"4c23f0dd3efcbe6f3a22c503a68d147617bb30c4f5290f1eb3eaacf0b460440b"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tcl-core-8.6.13.0.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tcl-core-8.6.15.0.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.13.0:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.15.0:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "tcl-core",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "8.6.13.0"
+ "versionInfo": "8.6.15.0"
},
{
"SPDXID": "SPDXRef-PACKAGE-tk",
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"896c1f488bdd0159091bd5cce124b756dfdffa4a5350b7fd4d7d8e48421089a4"
+ "checksumValue":
"0ae56d39bca92865f338529557a1e56d110594184b6dc5a91339c5675751e264"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tk-8.6.13.0.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tk-8.6.15.0.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.13.0:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.15.0:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "tk",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "8.6.13.0"
+ "versionInfo": "8.6.15.0"
},
{
"SPDXID": "SPDXRef-PACKAGE-tix",
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index e0144bcdf18c10..fa99d03e51ffe6 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -55,8 +55,8 @@ set libraries=%libraries%
bzip2-1.0.8
if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4
if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.15
set libraries=%libraries% sqlite-3.45.3.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.13.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.13.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.15.0
+if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.15.0
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tix-8.4.3.6
set libraries=%libraries% xz-5.2.5
set libraries=%libraries%
[Python-checkins] gh-125615: Fix grammar nit in tutorial's interactive interpreter appendix (GH-125617)
https://github.com/python/cpython/commit/aab3210271136ad8e8fecd927b806602c463e1f2 commit: aab3210271136ad8e8fecd927b806602c463e1f2 branch: main author: Cornelius Roemer committer: zware date: 2024-10-16T15:53:30-05:00 summary: gh-125615: Fix grammar nit in tutorial's interactive interpreter appendix (GH-125617) Replace "without ... nor" with "with neither ... nor" files: M Doc/tutorial/appendix.rst diff --git a/Doc/tutorial/appendix.rst b/Doc/tutorial/appendix.rst index da664f2f360ff1..6a1611afadb57c 100644 --- a/Doc/tutorial/appendix.rst +++ b/Doc/tutorial/appendix.rst @@ -20,7 +20,7 @@ This one supports color, multiline editing, history browsing, and paste mode. To disable color, see :ref:`using-on-controlling-color` for details. Function keys provide some additional functionality. :kbd:`F1` enters the interactive help browser :mod:`pydoc`. -:kbd:`F2` allows for browsing command-line history without output nor the +:kbd:`F2` allows for browsing command-line history with neither output nor the :term:`>>>` and :term:`...` prompts. :kbd:`F3` enters "paste mode", which makes pasting larger blocks of code easier. Press :kbd:`F3` to return to the regular prompt. ___ 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]
[Python-checkins] [3.13] gh-125615: Fix grammar nit in tutorial's interactive interpreter appendix (GH-125619)
https://github.com/python/cpython/commit/ca9bbafb492815bcb10c4c9e4eba080c60c81e2a commit: ca9bbafb492815bcb10c4c9e4eba080c60c81e2a branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-10-16T20:58:49Z summary: [3.13] gh-125615: Fix grammar nit in tutorial's interactive interpreter appendix (GH-125619) Replace "without ... nor" with "with neither ... nor" (cherry picked from commit aab3210271136ad8e8fecd927b806602c463e1f2) Authored-by: Cornelius Roemer files: M Doc/tutorial/appendix.rst diff --git a/Doc/tutorial/appendix.rst b/Doc/tutorial/appendix.rst index da664f2f360ff1..6a1611afadb57c 100644 --- a/Doc/tutorial/appendix.rst +++ b/Doc/tutorial/appendix.rst @@ -20,7 +20,7 @@ This one supports color, multiline editing, history browsing, and paste mode. To disable color, see :ref:`using-on-controlling-color` for details. Function keys provide some additional functionality. :kbd:`F1` enters the interactive help browser :mod:`pydoc`. -:kbd:`F2` allows for browsing command-line history without output nor the +:kbd:`F2` allows for browsing command-line history with neither output nor the :term:`>>>` and :term:`...` prompts. :kbd:`F3` enters "paste mode", which makes pasting larger blocks of code easier. Press :kbd:`F3` to return to the regular prompt. ___ 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]
[Python-checkins] gh-125017: Fix refleak from GH-125636 (GH-125664)
https://github.com/python/cpython/commit/c3164ae3cf4e8f9ccc4df8ea5f5664c5927ea839
commit: c3164ae3cf4e8f9ccc4df8ea5f5664c5927ea839
branch: main
author: Zachary Ware
committer: zware
date: 2024-10-17T17:21:32-05:00
summary:
gh-125017: Fix refleak from GH-125636 (GH-125664)
files:
M Objects/funcobject.c
diff --git a/Objects/funcobject.c b/Objects/funcobject.c
index f86ef32f1827bf..3cb247691386bf 100644
--- a/Objects/funcobject.c
+++ b/Objects/funcobject.c
@@ -1264,6 +1264,7 @@ descriptor_set_wrapped_attribute(PyObject *oobj, PyObject
*name, PyObject *value
PyErr_Format(PyExc_AttributeError,
"'%.200s' object has no attribute '%U'",
type_name, name);
+Py_DECREF(dict);
return -1;
}
else {
___
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]
[Python-checkins] gh-121938: ctypes: Skip test of _pack_-ed struct with c_int64 on x86 (GH-125877)
https://github.com/python/cpython/commit/13c9fa3d64e0653d696daad716703ef05fd5002b
commit: 13c9fa3d64e0653d696daad716703ef05fd5002b
branch: main
author: Petr Viktorin
committer: zware
date: 2024-10-23T16:37:06-05:00
summary:
gh-121938: ctypes: Skip test of _pack_-ed struct with c_int64 on x86 (GH-125877)
The current auto-generated tests don't cover this; it's instead
tested manually.
files:
M Lib/test/test_ctypes/test_generated_structs.py
diff --git a/Lib/test/test_ctypes/test_generated_structs.py
b/Lib/test/test_ctypes/test_generated_structs.py
index cbd73c4e911e4e..d61754d6d49e70 100644
--- a/Lib/test/test_ctypes/test_generated_structs.py
+++ b/Lib/test/test_ctypes/test_generated_structs.py
@@ -135,6 +135,18 @@ class Packed3(Structure):
@register()
class Packed4(Structure):
+def _maybe_skip():
+# `_pack_` enables MSVC-style packing, but keeps platform-specific
+# alignments.
+# The C code we generate for GCC/clang currently uses
+# `__attribute__((ms_struct))`, which activates MSVC layout *and*
+# alignments, that is, sizeof(basic type) == alignment(basic type).
+# On a Pentium, int64 is 32-bit aligned, so the two won't match.
+# The expected behavior is instead tested in
+# StructureTestCase.test_packed, over in test_structures.py.
+if sizeof(c_int64) != alignment(c_int64):
+raise unittest.SkipTest('cannot test on this platform')
+
_fields_ = [('a', c_int8), ('b', c_int64)]
_pack_ = 8
@@ -436,6 +448,8 @@ def test_generated_data(self):
"""
for name, cls in TESTCASES.items():
with self.subTest(name=name):
+if _maybe_skip := getattr(cls, '_maybe_skip', None):
+_maybe_skip()
expected = iter(_ctypes_test.get_generated_test_data(name))
expected_name = next(expected)
if expected_name is None:
___
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]
[Python-checkins] Fix `make htmllive` target (GH-124219)
https://github.com/python/cpython/commit/9a6e2336e4b54fc13064b77826a67b03b3b45133
commit: 9a6e2336e4b54fc13064b77826a67b03b3b45133
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-18T21:02:20Z
summary:
Fix `make htmllive` target (GH-124219)
Allow `make -C Doc htmllive` to work without manual venv activation
Set PATH to ensure that `sphinx-autobuild` can find `sphinx-build`.
files:
M Doc/Makefile
diff --git a/Doc/Makefile b/Doc/Makefile
index 505b8953b50b32..fc0d1e4d9a2a55 100644
--- a/Doc/Makefile
+++ b/Doc/Makefile
@@ -152,7 +152,7 @@ htmlview: html
$(PYTHON) -c "import os, webbrowser; webbrowser.open('file://' +
os.path.realpath('build/html/index.html'))"
.PHONY: htmllive
-htmllive: SPHINXBUILD = $(VENVDIR)/bin/sphinx-autobuild
+htmllive: SPHINXBUILD = PATH=$(VENVDIR)/bin:$$PATH sphinx-autobuild
htmllive: SPHINXOPTS = --re-ignore="/venv/" --open-browser --delay 0
htmllive: _ensure-sphinx-autobuild html
___
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]
[Python-checkins] [3.12] Fix `make htmllive` target (GH-124222)
https://github.com/python/cpython/commit/2216c52828d96f19226f69efadff817ec0e36dcd commit: 2216c52828d96f19226f69efadff817ec0e36dcd branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-18T16:12:17-05:00 summary: [3.12] Fix `make htmllive` target (GH-124222) Allow `make -C Doc htmllive` to work without manual venv activation Set PATH to ensure that `sphinx-autobuild` can find `sphinx-build`. (cherry picked from commit 9a6e2336e4b54fc13064b77826a67b03b3b45133) Authored-by: Zachary Ware files: M Doc/Makefile diff --git a/Doc/Makefile b/Doc/Makefile index 4a515d5a92a0b6..3d39766b3cb08f 100644 --- a/Doc/Makefile +++ b/Doc/Makefile @@ -152,7 +152,7 @@ htmlview: html $(PYTHON) -c "import os, webbrowser; webbrowser.open('file://' + os.path.realpath('build/html/index.html'))" .PHONY: htmllive -htmllive: SPHINXBUILD = $(VENVDIR)/bin/sphinx-autobuild +htmllive: SPHINXBUILD = PATH=$(VENVDIR)/bin:$$PATH sphinx-autobuild htmllive: SPHINXOPTS = --re-ignore="/venv/" --open-browser --delay 0 htmllive: _ensure-sphinx-autobuild html ___ 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]
[Python-checkins] gh-124378: Update test_ttk for Tcl/Tk 8.6.15 (GH-124542)
https://github.com/python/cpython/commit/fb6bd31cb74d2f7e7b525ee4fe9f45475fc94ce9 commit: fb6bd31cb74d2f7e7b525ee4fe9f45475fc94ce9 branch: main author: Zachary Ware committer: zware date: 2024-09-25T20:16:32Z summary: gh-124378: Update test_ttk for Tcl/Tk 8.6.15 (GH-124542) Co-authored-by: Marc Culler files: A Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst M Lib/test/test_ttk/test_widgets.py diff --git a/Lib/test/test_ttk/test_widgets.py b/Lib/test/test_ttk/test_widgets.py index cb210b7d2fc960..88740b18864006 100644 --- a/Lib/test/test_ttk/test_widgets.py +++ b/Lib/test/test_ttk/test_widgets.py @@ -963,8 +963,7 @@ def create(self, **kwargs): return ttk.Scrollbar(self.root, **kwargs) -@add_standard_options(PixelSizeTests if tk_version >= (8, 7) else IntegerSizeTests, - StandardTtkOptionsTests) +@add_standard_options(StandardTtkOptionsTests) class NotebookTest(AbstractWidgetTest, unittest.TestCase): OPTIONS = ( 'class', 'cursor', 'height', 'padding', 'style', 'takefocus', 'width', @@ -983,6 +982,20 @@ def setUp(self): def create(self, **kwargs): return ttk.Notebook(self.root, **kwargs) +def test_configure_height(self): +widget = self.create() +if get_tk_patchlevel(self.root) < (8, 6, 15): +self.checkIntegerParam(widget, 'height', 402, -402, 0) +else: +self.checkPixelsParam(widget, 'height', '10c', 402, -402, 0, conv=False) + +def test_configure_width(self): +widget = self.create() +if get_tk_patchlevel(self.root) < (8, 6, 15): +self.checkIntegerParam(widget, 'width', 402, -402, 0) +else: +self.checkPixelsParam(widget, 'width', '10c', 402, -402, 0, conv=False) + def test_tab_identifiers(self): self.nb.forget(0) self.nb.hide(self.child2) diff --git a/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst b/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst new file mode 100644 index 00..9ddcca0eb6036d --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst @@ -0,0 +1 @@ +Updated ``test_ttk`` to pass with Tcl/Tk 8.6.15. ___ 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]
[Python-checkins] gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-124449)
https://github.com/python/cpython/commit/9d8f2d8e08336695fdade5846da4bbcc3eb5f152
commit: 9d8f2d8e08336695fdade5846da4bbcc3eb5f152
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-25T21:00:25Z
summary:
gh-124448: Update Windows builds to use Tcl/Tk 8.6.15 (GH-124449)
files:
A Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
D Misc/NEWS.d/next/Windows/2024-03-19-19-04-56.gh-issue-116145.srVT3d.rst
M Misc/externals.spdx.json
M PCbuild/get_externals.bat
M PCbuild/readme.txt
M PCbuild/tcltk.props
diff --git
a/Misc/NEWS.d/next/Windows/2024-03-19-19-04-56.gh-issue-116145.srVT3d.rst
b/Misc/NEWS.d/next/Windows/2024-03-19-19-04-56.gh-issue-116145.srVT3d.rst
deleted file mode 100644
index 7f840b0556048a..00
--- a/Misc/NEWS.d/next/Windows/2024-03-19-19-04-56.gh-issue-116145.srVT3d.rst
+++ /dev/null
@@ -1 +0,0 @@
-Updated bundled Tcl/Tk to 8.6.14.
diff --git
a/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
b/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
new file mode 100644
index 00..ca9845a8daea9d
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2024-09-24-19-04-56.gh-issue-124448.srVT3d.rst
@@ -0,0 +1 @@
+Updated bundled Tcl/Tk to 8.6.15.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index f7aea9e8f990ba..d54b1fbe251378 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -112,42 +112,42 @@
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"ad7623a44e1b6e42df47ba8f16b2b0435ac605650b5054077c4355a30473074c"
+ "checksumValue":
"4c23f0dd3efcbe6f3a22c503a68d147617bb30c4f5290f1eb3eaacf0b460440b"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tcl-core-8.6.14.0.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tcl-core-8.6.15.0.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.14.0:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.15.0:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "tcl-core",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "8.6.14.0"
+ "versionInfo": "8.6.15.0"
},
{
"SPDXID": "SPDXRef-PACKAGE-tk",
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"e8d5cbe97952037962518b69aba85e324d80aa189054c163ab0ee764a448e802"
+ "checksumValue":
"0ae56d39bca92865f338529557a1e56d110594184b6dc5a91339c5675751e264"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tk-8.6.14.0.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/tk-8.6.15.0.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.14.0:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:tcl_tk:tcl_tk:8.6.15.0:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "tk",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "8.6.14.0"
+ "versionInfo": "8.6.15.0"
},
{
"SPDXID": "SPDXRef-PACKAGE-xz",
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index 137c94789e1809..dfacd1d1e788d4 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -56,8 +56,8 @@ if NOT "%IncludeLibffiSrc%"=="false" set
libraries=%libraries% libffi-3.4.4
if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.15
set libraries=%libraries% mpdecimal-4.0.0
set libraries=%libraries% sqlite-3.45.3.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.14.0
-if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tk-8.6.14.0
+if NOT "%IncludeTkinterSrc%"=="fa
[Python-checkins] [3.12] Adjust build_ubuntu_ssltests job to use cache for the correct OS version (GH-124482)
https://github.com/python/cpython/commit/391c4fce3ee89a10281c47fda73c27e54f843bd5 commit: 391c4fce3ee89a10281c47fda73c27e54f843bd5 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-25T01:50:18Z summary: [3.12] Adjust build_ubuntu_ssltests job to use cache for the correct OS version (GH-124482) (cherry picked from commit 54dd77fb8c880d7655fffab934978e277b4275fe) Authored-by: Zachary Ware files: M .github/workflows/build.yml M .github/workflows/reusable-ubuntu.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b1c8672af4e623..4c8fed552b5d04 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -248,13 +248,14 @@ jobs: build_ubuntu_ssltests: name: 'Ubuntu SSL tests with OpenSSL' -runs-on: ubuntu-22.04 +runs-on: ${{ matrix.os }} timeout-minutes: 60 needs: check_source if: needs.check_source.outputs.run_tests == 'true' strategy: fail-fast: false matrix: +os: [ubuntu-22.04] openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2] env: OPENSSL_VER: ${{ matrix.openssl_ver }} @@ -284,7 +285,7 @@ jobs: uses: actions/cache@v4 with: path: ./multissl/openssl/${{ env.OPENSSL_VER }} -key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }} +key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }} - name: Install OpenSSL if: steps.cache-openssl.outputs.cache-hit != 'true' run: python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux @@ -454,7 +455,7 @@ jobs: uses: actions/cache@v4 with: path: ./multissl/openssl/${{ env.OPENSSL_VER }} -key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }} +key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }} - name: Install OpenSSL if: steps.cache-openssl.outputs.cache-hit != 'true' run: python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux diff --git a/.github/workflows/reusable-ubuntu.yml b/.github/workflows/reusable-ubuntu.yml index d27653925342ed..b2ac6f6127d883 100644 --- a/.github/workflows/reusable-ubuntu.yml +++ b/.github/workflows/reusable-ubuntu.yml @@ -14,7 +14,11 @@ jobs: build_ubuntu_reusable: name: 'build and test' timeout-minutes: 60 -runs-on: ubuntu-22.04 +runs-on: ${{ matrix.os }} +strategy: + fail-fast: false + matrix: +os: [ubuntu-22.04] env: OPENSSL_VER: 3.0.15 PYTHONSTRICTEXTENSIONBUILD: 1 @@ -34,7 +38,7 @@ jobs: uses: actions/cache@v4 with: path: ./multissl/openssl/${{ env.OPENSSL_VER }} -key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }} +key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }} - name: Install OpenSSL if: steps.cache-openssl.outputs.cache-hit != 'true' run: python3 Tools/ssl/multissltests.py --steps=library --base-directory $MULTISSL_DIR --openssl $OPENSSL_VER --system Linux ___ 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]
[Python-checkins] Adjust build_ubuntu_ssltests job to use cache for the correct OS version (GH-124403)
https://github.com/python/cpython/commit/54dd77fb8c880d7655fffab934978e277b4275fe
commit: 54dd77fb8c880d7655fffab934978e277b4275fe
branch: main
author: Zachary Ware
committer: zware
date: 2024-09-24T20:27:23-05:00
summary:
Adjust build_ubuntu_ssltests job to use cache for the correct OS version
(GH-124403)
files:
M .github/workflows/build.yml
M .github/workflows/reusable-ubuntu.yml
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e5f6fd47e7367b..ec7904c2e2cc73 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -195,13 +195,14 @@ jobs:
build_ubuntu_ssltests:
name: 'Ubuntu SSL tests with OpenSSL'
-runs-on: ubuntu-22.04
+runs-on: ${{ matrix.os }}
timeout-minutes: 60
needs: check_source
if: needs.check_source.outputs.run_tests == 'true'
strategy:
fail-fast: false
matrix:
+os: [ubuntu-22.04]
openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2]
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
@@ -231,7 +232,7 @@ jobs:
uses: actions/cache@v4
with:
path: ./multissl/openssl/${{ env.OPENSSL_VER }}
-key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
+key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
- name: Install OpenSSL
if: steps.cache-openssl.outputs.cache-hit != 'true'
run: python3 Tools/ssl/multissltests.py --steps=library --base-directory
$MULTISSL_DIR --openssl $OPENSSL_VER --system Linux
@@ -410,7 +411,7 @@ jobs:
uses: actions/cache@v4
with:
path: ./multissl/openssl/${{ env.OPENSSL_VER }}
-key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
+key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
- name: Install OpenSSL
if: steps.cache-openssl.outputs.cache-hit != 'true'
run: python3 Tools/ssl/multissltests.py --steps=library --base-directory
$MULTISSL_DIR --openssl $OPENSSL_VER --system Linux
diff --git a/.github/workflows/reusable-ubuntu.yml
b/.github/workflows/reusable-ubuntu.yml
index 01bd914af79fa0..769f1210de4d3c 100644
--- a/.github/workflows/reusable-ubuntu.yml
+++ b/.github/workflows/reusable-ubuntu.yml
@@ -14,7 +14,11 @@ jobs:
build_ubuntu_reusable:
name: 'build and test'
timeout-minutes: 60
-runs-on: ubuntu-22.04
+runs-on: ${{ matrix.os }}
+strategy:
+ fail-fast: false
+ matrix:
+os: [ubuntu-22.04]
env:
FORCE_COLOR: 1
OPENSSL_VER: 3.0.15
@@ -36,7 +40,7 @@ jobs:
uses: actions/cache@v4
with:
path: ./multissl/openssl/${{ env.OPENSSL_VER }}
-key: ${{ runner.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
+key: ${{ matrix.os }}-multissl-openssl-${{ env.OPENSSL_VER }}
- name: Install OpenSSL
if: steps.cache-openssl.outputs.cache-hit != 'true'
run: python3 Tools/ssl/multissltests.py --steps=library --base-directory
$MULTISSL_DIR --openssl $OPENSSL_VER --system Linux
___
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]
[Python-checkins] Add 3.13 as a version option to the crash issue template (#124560)
https://github.com/python/cpython/commit/ede1504c4b37b98636bf935679746ba2932f5677 commit: ede1504c4b37b98636bf935679746ba2932f5677 branch: main author: Zachary Ware committer: zware date: 2024-09-25T23:09:37Z summary: Add 3.13 as a version option to the crash issue template (#124560) files: M .github/ISSUE_TEMPLATE/crash.yml diff --git a/.github/ISSUE_TEMPLATE/crash.yml b/.github/ISSUE_TEMPLATE/crash.yml index c14d7cf2599d4c1..6d73f7cae5c0ae6 100644 --- a/.github/ISSUE_TEMPLATE/crash.yml +++ b/.github/ISSUE_TEMPLATE/crash.yml @@ -32,6 +32,7 @@ body: - "3.10" - "3.11" - "3.12" +- "3.13" - "CPython main branch" validations: required: true ___ 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]
[Python-checkins] [3.12] gh-124378: Update test_ttk for Tcl/Tk 8.6.15 (GH-124545)
https://github.com/python/cpython/commit/a0c90b36f68560ebcc42c3ea7fb67812f6e1e132 commit: a0c90b36f68560ebcc42c3ea7fb67812f6e1e132 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-09-26T11:20:09-05:00 summary: [3.12] gh-124378: Update test_ttk for Tcl/Tk 8.6.15 (GH-124545) (cherry picked from commit fb6bd31cb74d2f7e7b525ee4fe9f45475fc94ce9) Co-authored-by: Zachary Ware Co-authored-by: Marc Culler files: A Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst M Lib/test/test_ttk/test_widgets.py diff --git a/Lib/test/test_ttk/test_widgets.py b/Lib/test/test_ttk/test_widgets.py index eee39162054009..3e541fbc5a4ded 100644 --- a/Lib/test/test_ttk/test_widgets.py +++ b/Lib/test/test_ttk/test_widgets.py @@ -963,8 +963,7 @@ def create(self, **kwargs): return ttk.Scrollbar(self.root, **kwargs) -@add_standard_options(PixelSizeTests if tk_version >= (8, 7) else IntegerSizeTests, - StandardTtkOptionsTests) +@add_standard_options(StandardTtkOptionsTests) class NotebookTest(AbstractWidgetTest, unittest.TestCase): OPTIONS = ( 'class', 'cursor', 'height', 'padding', 'style', 'takefocus', 'width', @@ -983,6 +982,20 @@ def setUp(self): def create(self, **kwargs): return ttk.Notebook(self.root, **kwargs) +def test_configure_height(self): +widget = self.create() +if get_tk_patchlevel(self.root) < (8, 6, 15): +self.checkIntegerParam(widget, 'height', 402, -402, 0) +else: +self.checkPixelsParam(widget, 'height', '10c', 402, -402, 0, conv=False) + +def test_configure_width(self): +widget = self.create() +if get_tk_patchlevel(self.root) < (8, 6, 15): +self.checkIntegerParam(widget, 'width', 402, -402, 0) +else: +self.checkPixelsParam(widget, 'width', '10c', 402, -402, 0, conv=False) + def test_tab_identifiers(self): self.nb.forget(0) self.nb.hide(self.child2) diff --git a/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst b/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst new file mode 100644 index 00..9ddcca0eb6036d --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst @@ -0,0 +1 @@ +Updated ``test_ttk`` to pass with Tcl/Tk 8.6.15. ___ 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]
[Python-checkins] Update verison options in crash issue template (GH-125555)
https://github.com/python/cpython/commit/7453b8f15c77a8f3b07a5049450436079476c465 commit: 7453b8f15c77a8f3b07a5049450436079476c465 branch: main author: Zachary Ware committer: zware date: 2024-10-15T22:08:00Z summary: Update verison options in crash issue template (GH-12) files: M .github/ISSUE_TEMPLATE/crash.yml diff --git a/.github/ISSUE_TEMPLATE/crash.yml b/.github/ISSUE_TEMPLATE/crash.yml index 6d73f7cae5c0ae..58da2dfe0c7354 100644 --- a/.github/ISSUE_TEMPLATE/crash.yml +++ b/.github/ISSUE_TEMPLATE/crash.yml @@ -27,12 +27,12 @@ body: label: "CPython versions tested on:" multiple: true options: -- "3.8" - "3.9" - "3.10" - "3.11" - "3.12" - "3.13" +- "3.14" - "CPython main branch" validations: required: true ___ 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]
[Python-checkins] gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125626)
https://github.com/python/cpython/commit/0cb20f2e7e867d5c34fc17dd5b8e51e8b0020bb3 commit: 0cb20f2e7e867d5c34fc17dd5b8e51e8b0020bb3 branch: main author: Wulian committer: zware date: 2024-10-17T10:40:30-05:00 summary: gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125626) files: M PCbuild/find_python.bat diff --git a/PCbuild/find_python.bat b/PCbuild/find_python.bat index 6db579fa8de08a..d65d080ca71a90 100644 --- a/PCbuild/find_python.bat +++ b/PCbuild/find_python.bat @@ -47,7 +47,7 @@ @rem If py.exe finds a recent enough version, use that one @rem It is fine to add new versions to this list when they have released, @rem but we do not use prerelease builds here. -@for %%p in (3.12 3.11 3.10) do @py -%%p -EV >nul 2>&1 && (set PYTHON=py -%%p) && (set _Py_Python_Source=found %%p with py.exe) && goto :found +@for %%p in (3.13 3.12 3.11 3.10) do @py -%%p -EV >nul 2>&1 && (set PYTHON=py -%%p) && (set _Py_Python_Source=found %%p with py.exe) && goto :found @if NOT exist "%_Py_EXTERNALS_DIR%" mkdir "%_Py_EXTERNALS_DIR%" @set _Py_NUGET=%NUGET% ___ 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]
[Python-checkins] [3.13] gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125650)
https://github.com/python/cpython/commit/7a2db7601abdd002ddb2b8e0f14c728867ef2527 commit: 7a2db7601abdd002ddb2b8e0f14c728867ef2527 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-10-17T16:09:20Z summary: [3.13] gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125650) (cherry picked from commit 0cb20f2e7e867d5c34fc17dd5b8e51e8b0020bb3) Co-authored-by: Wulian files: M PCbuild/find_python.bat diff --git a/PCbuild/find_python.bat b/PCbuild/find_python.bat index 6db579fa8de08a..d65d080ca71a90 100644 --- a/PCbuild/find_python.bat +++ b/PCbuild/find_python.bat @@ -47,7 +47,7 @@ @rem If py.exe finds a recent enough version, use that one @rem It is fine to add new versions to this list when they have released, @rem but we do not use prerelease builds here. -@for %%p in (3.12 3.11 3.10) do @py -%%p -EV >nul 2>&1 && (set PYTHON=py -%%p) && (set _Py_Python_Source=found %%p with py.exe) && goto :found +@for %%p in (3.13 3.12 3.11 3.10) do @py -%%p -EV >nul 2>&1 && (set PYTHON=py -%%p) && (set _Py_Python_Source=found %%p with py.exe) && goto :found @if NOT exist "%_Py_EXTERNALS_DIR%" mkdir "%_Py_EXTERNALS_DIR%" @set _Py_NUGET=%NUGET% ___ 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]
[Python-checkins] GH-99108: Make vectorized versions of Blake2 available on x86, too (#125244)
https://github.com/python/cpython/commit/528bbab96feadbfabb798547e5bb2ad52070fb73
commit: 528bbab96feadbfabb798547e5bb2ad52070fb73
branch: main
author: Jonathan Protzenko
committer: zware
date: 2024-10-17T15:08:43Z
summary:
GH-99108: Make vectorized versions of Blake2 available on x86, too (#125244)
Accomplished by updating HACL* vendored code from
hacl-star/hacl-star@a6a09496d9cff652b567d26f2c3ab012321b632a to
hacl-star/hacl-star@315a9e491d2bc347b9dae99e0ea506995ea84d9d
Co-authored-by: Victor Stinner
Co-authored-by: Zachary Ware
files:
M Misc/sbom.spdx.json
M Modules/_hacl/Hacl_Hash_Blake2b.c
M Modules/_hacl/Hacl_Hash_Blake2b_Simd256.c
M Modules/_hacl/Hacl_Hash_Blake2s.c
M Modules/_hacl/Hacl_Hash_Blake2s_Simd128.c
M Modules/_hacl/include/krml/FStar_UInt128_Verified.h
M Modules/_hacl/include/krml/FStar_UInt_8_16_32_64.h
M Modules/_hacl/include/krml/fstar_uint128_struct_endianness.h
M Modules/_hacl/include/krml/internal/target.h
M Modules/_hacl/include/krml/lowstar_endianness.h
M Modules/_hacl/libintvector.h
M Modules/_hacl/refresh.sh
diff --git a/Misc/sbom.spdx.json b/Misc/sbom.spdx.json
index f07ad9423d9039..cc73e93009b43f 100644
--- a/Misc/sbom.spdx.json
+++ b/Misc/sbom.spdx.json
@@ -300,11 +300,11 @@
"checksums": [
{
"algorithm": "SHA1",
- "checksumValue": "c96cba53034348537ac423a220803b06cd9f0a43"
+ "checksumValue": "a34e821b68ef5334eccf4f729b28bb7bb65b965e"
},
{
"algorithm": "SHA256",
- "checksumValue":
"9f4fb5c70678638cfd163cc990be1def356cf7b65b75faa4666db8c5f8593530"
+ "checksumValue":
"4582db9143c0810b98838a5357c577e0b32ae77f3018486159df4e0dfd3fce3c"
}
],
"fileName": "Modules/_hacl/Hacl_Hash_Blake2b.c"
@@ -328,11 +328,11 @@
"checksums": [
{
"algorithm": "SHA1",
- "checksumValue": "e11e2d1771e56c0afbdb0673906898b3a67e0cc3"
+ "checksumValue": "0ffe60c6d5eed5dd222515e820d461d319d16b1f"
},
{
"algorithm": "SHA256",
- "checksumValue":
"d5bf29d995f7cb9861841b813aa01206664895a1c5aa166a4796785c02117bf4"
+ "checksumValue":
"4804cb3ce68bfdcf98853d6f1d77b4a844a3c2796f776b39770ba327e400d402"
}
],
"fileName": "Modules/_hacl/Hacl_Hash_Blake2b_Simd256.c"
@@ -370,11 +370,11 @@
"checksums": [
{
"algorithm": "SHA1",
- "checksumValue": "5422517af799cf74b194821fb2a1f39e3b02c54d"
+ "checksumValue": "cf035ffeff875bc74345a47373ce25dc408ea9dc"
},
{
"algorithm": "SHA256",
- "checksumValue":
"c66adab0259f2c2229e010cd635a982e8c2b8836e59e43e7867992d4148e4d9a"
+ "checksumValue":
"579059b002c45fab0fed6381e85c3f5eaf1d959400ca64b103542ac6c35bade3"
}
],
"fileName": "Modules/_hacl/Hacl_Hash_Blake2s.c"
@@ -398,11 +398,11 @@
"checksums": [
{
"algorithm": "SHA1",
- "checksumValue": "7822db8e7c2f60dd64a18e112a1bc369e7f7a0ff"
+ "checksumValue": "9bb53022d158a9c349edb52a8def8aac7d098a4e"
},
{
"algorithm": "SHA256",
- "checksumValue":
"94b0cd3cf1f7385325ee878d2ef06affc8d6412af9302ca47d1aa6d858182050"
+ "checksumValue":
"2abde0c6b5da0402e91b4bedfe786c24b908fbdc04e08e74651c7624729254d9"
}
],
"fileName": "Modules/_hacl/Hacl_Hash_Blake2s_Simd128.c"
@@ -580,11 +580,11 @@
"checksums": [
{
"algorithm": "SHA1",
- "checksumValue": "12c0c680c93b8112b97cc575faacbb3cbbd315b1"
+ "checksumValue": "7665829b9396f72e7f8098080d6d6773565468e9"
},
{
"algorithm": "SHA256",
- "checksumValue":
"455e94f24a0900deda7e6e36f4714e4253d32cea077f97e23f90c569a717bc48"
+ "checksumValue":
"ca7357ee70365c690664a44f6522e526636151d9ed2da8d0d29da15bb8556530"
}
],
"fileName": "Modules/_hacl/include/krml/FStar_UInt128_Verified.h"
@@ -594,11 +594,11 @@
"checksums": [
{
"algorithm": "SHA1",
- "checksumValue": "62b44acbbdc77b749c36c242cda027bacf7679f8"
+ "che
[Python-checkins] [3.12] gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125649)
https://github.com/python/cpython/commit/8f72f33d69dbf74728c713356ec4d160fd7d79f5 commit: 8f72f33d69dbf74728c713356ec4d160fd7d79f5 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-10-17T16:01:55Z summary: [3.12] gh-125625: Check for `py -3.13` in PCbuild/find_python.bat (GH-125649) (cherry picked from commit 0cb20f2e7e867d5c34fc17dd5b8e51e8b0020bb3) Co-authored-by: Wulian files: M PCbuild/find_python.bat diff --git a/PCbuild/find_python.bat b/PCbuild/find_python.bat index d8c7cec15ef5fe..0af367a3efafad 100644 --- a/PCbuild/find_python.bat +++ b/PCbuild/find_python.bat @@ -44,7 +44,7 @@ @rem If py.exe finds a recent enough version, use that one @rem It is fine to add new versions to this list when they have released, @rem but we do not use prerelease builds here. -@for %%p in (3.12 3.11 3.10) do @py -%%p -EV >nul 2>&1 && (set PYTHON=py -%%p) && (set _Py_Python_Source=found %%p with py.exe) && goto :found +@for %%p in (3.13 3.12 3.11 3.10) do @py -%%p -EV >nul 2>&1 && (set PYTHON=py -%%p) && (set _Py_Python_Source=found %%p with py.exe) && goto :found @if NOT exist "%_Py_EXTERNALS_DIR%" mkdir "%_Py_EXTERNALS_DIR%" @set _Py_NUGET=%NUGET% ___ 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]
[Python-checkins] gh-127265: Remove single quotes from 'arrow's in tutorial/errors.rst (GH-127267)
https://github.com/python/cpython/commit/26ff32b30553e1f7b0cc822835ad2da8890c180c commit: 26ff32b30553e1f7b0cc822835ad2da8890c180c branch: main author: funkyrailroad committer: zware date: 2024-11-25T15:34:01-06:00 summary: gh-127265: Remove single quotes from 'arrow's in tutorial/errors.rst (GH-127267) files: M Doc/tutorial/errors.rst diff --git a/Doc/tutorial/errors.rst b/Doc/tutorial/errors.rst index 4c61cbb2b5bc3d..c01cb8c14a0360 100644 --- a/Doc/tutorial/errors.rst +++ b/Doc/tutorial/errors.rst @@ -23,7 +23,7 @@ complaint you get while you are still learning Python:: ^ SyntaxError: invalid syntax -The parser repeats the offending line and displays little 'arrow's pointing +The parser repeats the offending line and displays little arrows pointing at the token in the line where the error was detected. The error may be caused by the absence of a token *before* the indicated token. In the example, the error is detected at the function :func:`print`, since a colon ___ 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]
[Python-checkins] [3.13] gh-127265: Remove single quotes from 'arrow's in tutorial/errors.rst (GH-127269)
https://github.com/python/cpython/commit/7f263dd33f667891b5804229e370f08a028e commit: 7f263dd33f667891b5804229e370f08a028e branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-11-25T21:39:59Z summary: [3.13] gh-127265: Remove single quotes from 'arrow's in tutorial/errors.rst (GH-127269) (cherry picked from commit 26ff32b30553e1f7b0cc822835ad2da8890c180c) Co-authored-by: funkyrailroad files: M Doc/tutorial/errors.rst diff --git a/Doc/tutorial/errors.rst b/Doc/tutorial/errors.rst index 4c61cbb2b5bc3d..c01cb8c14a0360 100644 --- a/Doc/tutorial/errors.rst +++ b/Doc/tutorial/errors.rst @@ -23,7 +23,7 @@ complaint you get while you are still learning Python:: ^ SyntaxError: invalid syntax -The parser repeats the offending line and displays little 'arrow's pointing +The parser repeats the offending line and displays little arrows pointing at the token in the line where the error was detected. The error may be caused by the absence of a token *before* the indicated token. In the example, the error is detected at the function :func:`print`, since a colon ___ 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]
[Python-checkins] [3.12] gh-127265: Remove single quotes from 'arrow's in tutorial/errors.rst (GH-127268)
https://github.com/python/cpython/commit/619037af1c0f6daf6b682e974f8e6ffaaf4c01d9 commit: 619037af1c0f6daf6b682e974f8e6ffaaf4c01d9 branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-11-25T21:42:34Z summary: [3.12] gh-127265: Remove single quotes from 'arrow's in tutorial/errors.rst (GH-127268) (cherry picked from commit 26ff32b30553e1f7b0cc822835ad2da8890c180c) Co-authored-by: funkyrailroad files: M Doc/tutorial/errors.rst diff --git a/Doc/tutorial/errors.rst b/Doc/tutorial/errors.rst index 981b14f5a4212b..247b2f6407f8f7 100644 --- a/Doc/tutorial/errors.rst +++ b/Doc/tutorial/errors.rst @@ -23,7 +23,7 @@ complaint you get while you are still learning Python:: ^ SyntaxError: invalid syntax -The parser repeats the offending line and displays little 'arrow's pointing +The parser repeats the offending line and displays little arrows pointing at the token in the line where the error was detected. The error may be caused by the absence of a token *before* the indicated token. In the example, the error is detected at the function :func:`print`, since a colon ___ 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]
[Python-checkins] [3.13] Run `apt update` before `apt install git` in autoconf CI job (GH-127070)
https://github.com/python/cpython/commit/40b9b506fb88c5cb6d36617015d74b2cf21da43d commit: 40b9b506fb88c5cb6d36617015d74b2cf21da43d branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-11-20T19:44:17Z summary: [3.13] Run `apt update` before `apt install git` in autoconf CI job (GH-127070) (cherry picked from commit 0af4ec30bd2e3a52350344d1011c0c125d6dcd71) Co-authored-by: Zachary Ware files: M .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 19c59c53c99e14..870931e5cbbbac 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -96,7 +96,7 @@ jobs: steps: - name: Install Git run: | - apt install git -yq + apt update && apt install git -yq git config --global --add safe.directory "$GITHUB_WORKSPACE" - uses: actions/checkout@v4 with: ___ 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]
[Python-checkins] [3.12] Run `apt update` before `apt install git` in autoconf CI job (GH-127071)
https://github.com/python/cpython/commit/512a5bdb2f409cc924214806d09cd266c36249cc commit: 512a5bdb2f409cc924214806d09cd266c36249cc branch: 3.12 author: Miss Islington (bot) <[email protected]> committer: zware date: 2024-11-20T19:37:24Z summary: [3.12] Run `apt update` before `apt install git` in autoconf CI job (GH-127071) (cherry picked from commit 0af4ec30bd2e3a52350344d1011c0c125d6dcd71) Co-authored-by: Zachary Ware files: M .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 329ebc42a301b4..f7f96ceb574cc0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -104,7 +104,7 @@ jobs: steps: - name: Install Git run: | - apt install git -yq + apt update && apt install git -yq git config --global --add safe.directory "$GITHUB_WORKSPACE" - uses: actions/checkout@v4 with: ___ 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]
[Python-checkins] Move NEWS entries out of directories with spaces (GH-127067)
https://github.com/python/cpython/commit/2c9911abe6e07a96407fe52b2b12b6c694d1e7af commit: 2c9911abe6e07a96407fe52b2b12b6c694d1e7af branch: main author: Zachary Ware committer: zware date: 2024-11-20T18:52:46Z summary: Move NEWS entries out of directories with spaces (GH-127067) Cleanup after GH-126063, including moving the `README.rst` files to the new directories. files: A Misc/NEWS.d/next/C_API/2024-07-03-13-39-13.gh-issue-121058.MKi1MV.rst A Misc/NEWS.d/next/C_API/README.rst A Misc/NEWS.d/next/Core_and_Builtins/README.rst D Misc/NEWS.d/next/C API/2024-07-03-13-39-13.gh-issue-121058.MKi1MV.rst D Misc/NEWS.d/next/C API/README.rst D Misc/NEWS.d/next/Core and Builtins/README.rst diff --git a/Misc/NEWS.d/next/C API/2024-07-03-13-39-13.gh-issue-121058.MKi1MV.rst b/Misc/NEWS.d/next/C_API/2024-07-03-13-39-13.gh-issue-121058.MKi1MV.rst similarity index 100% rename from Misc/NEWS.d/next/C API/2024-07-03-13-39-13.gh-issue-121058.MKi1MV.rst rename to Misc/NEWS.d/next/C_API/2024-07-03-13-39-13.gh-issue-121058.MKi1MV.rst diff --git a/Misc/NEWS.d/next/C API/README.rst b/Misc/NEWS.d/next/C_API/README.rst similarity index 100% rename from Misc/NEWS.d/next/C API/README.rst rename to Misc/NEWS.d/next/C_API/README.rst diff --git a/Misc/NEWS.d/next/Core and Builtins/README.rst b/Misc/NEWS.d/next/Core_and_Builtins/README.rst similarity index 100% rename from Misc/NEWS.d/next/Core and Builtins/README.rst rename to Misc/NEWS.d/next/Core_and_Builtins/README.rst ___ 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]
[Python-checkins] Run `apt update` before `apt install git` in autoconf CI job (GH-127066)
https://github.com/python/cpython/commit/0af4ec30bd2e3a52350344d1011c0c125d6dcd71 commit: 0af4ec30bd2e3a52350344d1011c0c125d6dcd71 branch: main author: Zachary Ware committer: zware date: 2024-11-20T19:20:44Z summary: Run `apt update` before `apt install git` in autoconf CI job (GH-127066) files: M .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c854c13e12f922..1f2204d3f2c6fe 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -53,7 +53,7 @@ jobs: steps: - name: Install Git run: | - apt install git -yq + apt update && apt install git -yq git config --global --add safe.directory "$GITHUB_WORKSPACE" - uses: actions/checkout@v4 with: ___ 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]
[Python-checkins] gh-124111: Update tkinter for compatibility with Tcl/Tk 9.0.0 (GH-124156)
https://github.com/python/cpython/commit/47cbf038850852cdcbe7a404ed7c64542340d58a
commit: 47cbf038850852cdcbe7a404ed7c64542340d58a
branch: main
author: Marc Culler
committer: zware
date: 2024-11-14T12:45:08-06:00
summary:
gh-124111: Update tkinter for compatibility with Tcl/Tk 9.0.0 (GH-124156)
files:
A Misc/NEWS.d/next/Library/2024-09-17-10-38-26.gh-issue-124111.Hd53VN.rst
M Lib/test/test_tkinter/test_misc.py
M Lib/test/test_tkinter/test_widgets.py
M Lib/test/test_tkinter/widget_tests.py
M Lib/test/test_ttk/test_style.py
M Lib/test/test_ttk/test_widgets.py
M Lib/tkinter/ttk.py
M Modules/_tkinter.c
M PCbuild/_tkinter.vcxproj
M PCbuild/build.bat
M PCbuild/tcltk.props
diff --git a/Lib/test/test_tkinter/test_misc.py
b/Lib/test/test_tkinter/test_misc.py
index b0b9ed60040443..579ce2af9fa0bf 100644
--- a/Lib/test/test_tkinter/test_misc.py
+++ b/Lib/test/test_tkinter/test_misc.py
@@ -66,9 +66,10 @@ def test_tk_busy(self):
f.tk_busy_forget()
self.assertFalse(f.tk_busy_status())
self.assertFalse(f.tk_busy_current())
-with self.assertRaisesRegex(TclError, "can't find busy window"):
+errmsg = r"can(no|')t find busy window.*"
+with self.assertRaisesRegex(TclError, errmsg):
f.tk_busy_configure()
-with self.assertRaisesRegex(TclError, "can't find busy window"):
+with self.assertRaisesRegex(TclError, errmsg):
f.tk_busy_forget()
@requires_tk(8, 6, 6)
@@ -87,7 +88,8 @@ def test_tk_busy_with_cursor(self):
self.assertEqual(f.tk_busy_configure('cursor')[4], 'heart')
f.tk_busy_forget()
-with self.assertRaisesRegex(TclError, "can't find busy window"):
+errmsg = r"can(no|')t find busy window.*"
+with self.assertRaisesRegex(TclError, errmsg):
f.tk_busy_cget('cursor')
def test_tk_setPalette(self):
diff --git a/Lib/test/test_tkinter/test_widgets.py
b/Lib/test/test_tkinter/test_widgets.py
index 9ea764ca2a39d8..f6e77973061956 100644
--- a/Lib/test/test_tkinter/test_widgets.py
+++ b/Lib/test/test_tkinter/test_widgets.py
@@ -7,9 +7,13 @@
from test.test_tkinter.support import (requires_tk, tk_version,
get_tk_patchlevel, widget_eq,
AbstractDefaultRootTest)
+
from test.test_tkinter.widget_tests import (
-add_standard_options,
-AbstractWidgetTest, StandardOptionsTests, IntegerSizeTests, PixelSizeTests)
+add_configure_tests,
+AbstractWidgetTest,
+StandardOptionsTests,
+IntegerSizeTests,
+PixelSizeTests)
requires('gui')
@@ -20,9 +24,17 @@
def float_round(x):
return float(round(x))
-
class AbstractToplevelTest(AbstractWidgetTest, PixelSizeTests):
-_conv_pad_pixels = False
+if tk_version < (9, 0):
+_no_round = {'padx', 'pady'}
+else:
+_no_round = {'borderwidth', 'height', 'highlightthickness', 'padx',
+ 'pady', 'width'}
+if tk_version < (9, 0):
+_clipped = {'highlightthickness'}
+else:
+_clipped = {'borderwidth', 'height', 'highlightthickness', 'padx',
+'pady', 'width'}
def test_configure_class(self):
widget = self.create()
@@ -58,7 +70,7 @@ def test_configure_visual(self):
self.assertEqual(widget2['visual'], 'default')
-@add_standard_options(StandardOptionsTests)
+@add_configure_tests(StandardOptionsTests)
class ToplevelTest(AbstractToplevelTest, unittest.TestCase):
OPTIONS = (
'background', 'backgroundimage', 'borderwidth',
@@ -101,7 +113,7 @@ def test_configure_use(self):
self.assertEqual(widget2['use'], wid)
-@add_standard_options(StandardOptionsTests)
+@add_configure_tests(StandardOptionsTests)
class FrameTest(AbstractToplevelTest, unittest.TestCase):
OPTIONS = (
'background', 'backgroundimage', 'borderwidth',
@@ -109,12 +121,17 @@ class FrameTest(AbstractToplevelTest, unittest.TestCase):
'highlightbackground', 'highlightcolor', 'highlightthickness',
'padx', 'pady', 'relief', 'takefocus', 'tile', 'visual', 'width',
)
+if tk_version < (9, 0):
+_no_round = {'padx', 'pady'}
+else:
+_no_round = {'borderwidth', 'height', 'highlightthickness', 'padx',
+ 'pady', 'width'}
def create(self, **kwargs):
return tkinter.Frame(self.root, **kwargs)
-@add_standard_options
[Python-checkins] [3.13] gh-132026: Ensure _MIPS_SIM has defined _ABI identifiers for comparison (GH-133092)
https://github.com/python/cpython/commit/507b4fa7a4d7c68ff514de4f30f6e49d7fc9cfc8 commit: 507b4fa7a4d7c68ff514de4f30f6e49d7fc9cfc8 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-04-28T12:15:45-05:00 summary: [3.13] gh-132026: Ensure _MIPS_SIM has defined _ABI identifiers for comparison (GH-133092) When built on a MIPS architecture, `_MIPS_SIM` is used to determine architecture specifics. The value is expected to match either `_ABIO32`, `_ABIN32` or `_ABI64`. In `gcc` config/mips/mips.h these values are defined as compiler `builtin_define` inside of a switch/case. That means, mips64el and mips64 architectures know about `_ABI64` but don't know about `_ABIO32` and `_ABIN32`. In turn, when CPython tries to use them in comparison, they may be undefined identifiers. In default compiler behavior, the undefined identifier will be evaluated as zero, and it will not match `_MIPS_SIM`. However, the issues pop up when `-Wundef` (or, even worse, `-Werror=undef`) compiler flag is enabled. Then suddenly it's visible as a warning or error. (cherry picked from commit 6985e2e6dea67630cf13fc02b7ca727af383207b) Co-authored-by: Valters Jansons files: A Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst M Misc/platform_triplet.c diff --git a/Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst b/Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst new file mode 100644 index 00..5490b98f25b124 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst @@ -0,0 +1 @@ +Fix use of undefined identifiers in platform triplet detection on MIPS Linux platforms. diff --git a/Misc/platform_triplet.c b/Misc/platform_triplet.c index ec0857a4a998c0..f5cd73bdea8333 100644 --- a/Misc/platform_triplet.c +++ b/Misc/platform_triplet.c @@ -57,21 +57,21 @@ PLATFORM_TRIPLET=arm-linux-androideabi # endif # if defined(_MIPS_SIM) # if defined(__mips_hard_float) -#if _MIPS_SIM == _ABIO32 +#if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS gnu -#elif _MIPS_SIM == _ABIN32 +#elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS gnuabin32 -#elif _MIPS_SIM == _ABI64 +#elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS gnuabi64 #else # error unknown mips sim value #endif # else -#if _MIPS_SIM == _ABIO32 +#if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS gnusf -#elif _MIPS_SIM == _ABIN32 +#elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS gnuabin32sf -#elif _MIPS_SIM == _ABI64 +#elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS gnuabi64sf #else # error unknown mips sim value @@ -107,21 +107,21 @@ PLATFORM_TRIPLET=arm-linux-androideabi # endif # if defined(_MIPS_SIM) #if defined(__mips_hard_float) -# if _MIPS_SIM == _ABIO32 +# if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS musl -# elif _MIPS_SIM == _ABIN32 +# elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS musln32 -# elif _MIPS_SIM == _ABI64 +# elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS musl # else # error unknown mips sim value # endif #else -# if _MIPS_SIM == _ABIO32 +# if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS muslsf -# elif _MIPS_SIM == _ABIN32 +# elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS musln32sf -# elif _MIPS_SIM == _ABI64 +# elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS muslsf # else # error unknown mips sim value ___ 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]
[Python-checkins] gh-132026: Ensure _MIPS_SIM has defined _ABI identifiers for comparison (GH-132027)
https://github.com/python/cpython/commit/6985e2e6dea67630cf13fc02b7ca727af383207b commit: 6985e2e6dea67630cf13fc02b7ca727af383207b branch: main author: Valters Jansons committer: zware date: 2025-04-27T21:56:00Z summary: gh-132026: Ensure _MIPS_SIM has defined _ABI identifiers for comparison (GH-132027) When built on a MIPS architecture, `_MIPS_SIM` is used to determine architecture specifics. The value is expected to match either `_ABIO32`, `_ABIN32` or `_ABI64`. In `gcc` config/mips/mips.h these values are defined as compiler `builtin_define` inside of a switch/case. That means, mips64el and mips64 architectures know about `_ABI64` but don't know about `_ABIO32` and `_ABIN32`. In turn, when CPython tries to use them in comparison, they may be undefined identifiers. In default compiler behavior, the undefined identifier will be evaluated as zero, and it will not match `_MIPS_SIM`. However, the issues pop up when `-Wundef` (or, even worse, `-Werror=undef`) compiler flag is enabled. Then suddenly it's visible as a warning or error. files: A Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst M Misc/platform_triplet.c diff --git a/Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst b/Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst new file mode 100644 index 00..5490b98f25b124 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2025-04-02-21-08-36.gh-issue-132026.ptnR7T.rst @@ -0,0 +1 @@ +Fix use of undefined identifiers in platform triplet detection on MIPS Linux platforms. diff --git a/Misc/platform_triplet.c b/Misc/platform_triplet.c index ec0857a4a998c0..f5cd73bdea8333 100644 --- a/Misc/platform_triplet.c +++ b/Misc/platform_triplet.c @@ -57,21 +57,21 @@ PLATFORM_TRIPLET=arm-linux-androideabi # endif # if defined(_MIPS_SIM) # if defined(__mips_hard_float) -#if _MIPS_SIM == _ABIO32 +#if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS gnu -#elif _MIPS_SIM == _ABIN32 +#elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS gnuabin32 -#elif _MIPS_SIM == _ABI64 +#elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS gnuabi64 #else # error unknown mips sim value #endif # else -#if _MIPS_SIM == _ABIO32 +#if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS gnusf -#elif _MIPS_SIM == _ABIN32 +#elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS gnuabin32sf -#elif _MIPS_SIM == _ABI64 +#elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS gnuabi64sf #else # error unknown mips sim value @@ -107,21 +107,21 @@ PLATFORM_TRIPLET=arm-linux-androideabi # endif # if defined(_MIPS_SIM) #if defined(__mips_hard_float) -# if _MIPS_SIM == _ABIO32 +# if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS musl -# elif _MIPS_SIM == _ABIN32 +# elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS musln32 -# elif _MIPS_SIM == _ABI64 +# elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS musl # else # error unknown mips sim value # endif #else -# if _MIPS_SIM == _ABIO32 +# if defined(_ABIO32) && _MIPS_SIM == _ABIO32 # define LIBC_MIPS muslsf -# elif _MIPS_SIM == _ABIN32 +# elif defined(_ABIN32) && _MIPS_SIM == _ABIN32 # define LIBC_MIPS musln32sf -# elif _MIPS_SIM == _ABI64 +# elif defined(_ABI64) && _MIPS_SIM == _ABI64 # define LIBC_MIPS muslsf # else # error unknown mips sim value ___ 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]
[Python-checkins] gh-81793: Replace skip decorators with specific helpers (GH-133493)
https://github.com/python/cpython/commit/5b07c6eb89c5a70f70ff5564d3fdaf96442b7a93 commit: 5b07c6eb89c5a70f70ff5564d3fdaf96442b7a93 branch: main author: Zachary Ware committer: zware date: 2025-05-06T05:58:38Z summary: gh-81793: Replace skip decorators with specific helpers (GH-133493) files: M Lib/test/test_posix.py diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index b6a07f214fad49..0817d0a87a38b1 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -1521,8 +1521,8 @@ def test_pidfd_open(self): self.assertEqual(cm.exception.errno, errno.EINVAL) os.close(os.pidfd_open(os.getpid(), 0)) [email protected](hasattr(os, "link"), "test needs os.link()") [email protected]_android_selinux('hard links to symbolic links') +@os_helper.skip_unless_hardlink +@os_helper.skip_unless_symlink def test_link_follow_symlinks(self): default_follow = sys.platform.startswith( ('darwin', 'freebsd', 'netbsd', 'openbsd', 'dragonfly', 'sunos5')) ___ 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]
[Python-checkins] gh-128646: Implement GzipFile.readinto[1]() methods (GH-128647)
https://github.com/python/cpython/commit/72e5b25efb580fb1f0fdfade516be90d90822164
commit: 72e5b25efb580fb1f0fdfade516be90d90822164
branch: main
author: Chris Markiewicz
committer: zware
date: 2025-03-07T21:04:45-06:00
summary:
gh-128646: Implement GzipFile.readinto[1]() methods (GH-128647)
The new methods simply delegate to the underlying buffer, much like the
existing GzipFile.read[1] methods. This avoids extra allocations caused by the
BufferedIOBase.readinto implementation previously used.
This commit also factors out a common readability check rather than copying it
an additional two times.
files:
A Misc/NEWS.d/next/Library/2025-01-08-15-14-17.gh-issue-128647.GabglU.rst
M Lib/gzip.py
M Lib/test/test_gzip.py
diff --git a/Lib/gzip.py b/Lib/gzip.py
index 7e384f8a568c1c..d681ef6b488dad 100644
--- a/Lib/gzip.py
+++ b/Lib/gzip.py
@@ -325,11 +325,15 @@ def _write_raw(self, data):
return length
-def read(self, size=-1):
-self._check_not_closed()
+def _check_read(self, caller):
if self.mode != READ:
import errno
-raise OSError(errno.EBADF, "read() on write-only GzipFile object")
+msg = f"{caller}() on write-only GzipFile object"
+raise OSError(errno.EBADF, msg)
+
+def read(self, size=-1):
+self._check_not_closed()
+self._check_read("read")
return self._buffer.read(size)
def read1(self, size=-1):
@@ -337,19 +341,25 @@ def read1(self, size=-1):
Reads up to a buffer's worth of data if size is negative."""
self._check_not_closed()
-if self.mode != READ:
-import errno
-raise OSError(errno.EBADF, "read1() on write-only GzipFile object")
+self._check_read("read1")
if size < 0:
size = io.DEFAULT_BUFFER_SIZE
return self._buffer.read1(size)
+def readinto(self, b):
+self._check_not_closed()
+self._check_read("readinto")
+return self._buffer.readinto(b)
+
+def readinto1(self, b):
+self._check_not_closed()
+self._check_read("readinto1")
+return self._buffer.readinto1(b)
+
def peek(self, n):
self._check_not_closed()
-if self.mode != READ:
-import errno
-raise OSError(errno.EBADF, "peek() on write-only GzipFile object")
+self._check_read("peek")
return self._buffer.peek(n)
@property
diff --git a/Lib/test/test_gzip.py b/Lib/test/test_gzip.py
index 0940bb114df625..260fae5ae1b368 100644
--- a/Lib/test/test_gzip.py
+++ b/Lib/test/test_gzip.py
@@ -143,6 +143,38 @@ def test_read1(self):
self.assertEqual(f.tell(), nread)
self.assertEqual(b''.join(blocks), data1 * 50)
+def test_readinto(self):
+# 10MB of uncompressible data to ensure multiple reads
+large_data = os.urandom(10 * 2**20)
+with gzip.GzipFile(self.filename, 'wb') as f:
+f.write(large_data)
+
+buf = bytearray(len(large_data))
+with gzip.GzipFile(self.filename, 'r') as f:
+nbytes = f.readinto(buf)
+self.assertEqual(nbytes, len(large_data))
+self.assertEqual(buf, large_data)
+
+def test_readinto1(self):
+# 10MB of uncompressible data to ensure multiple reads
+large_data = os.urandom(10 * 2**20)
+with gzip.GzipFile(self.filename, 'wb') as f:
+f.write(large_data)
+
+nread = 0
+buf = bytearray(len(large_data))
+memview = memoryview(buf) # Simplifies slicing
+with gzip.GzipFile(self.filename, 'r') as f:
+for count in range(200):
+nbytes = f.readinto1(memview[nread:])
+if not nbytes:
+break
+nread += nbytes
+self.assertEqual(f.tell(), nread)
+self.assertEqual(buf, large_data)
+# readinto1() should require multiple loops
+self.assertGreater(count, 1)
+
@bigmemtest(size=_4G, memuse=1)
def test_read_large(self, size):
# Read chunk size over UINT_MAX should be supported, despite zlib's
diff --git
a/Misc/NEWS.d/next/Library/2025-01-08-15-14-17.gh-issue-128647.GabglU.rst
b/Misc/NEWS.d/next/Library/2025-01-08-15-14-17.gh-issue-128647.GabglU.rst
new file mode 100644
index 00..034a66b704dea8
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2025-01-08-15-14-17.gh-issue-128647.GabglU.rst
@@ -0,0 +1,4 @@
+Eagerly write to buffers passed to :class:`gzip.GzipFile`'s
+:meth:`~io.BufferedIOBase.readinto` and
+:meth:`~io.BufferedIOBase.readinto1` implementations,
+avoiding unnecessary allocations. Patch by Chris Markiewicz.
___
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]
[Python-checkins] Test fixes for 3.15 (GH-133599)
https://github.com/python/cpython/commit/74e2acddf68b31ce16e8e0067b1df8c7b67bd6c8 commit: 74e2acddf68b31ce16e8e0067b1df8c7b67bd6c8 branch: main author: Zachary Ware committer: zware date: 2025-05-07T14:50:39-05:00 summary: Test fixes for 3.15 (GH-133599) Followup to 942673ed194813015d98819cfae7eba78ba5e1f9 (GH-133588) * Update configure for Python 3.15 * Update magic number for 3.15 * Remove deprecated 'check_home' argument from sysconfig.is_python_build * Add warningignore entries for Modules/_sqlite/clinic/connection.c.h * Work around c-analyzer complaints about _testclinic deprecation tests - Co-authored-by: Hugo van Kemenade <[email protected]> files: A Misc/NEWS.d/next/Library/2025-05-07-13-31-06.gh-issue-92897.ubeqGE.rst M Include/internal/pycore_magic_number.h M Lib/sysconfig/__init__.py M Lib/test/test_clinic.py M Modules/_testclinic.c M Modules/clinic/_testclinic_depr.c.h M PC/launcher.c M Tools/build/.warningignore_macos M Tools/build/.warningignore_ubuntu M configure diff --git a/Include/internal/pycore_magic_number.h b/Include/internal/pycore_magic_number.h index 1cc897c5a69469..22375a3b16b534 100644 --- a/Include/internal/pycore_magic_number.h +++ b/Include/internal/pycore_magic_number.h @@ -277,8 +277,9 @@ Known values: Python 3.14a7 3622 (Store annotations in different class dict keys) Python 3.14a7 3623 (Add BUILD_INTERPOLATION & BUILD_TEMPLATE opcodes) Python 3.14b1 3624 (Don't optimize LOAD_FAST when local is killed by DELETE_FAST) +Python 3.15a0 3650 (Initial version) -Python 3.15 will start with 3650 +Python 3.16 will start with 3700 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 @@ -289,7 +290,7 @@ PC/launcher.c must also be updated. */ -#define PYC_MAGIC_NUMBER 3624 +#define PYC_MAGIC_NUMBER 3650 /* This is equivalent to converting PYC_MAGIC_NUMBER to 2 bytes (little-endian) and then appending b'\r\n'. */ #define PYC_MAGIC_NUMBER_TOKEN \ diff --git a/Lib/sysconfig/__init__.py b/Lib/sysconfig/__init__.py index dad715eb087387..68890b45b82008 100644 --- a/Lib/sysconfig/__init__.py +++ b/Lib/sysconfig/__init__.py @@ -219,18 +219,7 @@ def _safe_realpath(path): if "_PYTHON_PROJECT_BASE" in os.environ: _PROJECT_BASE = _safe_realpath(os.environ["_PYTHON_PROJECT_BASE"]) -def is_python_build(check_home=None): -if check_home is not None: -import warnings -warnings.warn( -( -'The check_home argument of sysconfig.is_python_build is ' -'deprecated and its value is ignored. ' -'It will be removed in Python 3.15.' -), -DeprecationWarning, -stacklevel=2, -) +def is_python_build(): for fn in ("Setup", "Setup.local"): if os.path.isfile(os.path.join(_PROJECT_BASE, "Modules", fn)): return True diff --git a/Lib/test/test_clinic.py b/Lib/test/test_clinic.py index 0c99620e27cde4..6461b647925ad2 100644 --- a/Lib/test/test_clinic.py +++ b/Lib/test/test_clinic.py @@ -2985,7 +2985,7 @@ def check_depr_star(self, pnames, fn, /, *args, name=None, **kwds): regex = ( fr"Passing( more than)?( [0-9]+)? positional argument(s)? to " fr"{re.escape(name)}\(\) is deprecated. Parameters? {pnames} will " -fr"become( a)? keyword-only parameters? in Python 3\.14" +fr"become( a)? keyword-only parameters? in Python 3\.37" ) self.check_depr(regex, fn, *args, **kwds) @@ -2998,7 +2998,7 @@ def check_depr_kwd(self, pnames, fn, *args, name=None, **kwds): regex = ( fr"Passing keyword argument{pl} {pnames} to " fr"{re.escape(name)}\(\) is deprecated. Parameter{pl} {pnames} " -fr"will become positional-only in Python 3\.14." +fr"will become positional-only in Python 3\.37." ) self.check_depr(regex, fn, *args, **kwds) @@ -3782,9 +3782,9 @@ def test_depr_star_multi(self): fn("a", b="b", c="c", d="d", e="e", f="f", g="g", h="h") errmsg = ( "Passing more than 1 positional argument to depr_star_multi() is deprecated. " -"Parameter 'b' will become a keyword-only parameter in Python 3.16. " -"Parameters 'c' and 'd' will become keyword-only parameters in Python 3.15. " -"Parameters 'e', 'f' and 'g' will become keyword-only parameters in Python 3.14.") +"Parameter 'b'
[Python-checkins] wasi: Update the location of the 'config.site' file in the build script (GH-133611)
https://github.com/python/cpython/commit/14291faa52dfb97179ce747ec9ef91d97f5ab2ab commit: 14291faa52dfb97179ce747ec9ef91d97f5ab2ab branch: main author: Zachary Ware committer: zware date: 2025-05-07T20:48:41Z summary: wasi: Update the location of the 'config.site' file in the build script (GH-133611) Also remove Tools/wasm from mypy CI workflow files: M .github/workflows/mypy.yml M Tools/wasm/wasi/__main__.py diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 908daaf3a6019a..4683848ab5e68d 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -19,7 +19,6 @@ on: - "Tools/jit/**" - "Tools/peg_generator/**" - "Tools/requirements-dev.txt" - - "Tools/wasm/**" workflow_dispatch: permissions: @@ -51,7 +50,6 @@ jobs: "Tools/clinic", "Tools/jit", "Tools/peg_generator", - "Tools/wasm", ] steps: - uses: actions/checkout@v4 diff --git a/Tools/wasm/wasi/__main__.py b/Tools/wasm/wasi/__main__.py index 5a6578a2d7a9be..6af9b5f12cb8e4 100644 --- a/Tools/wasm/wasi/__main__.py +++ b/Tools/wasm/wasi/__main__.py @@ -206,7 +206,7 @@ def configure_wasi_python(context, working_dir): "https://github.com/WebAssembly/wasi-sdk and/or " "specify via $WASI_SDK_PATH or --wasi-sdk") -config_site = os.fsdecode(CHECKOUT / "Tools" / "wasm" / "config.site-wasm32-wasi") +config_site = os.fsdecode(CHECKOUT / "Tools" / "wasm" / "wasi" / "config.site-wasm32-wasi") wasi_build_dir = working_dir.relative_to(CHECKOUT) ___ 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]
[Python-checkins] gh-136710: Fix bad indentation in `os.chdir` docstring (GH-136709)
https://github.com/python/cpython/commit/bde808ad6ba5eee8a6201983cf071449d7ce7e39
commit: bde808ad6ba5eee8a6201983cf071449d7ce7e39
branch: main
author: Harmen Stoppels
committer: zware
date: 2025-07-16T15:30:10Z
summary:
gh-136710: Fix bad indentation in `os.chdir` docstring (GH-136709)
files:
M Modules/clinic/posixmodule.c.h
M Modules/posixmodule.c
diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h
index 22f426c5192bf2..65f5f8c9267b6c 100644
--- a/Modules/clinic/posixmodule.c.h
+++ b/Modules/clinic/posixmodule.c.h
@@ -380,7 +380,7 @@ PyDoc_STRVAR(os_chdir__doc__,
"\n"
"path may always be specified as a string.\n"
"On some platforms, path may also be specified as an open file descriptor.\n"
-" If this functionality is unavailable, using it raises an exception.");
+"If this functionality is unavailable, using it raises an exception.");
#define OS_CHDIR_METHODDEF\
{"chdir", _PyCFunction_CAST(os_chdir), METH_FASTCALL|METH_KEYWORDS,
os_chdir__doc__},
@@ -13440,4 +13440,4 @@ os__emscripten_debugger(PyObject *module, PyObject
*Py_UNUSED(ignored))
#ifndef OS__EMSCRIPTEN_DEBUGGER_METHODDEF
#define OS__EMSCRIPTEN_DEBUGGER_METHODDEF
#endif /* !defined(OS__EMSCRIPTEN_DEBUGGER_METHODDEF) */
-/*[clinic end generated code: output=5341daae6581a62b input=a9049054013a1b77]*/
+/*[clinic end generated code: output=6cfddb3b77dc7a40 input=a9049054013a1b77]*/
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index b570f81b7cf7c2..47eaf5cd428a53 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -3477,12 +3477,12 @@ Change the current working directory to the specified
path.
path may always be specified as a string.
On some platforms, path may also be specified as an open file descriptor.
- If this functionality is unavailable, using it raises an exception.
+If this functionality is unavailable, using it raises an exception.
[clinic start generated code]*/
static PyObject *
os_chdir_impl(PyObject *module, path_t *path)
-/*[clinic end generated code: output=3be6400eee26eaae input=1a4a15b4d12cb15d]*/
+/*[clinic end generated code: output=3be6400eee26eaae input=a74ceab5d72adf74]*/
{
int result;
___
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]
[Python-checkins] [3.13] gh-136710: Fix bad indentation in `os.chdir` docstring (GH-136721)
https://github.com/python/cpython/commit/fddb58a5efa01cb65e97eabbf7c085dc86164010
commit: fddb58a5efa01cb65e97eabbf7c085dc86164010
branch: 3.13
author: Zachary Ware
committer: zware
date: 2025-07-16T16:33:46Z
summary:
[3.13] gh-136710: Fix bad indentation in `os.chdir` docstring (GH-136721)
(cherry picked from commit bde808ad6ba5eee8a6201983cf071449d7ce7e39)
Co-authored-by: Harmen Stoppels
files:
M Modules/clinic/posixmodule.c.h
M Modules/posixmodule.c
diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h
index 25d242dbd42699..2aa771ab62bc10 100644
--- a/Modules/clinic/posixmodule.c.h
+++ b/Modules/clinic/posixmodule.c.h
@@ -371,7 +371,7 @@ PyDoc_STRVAR(os_chdir__doc__,
"\n"
"path may always be specified as a string.\n"
"On some platforms, path may also be specified as an open file descriptor.\n"
-" If this functionality is unavailable, using it raises an exception.");
+"If this functionality is unavailable, using it raises an exception.");
#define OS_CHDIR_METHODDEF\
{"chdir", _PyCFunction_CAST(os_chdir), METH_FASTCALL|METH_KEYWORDS,
os_chdir__doc__},
@@ -12879,4 +12879,4 @@ os__is_inputhook_installed(PyObject *module, PyObject
*Py_UNUSED(ignored))
#ifndef OS__SUPPORTS_VIRTUAL_TERMINAL_METHODDEF
#define OS__SUPPORTS_VIRTUAL_TERMINAL_METHODDEF
#endif /* !defined(OS__SUPPORTS_VIRTUAL_TERMINAL_METHODDEF) */
-/*[clinic end generated code: output=616483d525403f7c input=a9049054013a1b77]*/
+/*[clinic end generated code: output=28706eafe31b28c1 input=a9049054013a1b77]*/
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index dc7d1e8d63be1f..f31659808d7378 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -3374,12 +3374,12 @@ Change the current working directory to the specified
path.
path may always be specified as a string.
On some platforms, path may also be specified as an open file descriptor.
- If this functionality is unavailable, using it raises an exception.
+If this functionality is unavailable, using it raises an exception.
[clinic start generated code]*/
static PyObject *
os_chdir_impl(PyObject *module, path_t *path)
-/*[clinic end generated code: output=3be6400eee26eaae input=1a4a15b4d12cb15d]*/
+/*[clinic end generated code: output=3be6400eee26eaae input=a74ceab5d72adf74]*/
{
int result;
___
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]
[Python-checkins] gh-136145: Define 'standard library' and 'stdlib' in the glossary (GH-136146)
https://github.com/python/cpython/commit/92f392ad9e5e10ff98eac319e58ec79df5951ce0 commit: 92f392ad9e5e10ff98eac319e58ec79df5951ce0 branch: main author: Zachary Ware committer: zware date: 2025-07-09T21:33:45Z summary: gh-136145: Define 'standard library' and 'stdlib' in the glossary (GH-136146) - Co-authored-by: Hugo van Kemenade <[email protected]> Co-authored-by: Éric files: M Doc/glossary.rst diff --git a/Doc/glossary.rst b/Doc/glossary.rst index c5c7994f1262a9..705b0a9279c6d4 100644 --- a/Doc/glossary.rst +++ b/Doc/glossary.rst @@ -1280,6 +1280,16 @@ Glossary and ending with double underscores. Special methods are documented in :ref:`specialnames`. + standard library + The collection of :term:`packages `, :term:`modules ` + and :term:`extension modules ` distributed as a part + of the official Python interpreter package. The exact membership of the + collection may vary based on platform, available system libraries, or + other criteria. Documentation can be found at :ref:`library-index`. + + See also :data:`sys.stdlib_module_names` for a list of all possible + standard library module names. + statement A statement is part of a suite (a "block" of code). A statement is either an :term:`expression` or one of several constructs with a keyword, such @@ -1290,6 +1300,9 @@ Glossary issues such as incorrect types. See also :term:`type hints ` and the :mod:`typing` module. + stdlib + An abbreviation of :term:`standard library`. + strong reference In Python's C API, a strong reference is a reference to an object which is owned by the code holding the reference. The strong ___ 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]
[Python-checkins] [3.14] gh-136145: Define 'standard library' and 'stdlib' in the glossary (GH-136485)
https://github.com/python/cpython/commit/4db567546adb4f7049dd8dcc1c6ea1601a000f0f commit: 4db567546adb4f7049dd8dcc1c6ea1601a000f0f branch: 3.14 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-07-09T21:39:33Z summary: [3.14] gh-136145: Define 'standard library' and 'stdlib' in the glossary (GH-136485) (cherry picked from commit 92f392ad9e5e10ff98eac319e58ec79df5951ce0) Co-authored-by: Zachary Ware Co-authored-by: Hugo van Kemenade <[email protected]> Co-authored-by: Éric files: M Doc/glossary.rst diff --git a/Doc/glossary.rst b/Doc/glossary.rst index c5c7994f1262a9..705b0a9279c6d4 100644 --- a/Doc/glossary.rst +++ b/Doc/glossary.rst @@ -1280,6 +1280,16 @@ Glossary and ending with double underscores. Special methods are documented in :ref:`specialnames`. + standard library + The collection of :term:`packages `, :term:`modules ` + and :term:`extension modules ` distributed as a part + of the official Python interpreter package. The exact membership of the + collection may vary based on platform, available system libraries, or + other criteria. Documentation can be found at :ref:`library-index`. + + See also :data:`sys.stdlib_module_names` for a list of all possible + standard library module names. + statement A statement is part of a suite (a "block" of code). A statement is either an :term:`expression` or one of several constructs with a keyword, such @@ -1290,6 +1300,9 @@ Glossary issues such as incorrect types. See also :term:`type hints ` and the :mod:`typing` module. + stdlib + An abbreviation of :term:`standard library`. + strong reference In Python's C API, a strong reference is a reference to an object which is owned by the code holding the reference. The strong ___ 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]
[Python-checkins] [3.13] gh-136145: Define 'standard library' and 'stdlib' in the glossary (GH-136486)
https://github.com/python/cpython/commit/2c2dd75941582844b32f61459371095f7205d07d commit: 2c2dd75941582844b32f61459371095f7205d07d branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-07-09T21:40:58Z summary: [3.13] gh-136145: Define 'standard library' and 'stdlib' in the glossary (GH-136486) (cherry picked from commit 92f392ad9e5e10ff98eac319e58ec79df5951ce0) Co-authored-by: Zachary Ware Co-authored-by: Hugo van Kemenade <[email protected]> Co-authored-by: Éric files: M Doc/glossary.rst diff --git a/Doc/glossary.rst b/Doc/glossary.rst index 1ca9d0f5e7b407..118d4fbe30fda7 100644 --- a/Doc/glossary.rst +++ b/Doc/glossary.rst @@ -1235,6 +1235,16 @@ Glossary and ending with double underscores. Special methods are documented in :ref:`specialnames`. + standard library + The collection of :term:`packages `, :term:`modules ` + and :term:`extension modules ` distributed as a part + of the official Python interpreter package. The exact membership of the + collection may vary based on platform, available system libraries, or + other criteria. Documentation can be found at :ref:`library-index`. + + See also :data:`sys.stdlib_module_names` for a list of all possible + standard library module names. + statement A statement is part of a suite (a "block" of code). A statement is either an :term:`expression` or one of several constructs with a keyword, such @@ -1245,6 +1255,9 @@ Glossary issues such as incorrect types. See also :term:`type hints ` and the :mod:`typing` module. + stdlib + An abbreviation of :term:`standard library`. + strong reference In Python's C API, a strong reference is a reference to an object which is owned by the code holding the reference. The strong ___ 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]
[Python-checkins] gh-135401: Test AWS-LC as a cryptography library in CI (GH-135402)
https://github.com/python/cpython/commit/db47f4d844acf2b6e52e44f7f3d5f7566b1e402c commit: db47f4d844acf2b6e52e44f7f3d5f7566b1e402c branch: main author: Will Childs-Klein committer: zware date: 2025-07-11T17:24:11-05:00 summary: gh-135401: Test AWS-LC as a cryptography library in CI (GH-135402) Co-authored-by: Adam Turner <[email protected]> Co-authored-by: Bénédikt Tran <[email protected]> Co-authored-by: Hugo van Kemenade <[email protected]> Co-authored-by: Zachary Ware files: A Misc/NEWS.d/next/Tests/2025-06-11-16-52-49.gh-issue-135401.ccMXmL.rst M .github/workflows/build.yml M .github/workflows/posix-deps-apt.sh M Tools/ssl/multissltests.py M configure M configure.ac diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c6171571857af6..05f20e12f4653d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -260,7 +260,7 @@ jobs: free-threading: ${{ matrix.free-threading }} os: ${{ matrix.os }} - build-ubuntu-ssltests: + build-ubuntu-ssltests-openssl: name: 'Ubuntu SSL tests with OpenSSL' runs-on: ${{ matrix.os }} timeout-minutes: 60 @@ -322,6 +322,81 @@ jobs: - name: SSL tests run: ./python Lib/test/ssltests.py + build-ubuntu-ssltests-awslc: +name: 'Ubuntu SSL tests with AWS-LC' +runs-on: ${{ matrix.os }} +timeout-minutes: 60 +needs: build-context +if: needs.build-context.outputs.run-tests == 'true' +strategy: + fail-fast: false + matrix: +os: [ubuntu-24.04] +awslc_ver: [1.55.0] +env: + AWSLC_VER: ${{ matrix.awslc_ver}} + MULTISSL_DIR: ${{ github.workspace }}/multissl + OPENSSL_DIR: ${{ github.workspace }}/multissl/aws-lc/${{ matrix.awslc_ver }} + LD_LIBRARY_PATH: ${{ github.workspace }}/multissl/aws-lc/${{ matrix.awslc_ver }}/lib +steps: +- uses: actions/checkout@v4 + with: +persist-credentials: false +- name: Runner image version + run: echo "IMAGE_OS_VERSION=${ImageOS}-${ImageVersion}" >> "$GITHUB_ENV" +- name: Restore config.cache + uses: actions/cache@v4 + with: +path: config.cache +key: ${{ github.job }}-${{ env.IMAGE_OS_VERSION }}-${{ needs.build-context.outputs.config-hash }} +- name: Register gcc problem matcher + run: echo "::add-matcher::.github/problem-matchers/gcc.json" +- name: Install dependencies + run: sudo ./.github/workflows/posix-deps-apt.sh +- name: Configure SSL lib env vars + run: | +echo "MULTISSL_DIR=${GITHUB_WORKSPACE}/multissl" >> "$GITHUB_ENV" +echo "OPENSSL_DIR=${GITHUB_WORKSPACE}/multissl/aws-lc/${AWSLC_VER}" >> "$GITHUB_ENV" +echo "LD_LIBRARY_PATH=${GITHUB_WORKSPACE}/multissl/aws-lc/${AWSLC_VER}/lib" >> "$GITHUB_ENV" +- name: 'Restore AWS-LC build' + id: cache-aws-lc + uses: actions/cache@v4 + with: +path: ./multissl/aws-lc/${{ matrix.awslc_ver }} +key: ${{ matrix.os }}-multissl-aws-lc-${{ matrix.awslc_ver }} +- name: Install AWS-LC + if: steps.cache-aws-lc.outputs.cache-hit != 'true' + run: | +python3 Tools/ssl/multissltests.py \ + --steps=library \ + --base-directory "$MULTISSL_DIR" \ + --awslc ${{ matrix.awslc_ver }} \ + --system Linux +- name: Add ccache to PATH + run: | +echo "PATH=/usr/lib/ccache:$PATH" >> "$GITHUB_ENV" +- name: Configure ccache action + uses: hendrikmuhs/[email protected] + with: +save: false +- name: Configure CPython + run: | +./configure CFLAGS="-fdiagnostics-format=json" \ + --config-cache \ + --enable-slower-safety \ + --with-pydebug \ + --with-openssl="$OPENSSL_DIR" \ + --with-builtin-hashlib-hashes=blake2 \ + --with-ssl-default-suites=openssl +- name: Build CPython + run: make -j +- name: Display build info + run: make pythoninfo +- name: Verify python is linked to AWS-LC + run: ./python -c 'import ssl; print(ssl.OPENSSL_VERSION)' | grep AWS-LC +- name: SSL tests + run: ./python Lib/test/ssltests.py + build-wasi: name: 'WASI' needs: build-context @@ -628,7 +703,8 @@ jobs: - build-windows-msi - build-macos - build-ubuntu -- build-ubuntu-ssltests +- build-ubuntu-ssltests-awslc +- build-ubuntu-ssltests-openssl - build-wasi - test-hypothesis - build-asan @@ -643,7 +719,8 @@ jobs: with: allowed-failures: >- build-windows-msi, - build-ubuntu-ssltests, + build-ubuntu-ssltests-awslc, +
[Python-checkins] [3.14] gh-136710: Fix bad indentation in `os.chdir` docstring (GH-136719)
https://github.com/python/cpython/commit/5f1d46f7d0b03d4deb192e37e6a727136e2e0aa3
commit: 5f1d46f7d0b03d4deb192e37e6a727136e2e0aa3
branch: 3.14
author: Zachary Ware
committer: zware
date: 2025-07-16T17:15:50Z
summary:
[3.14] gh-136710: Fix bad indentation in `os.chdir` docstring (GH-136719)
(cherry picked from commit bde808ad6ba5eee8a6201983cf071449d7ce7e39)
Co-authored-by: Harmen Stoppels
files:
M Modules/clinic/posixmodule.c.h
M Modules/posixmodule.c
diff --git a/Modules/clinic/posixmodule.c.h b/Modules/clinic/posixmodule.c.h
index 6b8cc3d07ab01c..65d3aff18d7b42 100644
--- a/Modules/clinic/posixmodule.c.h
+++ b/Modules/clinic/posixmodule.c.h
@@ -380,7 +380,7 @@ PyDoc_STRVAR(os_chdir__doc__,
"\n"
"path may always be specified as a string.\n"
"On some platforms, path may also be specified as an open file descriptor.\n"
-" If this functionality is unavailable, using it raises an exception.");
+"If this functionality is unavailable, using it raises an exception.");
#define OS_CHDIR_METHODDEF\
{"chdir", _PyCFunction_CAST(os_chdir), METH_FASTCALL|METH_KEYWORDS,
os_chdir__doc__},
@@ -13398,4 +13398,4 @@ os__emscripten_debugger(PyObject *module, PyObject
*Py_UNUSED(ignored))
#ifndef OS__EMSCRIPTEN_DEBUGGER_METHODDEF
#define OS__EMSCRIPTEN_DEBUGGER_METHODDEF
#endif /* !defined(OS__EMSCRIPTEN_DEBUGGER_METHODDEF) */
-/*[clinic end generated code: output=f7b5635e0b948be4 input=a9049054013a1b77]*/
+/*[clinic end generated code: output=c693071966d11548 input=a9049054013a1b77]*/
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index 27352f0c20dd48..b3fe9953264ae3 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -3477,12 +3477,12 @@ Change the current working directory to the specified
path.
path may always be specified as a string.
On some platforms, path may also be specified as an open file descriptor.
- If this functionality is unavailable, using it raises an exception.
+If this functionality is unavailable, using it raises an exception.
[clinic start generated code]*/
static PyObject *
os_chdir_impl(PyObject *module, path_t *path)
-/*[clinic end generated code: output=3be6400eee26eaae input=1a4a15b4d12cb15d]*/
+/*[clinic end generated code: output=3be6400eee26eaae input=a74ceab5d72adf74]*/
{
int result;
___
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]
[Python-checkins] Exclude _testclinic_depr.c.h from c-analyzer (GH-137086)
https://github.com/python/cpython/commit/d5e75c07682864e9d265e11f5e4730147e7d4842
commit: d5e75c07682864e9d265e11f5e4730147e7d4842
branch: main
author: Zachary Ware
committer: zware
date: 2025-07-24T15:50:01-05:00
summary:
Exclude _testclinic_depr.c.h from c-analyzer (GH-137086)
_testclinic.c mocks out PY_VERSION_HEX to 3.8 before including
_testclinic_depr.c.h to avoid the errors the preprocessor would
otherwise throw due to the deprecation feature it is testing.
Also partially revert 74e2acddf68b31ce16e8e0067b1df8c7b67bd6c8:
this restores Modules/_testclinic.c to match the same file in the 3.14
branch.
files:
M Lib/test/test_clinic.py
M Modules/_testclinic.c
M Modules/clinic/_testclinic_depr.c.h
M Tools/c-analyzer/cpython/_parser.py
diff --git a/Lib/test/test_clinic.py b/Lib/test/test_clinic.py
index b1a81cfc1b124f..f8d9b0af8f92ec 100644
--- a/Lib/test/test_clinic.py
+++ b/Lib/test/test_clinic.py
@@ -2979,7 +2979,7 @@ def check_depr_star(self, pnames, fn, /, *args,
name=None, **kwds):
regex = (
fr"Passing( more than)?( [0-9]+)? positional argument(s)? to "
fr"{re.escape(name)}\(\) is deprecated. Parameters? {pnames} will "
-fr"become( a)? keyword-only parameters? in Python 3\.37"
+fr"become( a)? keyword-only parameters? in Python 3\.14"
)
self.check_depr(regex, fn, *args, **kwds)
@@ -2992,7 +2992,7 @@ def check_depr_kwd(self, pnames, fn, *args, name=None,
**kwds):
regex = (
fr"Passing keyword argument{pl} {pnames} to "
fr"{re.escape(name)}\(\) is deprecated. Parameter{pl} {pnames} "
-fr"will become positional-only in Python 3\.37."
+fr"will become positional-only in Python 3\.14."
)
self.check_depr(regex, fn, *args, **kwds)
@@ -3803,9 +3803,9 @@ def test_depr_star_multi(self):
fn("a", b="b", c="c", d="d", e="e", f="f", g="g", h="h")
errmsg = (
"Passing more than 1 positional argument to depr_star_multi() is
deprecated. "
-"Parameter 'b' will become a keyword-only parameter in Python
3.39. "
-"Parameters 'c' and 'd' will become keyword-only parameters in
Python 3.38. "
-"Parameters 'e', 'f' and 'g' will become keyword-only parameters
in Python 3.37.")
+"Parameter 'b' will become a keyword-only parameter in Python
3.16. "
+"Parameters 'c' and 'd' will become keyword-only parameters in
Python 3.15. "
+"Parameters 'e', 'f' and 'g' will become keyword-only parameters
in Python 3.14.")
check = partial(self.check_depr, re.escape(errmsg), fn)
check("a", "b", c="c", d="d", e="e", f="f", g="g", h="h")
check("a", "b", "c", d="d", e="e", f="f", g="g", h="h")
@@ -3904,9 +3904,9 @@ def test_depr_kwd_multi(self):
fn("a", "b", "c", "d", "e", "f", "g", h="h")
errmsg = (
"Passing keyword arguments 'b', 'c', 'd', 'e', 'f' and 'g' to
depr_kwd_multi() is deprecated. "
-"Parameter 'b' will become positional-only in Python 3.37. "
-"Parameters 'c' and 'd' will become positional-only in Python
3.38. "
-"Parameters 'e', 'f' and 'g' will become positional-only in Python
3.39.")
+"Parameter 'b' will become positional-only in Python 3.14. "
+"Parameters 'c' and 'd' will become positional-only in Python
3.15. "
+"Parameters 'e', 'f' and 'g' will become positional-only in Python
3.16.")
check = partial(self.check_depr, re.escape(errmsg), fn)
check("a", "b", "c", "d", "e", "f", g="g", h="h")
check("a", "b", "c", "d", "e", f="f", g="g", h="h")
@@ -3921,8 +3921,8 @@ def test_depr_multi(self):
self.assertRaises(TypeError, fn, "a", "b", "c", "d", "e", "f", "g")
errmsg = (
"Passing more than 4 positional argume
[Python-checkins] Fix buildbot release status link in CONTRIBUTING.rst (GH-137429)
https://github.com/python/cpython/commit/9745976ac6b3e1633838fb6c192328b08ca3f8ce commit: 9745976ac6b3e1633838fb6c192328b08ca3f8ce branch: main author: Zachary Ware committer: zware date: 2025-08-05T19:44:27Z summary: Fix buildbot release status link in CONTRIBUTING.rst (GH-137429) The existing link works, but includes the legacy `/all` part of the path which causes a scary-looking banner about a misconfiguration on the `Home` page when in reality it's the link that includes a deprecated path. files: M .github/CONTRIBUTING.rst diff --git a/.github/CONTRIBUTING.rst b/.github/CONTRIBUTING.rst index 2ef9cdc191481e..5b86302bdd1ec4 100644 --- a/.github/CONTRIBUTING.rst +++ b/.github/CONTRIBUTING.rst @@ -4,7 +4,7 @@ Contributing to Python Build Status -- `Buildbot status overview <https://buildbot.python.org/all/#/release_status>`_ +- `Buildbot status overview <https://buildbot.python.org/#/release_status>`_ - `GitHub Actions status <https://github.com/python/cpython/actions/workflows/build.yml>`_ ___ 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]
[Python-checkins] [3.14] gh-134262: Add retries to downloads in PCbuild\get_external.py (GH-134865)
https://github.com/python/cpython/commit/34b451532b71249e666428a6bd779eaf289958a7 commit: 34b451532b71249e666428a6bd779eaf289958a7 branch: 3.14 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-05-28T23:47:26Z summary: [3.14] gh-134262: Add retries to downloads in PCbuild\get_external.py (GH-134865) (cherry picked from commit e9d845b41dca9ad84b76ef777d05e647a4b4d8cd) Includes fix for off-by-one error from GH-134867 (cherry-picked from commit e64395e8eb8d3a9e35e3e534e87d427ff27ab0a5) Co-authored-by: Emma Smith files: M PCbuild/get_external.py diff --git a/PCbuild/get_external.py b/PCbuild/get_external.py index 4ecc8925349c93..8c1155c74a642c 100755 --- a/PCbuild/get_external.py +++ b/PCbuild/get_external.py @@ -9,6 +9,25 @@ from urllib.request import urlretrieve +def retrieve_with_retries(download_location, output_path, reporthook, + max_retries=7): +"""Download a file with exponential backoff retry and save to disk.""" +for attempt in range(max_retries + 1): +try: +resp = urlretrieve( +download_location, +output_path, +reporthook=reporthook, +) +except ConnectionError as ex: +if attempt == max_retries: +msg = f"Download from {download_location} failed." +raise OSError(msg) from ex +time.sleep(2.25**attempt) +else: +return resp + + def fetch_zip(commit_hash, zip_dir, *, org='python', binary=False, verbose): repo = f'cpython-{"bin" if binary else "source"}-deps' url = f'https://github.com/{org}/{repo}/archive/{commit_hash}.zip' @@ -16,10 +35,10 @@ def fetch_zip(commit_hash, zip_dir, *, org='python', binary=False, verbose): if verbose: reporthook = print zip_dir.mkdir(parents=True, exist_ok=True) -filename, headers = urlretrieve( +filename, _headers = retrieve_with_retries( url, zip_dir / f'{commit_hash}.zip', -reporthook=reporthook, +reporthook ) return filename ___ 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]
[Python-checkins] [3.14] gh-134262: Add retries to generate_sbom.py (GH-134460)
https://github.com/python/cpython/commit/7dc4496655cdc0d698396ff5ca4ef3128aa7fe53 commit: 7dc4496655cdc0d698396ff5ca4ef3128aa7fe53 branch: 3.14 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-05-28T23:52:31Z summary: [3.14] gh-134262: Add retries to generate_sbom.py (GH-134460) (cherry picked from commit 0c5a8b0b55238a45b9073d06a10c3a59568cdf3c) Includes fix for off-by-one error from GH-134867 (cherry-picked from commit e64395e8eb8d3a9e35e3e534e87d427ff27ab0a5) Co-authored-by: Emma Smith Co-authored-by: Semyon Moroz files: M Tools/build/generate_sbom.py diff --git a/Tools/build/generate_sbom.py b/Tools/build/generate_sbom.py index db01426e9722c3..89f8f83999c47e 100644 --- a/Tools/build/generate_sbom.py +++ b/Tools/build/generate_sbom.py @@ -7,7 +7,9 @@ import re import subprocess import sys +import time import typing +import urllib.error import urllib.request from pathlib import Path, PurePosixPath, PureWindowsPath @@ -161,6 +163,21 @@ def get_externals() -> list[str]: return externals +def download_with_retries(download_location: str, + max_retries: int = 5, + base_delay: float = 2.0) -> typing.Any: +"""Download a file with exponential backoff retry.""" +for attempt in range(max_retries + 1): +try: +resp = urllib.request.urlopen(download_location) +except urllib.error.URLError as ex: +if attempt == max_retries: +raise ex +time.sleep(base_delay**attempt) +else: +return resp + + def check_sbom_packages(sbom_data: dict[str, typing.Any]) -> None: """Make a bunch of assertions about the SBOM package data to ensure it's consistent.""" @@ -175,7 +192,7 @@ def check_sbom_packages(sbom_data: dict[str, typing.Any]) -> None: # and that the download URL is valid. if "checksums" not in package or "CI" in os.environ: download_location = package["downloadLocation"] -resp = urllib.request.urlopen(download_location) +resp = download_with_retries(download_location) error_if(resp.status != 200, f"Couldn't access URL: {download_location}'") package["checksums"] = [{ ___ 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]
[Python-checkins] gh-134262: Fix off by one errors in download retry functions (GH-134867)
https://github.com/python/cpython/commit/e64395e8eb8d3a9e35e3e534e87d427ff27ab0a5 commit: e64395e8eb8d3a9e35e3e534e87d427ff27ab0a5 branch: main author: Emma Smith committer: zware date: 2025-05-28T18:15:39-05:00 summary: gh-134262: Fix off by one errors in download retry functions (GH-134867) files: M PCbuild/get_external.py M Tools/build/generate_sbom.py diff --git a/PCbuild/get_external.py b/PCbuild/get_external.py index 99aff63882f5ba..8c1155c74a642c 100755 --- a/PCbuild/get_external.py +++ b/PCbuild/get_external.py @@ -12,7 +12,7 @@ def retrieve_with_retries(download_location, output_path, reporthook, max_retries=7): """Download a file with exponential backoff retry and save to disk.""" -for attempt in range(max_retries): +for attempt in range(max_retries + 1): try: resp = urlretrieve( download_location, diff --git a/Tools/build/generate_sbom.py b/Tools/build/generate_sbom.py index ecb7b54f6d8a13..df52f8de762a01 100644 --- a/Tools/build/generate_sbom.py +++ b/Tools/build/generate_sbom.py @@ -169,7 +169,7 @@ def download_with_retries(download_location: str, base_delay: float = 2.25, max_jitter: float = 1.0) -> typing.Any: """Download a file with exponential backoff retry.""" -for attempt in range(max_retries): +for attempt in range(max_retries + 1): try: resp = urllib.request.urlopen(download_location) except urllib.error.URLError as ex: ___ 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]
[Python-checkins] gh-132339: Add support for OpenSSL 3.5 (GH-137720)
https://github.com/python/cpython/commit/7a703c8f1942c8bd07943458962f6e59d2892757
commit: 7a703c8f1942c8bd07943458962f6e59d2892757
branch: main
author: Zachary Ware
committer: zware
date: 2025-08-13T23:18:03-05:00
summary:
gh-132339: Add support for OpenSSL 3.5 (GH-137720)
* Add OpenSSL 3.5.2 definitions to Modules/_ssl_data_35.h (moved from
Modules/_ssl_data_34.h)
* Demote OpenSSL 3.1 to "old", remove it from CI
* Update all OpenSSL versions to latest patchlevel in CI config and
multissltests defaults
* Add OpenSSL 3.5.2 to CI configuration and multissltests default list
* Fix a typo in the argument parser description of multissltests.py
files:
A Misc/NEWS.d/next/Build/2025-08-13-12-10-12.gh-issue-132339.3Czz5y.rst
A Modules/_ssl_data_35.h
D Modules/_ssl_data_34.h
M .github/workflows/build.yml
M Modules/_ssl.c
M Tools/ssl/multissltests.py
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 56f222cd94ab6f..d0204df035a720 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -270,7 +270,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-24.04]
-openssl_ver: [3.0.16, 3.1.8, 3.2.4, 3.3.3, 3.4.1]
+openssl_ver: [3.0.17, 3.2.5, 3.3.4, 3.4.2, 3.5.2]
# See Tools/ssl/make_ssl_data.py for notes on adding a new version
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
diff --git
a/Misc/NEWS.d/next/Build/2025-08-13-12-10-12.gh-issue-132339.3Czz5y.rst
b/Misc/NEWS.d/next/Build/2025-08-13-12-10-12.gh-issue-132339.3Czz5y.rst
new file mode 100644
index 00..493be0ca2da966
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2025-08-13-12-10-12.gh-issue-132339.3Czz5y.rst
@@ -0,0 +1 @@
+Add support for OpenSSL 3.5.
diff --git a/Modules/_ssl.c b/Modules/_ssl.c
index a74654b7573f45..fde49fd0d2cd09 100644
--- a/Modules/_ssl.c
+++ b/Modules/_ssl.c
@@ -150,7 +150,7 @@ static void _PySSLFixErrno(void) {
/* Include generated data (error codes) */
/* See make_ssl_data.h for notes on adding a new version. */
#if (OPENSSL_VERSION_NUMBER >= 0x30401000L)
-#include "_ssl_data_34.h"
+#include "_ssl_data_35.h"
#elif (OPENSSL_VERSION_NUMBER >= 0x3010L)
#include "_ssl_data_340.h"
#elif (OPENSSL_VERSION_NUMBER >= 0x3000L)
diff --git a/Modules/_ssl_data_34.h b/Modules/_ssl_data_35.h
similarity index 98%
rename from Modules/_ssl_data_34.h
rename to Modules/_ssl_data_35.h
index 99718c5e605acf..9e69eaa910f003 100644
--- a/Modules/_ssl_data_34.h
+++ b/Modules/_ssl_data_35.h
@@ -1,6 +1,6 @@
/* File generated by Tools/ssl/make_ssl_data.py */
-/* Generated on 2025-03-26T13:47:34.223146+00:00 */
-/* Generated from Git commit openssl-3.4.1-0-ga26d85337d */
+/* Generated on 2025-08-13T16:42:33.155822+00:00 */
+/* Generated from Git commit openssl-3.5.2-0-g0893a6235 */
/* generated from args.lib2errnum */
static struct py_ssl_library_code library_codes[] = {
@@ -1283,6 +1283,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"FAILED_BUILDING_OWN_CHAIN", 58, 164},
#endif
+ #ifdef CMP_R_FAILED_EXTRACTING_CENTRAL_GEN_KEY
+{"FAILED_EXTRACTING_CENTRAL_GEN_KEY", ERR_LIB_CMP,
CMP_R_FAILED_EXTRACTING_CENTRAL_GEN_KEY},
+ #else
+{"FAILED_EXTRACTING_CENTRAL_GEN_KEY", 58, 203},
+ #endif
#ifdef CMP_R_FAILED_EXTRACTING_PUBKEY
{"FAILED_EXTRACTING_PUBKEY", ERR_LIB_CMP, CMP_R_FAILED_EXTRACTING_PUBKEY},
#else
@@ -1343,6 +1348,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"INVALID_ROOTCAKEYUPDATE", 58, 195},
#endif
+ #ifdef CMP_R_MISSING_CENTRAL_GEN_KEY
+{"MISSING_CENTRAL_GEN_KEY", ERR_LIB_CMP, CMP_R_MISSING_CENTRAL_GEN_KEY},
+ #else
+{"MISSING_CENTRAL_GEN_KEY", 58, 204},
+ #endif
#ifdef CMP_R_MISSING_CERTID
{"MISSING_CERTID", ERR_LIB_CMP, CMP_R_MISSING_CERTID},
#else
@@ -1513,6 +1523,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"UNCLEAN_CTX", 58, 191},
#endif
+ #ifdef CMP_R_UNEXPECTED_CENTRAL_GEN_KEY
+{"UNEXPECTED_CENTRAL_GEN_KEY", ERR_LIB_CMP,
CMP_R_UNEXPECTED_CENTRAL_GEN_KEY},
+ #else
+{"UNEXPECTED_CENTRAL_GEN_KEY", 58, 205},
+ #endif
#ifdef CMP_R_UNEXPECTED_CERTPROFILE
{"UNEXPECTED_CERTPROFILE", ERR_LIB_CMP, CMP_R_UNEXPECTED_CERTPROFILE},
#else
@@ -2308,6 +2323,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"BAD_PBM_ITERATIONCOUNT", 56, 100},
#endif
+ #ifdef CRMF_R_CMS_NOT_SUPPORTED
+{"CMS_NOT_SUPPORTED", ERR_LIB_CRMF, CRMF_R_CMS_NOT_SUPPORTED},
+ #else
+{"CMS_NOT_SUPPORTED", 56, 122},
+ #endif
#ifdef CRMF_R_CRMFERROR
{"CRMFERROR", ERR_LIB_CRMF, CRMF_R_CRMFERROR},
#else
@@ -2323,16 +2343,41 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"ERROR_DECODING_CERTIFICATE", 56, 104},
[Python-checkins] [3.13] gh-134262: Fix off by one errors in download retry functions (GH-137775)
https://github.com/python/cpython/commit/4c29fc2b021e2525bcd6e2556b8278de8bace812 commit: 4c29fc2b021e2525bcd6e2556b8278de8bace812 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-08-14T19:01:13Z summary: [3.13] gh-134262: Fix off by one errors in download retry functions (GH-137775) (cherry picked from commit e64395e8eb8d3a9e35e3e534e87d427ff27ab0a5) Co-authored-by: Emma Smith files: M PCbuild/get_external.py M Tools/build/generate_sbom.py diff --git a/PCbuild/get_external.py b/PCbuild/get_external.py index 99aff63882f5ba..8c1155c74a642c 100755 --- a/PCbuild/get_external.py +++ b/PCbuild/get_external.py @@ -12,7 +12,7 @@ def retrieve_with_retries(download_location, output_path, reporthook, max_retries=7): """Download a file with exponential backoff retry and save to disk.""" -for attempt in range(max_retries): +for attempt in range(max_retries + 1): try: resp = urlretrieve( download_location, diff --git a/Tools/build/generate_sbom.py b/Tools/build/generate_sbom.py index 82f06f0a7e57f9..60fb21aa2cb730 100644 --- a/Tools/build/generate_sbom.py +++ b/Tools/build/generate_sbom.py @@ -172,7 +172,7 @@ def download_with_retries(download_location: str, base_delay: float = 2.25, max_jitter: float = 1.0) -> typing.Any: """Download a file with exponential backoff retry.""" -for attempt in range(max_retries): +for attempt in range(max_retries + 1): try: resp = urllib.request.urlopen(download_location) except urllib.error.URLError as ex: ___ 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]
[Python-checkins] Remove long-obsolete PCbuild/field3.py script (GH-139739)
https://github.com/python/cpython/commit/c53c55b6ed9550dbffc5aad08aad7b920d095972
commit: c53c55b6ed9550dbffc5aad08aad7b920d095972
branch: main
author: Zachary Ware
committer: zware
date: 2025-10-08T00:29:43Z
summary:
Remove long-obsolete PCbuild/field3.py script (GH-139739)
As far as I can tell, it has not actually been used since 2003.
files:
D PCbuild/field3.py
diff --git a/PCbuild/field3.py b/PCbuild/field3.py
deleted file mode 100644
index edcbe36ae083ba..00
--- a/PCbuild/field3.py
+++ /dev/null
@@ -1,35 +0,0 @@
-# An absurd workaround for the lack of arithmetic in MS's resource compiler.
-# After building Python, run this, then paste the output into the appropriate
-# part of PC\python_nt.rc.
-# Example output:
-#
-# * For 2.3a0,
-# * PY_MICRO_VERSION = 0
-# * PY_RELEASE_LEVEL = 'alpha' = 0xA
-# * PY_RELEASE_SERIAL = 1
-# *
-# * and 0*1000 + 10*10 + 1 = 101.
-# */
-# #define FIELD3 101
-
-import sys
-
-major, minor, micro, level, serial = sys.version_info
-levelnum = {'alpha': 0xA,
-'beta': 0xB,
-'candidate': 0xC,
-'final': 0xF,
- }[level]
-string = sys.version.split()[0] # like '2.3a0'
-
-print(" * For %s," % string)
-print(" * PY_MICRO_VERSION = %d" % micro)
-print(" * PY_RELEASE_LEVEL = %r = %s" % (level, hex(levelnum)))
-print(" * PY_RELEASE_SERIAL = %d" % serial)
-print(" *")
-
-field3 = micro * 1000 + levelnum * 10 + serial
-
-print(" * and %d*1000 + %d*10 + %d = %d" % (micro, levelnum, serial, field3))
-print(" */")
-print("#define FIELD3", field3)
___
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]
[Python-checkins] [3.13] gh-139573: Update Windows builds to use OpenSSL 3.0.18 (GH-139587)
https://github.com/python/cpython/commit/1a16059cc318a51da2b90dd0ff995f31ddb8f867 commit: 1a16059cc318a51da2b90dd0ff995f31ddb8f867 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-10-04T20:53:16-05:00 summary: [3.13] gh-139573: Update Windows builds to use OpenSSL 3.0.18 (GH-139587) (cherry picked from commit 063cefd7490e62cb2ad2711634a992c090fb) files: A Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst M Misc/externals.spdx.json M PCbuild/get_externals.bat M PCbuild/python.props diff --git a/Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst b/Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst new file mode 100644 index 00..02a3bfb41ce5ed --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst @@ -0,0 +1 @@ +Updated bundled version of OpenSSL to 3.0.18. diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json index 288e2f5dd76552..e9338dec42b24f 100644 --- a/Misc/externals.spdx.json +++ b/Misc/externals.spdx.json @@ -70,21 +70,21 @@ "checksums": [ { "algorithm": "SHA256", - "checksumValue": "6bb739ecddbd2cfb6d255eb5898437a9b5739277dee931338d3275bac5d96ba2" + "checksumValue": "9b07560b6c1afa666bd78b8d3aa5c83fdda02149afdf048596d5b0e0dac1ee55" } ], - "downloadLocation": "https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.16.tar.gz";, + "downloadLocation": "https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.18.tar.gz";, "externalRefs": [ { "referenceCategory": "SECURITY", - "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.16:*:*:*:*:*:*:*", + "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.18:*:*:*:*:*:*:*", "referenceType": "cpe23Type" } ], "licenseConcluded": "NOASSERTION", "name": "openssl", "primaryPackagePurpose": "SOURCE", - "versionInfo": "3.0.16" + "versionInfo": "3.0.18" }, { "SPDXID": "SPDXRef-PACKAGE-sqlite", diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat index 115402e3ac3cfb..55f4d5f3c04c4b 100644 --- a/PCbuild/get_externals.bat +++ b/PCbuild/get_externals.bat @@ -53,7 +53,7 @@ echo.Fetching external libraries... set libraries= set libraries=%libraries% bzip2-1.0.8 if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4 -if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.16 +if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.18 set libraries=%libraries% mpdecimal-4.0.0 set libraries=%libraries% sqlite-3.50.4.0 if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries% tcl-core-8.6.15.0 @@ -77,7 +77,7 @@ echo.Fetching external binaries... set binaries= if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4 -if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.16.2 +if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.18 if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.15.0 if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06 diff --git a/PCbuild/python.props b/PCbuild/python.props index b97cbe2c986d7d..87de23f228f6fd 100644 --- a/PCbuild/python.props +++ b/PCbuild/python.props @@ -76,8 +76,8 @@ $(libffiDir)$(ArchName)\ $(libffiOutDir)include $(ExternalsDir)\mpdecimal-4.0.0\ -$(ExternalsDir)openssl-3.0.16\ -$(ExternalsDir)openssl-bin-3.0.16.2\$(ArchName)\ +$(ExternalsDir)openssl-3.0.18\ +$(ExternalsDir)openssl-bin-3.0.18\$(ArchName)\ $(opensslOutDir)include $(ExternalsDir)\nasm-2.11.06\ $(ExternalsDir)\zlib-1.3.1\ ___ 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]
[Python-checkins] gh-139573: Update OpenSSL in CI (GH-139577)
https://github.com/python/cpython/commit/98e748b3a0d97bd2c785efc63693f971113b3b63
commit: 98e748b3a0d97bd2c785efc63693f971113b3b63
branch: main
author: Zachary Ware
committer: zware
date: 2025-10-04T19:43:17-05:00
summary:
gh-139573: Update OpenSSL in CI (GH-139577)
files:
M .github/workflows/build.yml
M .github/workflows/reusable-ubuntu.yml
M Doc/using/configure.rst
M Modules/_ssl_data_35.h
M Tools/ssl/multissltests.py
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index ebfaf32e193bcb..47d38b7542913c 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -273,7 +273,7 @@ jobs:
# Keep 1.1.1w in our list despite it being upstream EOL and otherwise
# unsupported as it most resembles other 1.1.1-work-a-like ssl APIs
# supported by important vendors such as AWS-LC.
-openssl_ver: [1.1.1w, 3.0.17, 3.2.5, 3.3.4, 3.4.2, 3.5.2]
+openssl_ver: [1.1.1w, 3.0.18, 3.2.6, 3.3.5, 3.4.3, 3.5.4]
# See Tools/ssl/make_ssl_data.py for notes on adding a new version
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
@@ -438,7 +438,7 @@ jobs:
needs: build-context
if: needs.build-context.outputs.run-tests == 'true'
env:
- OPENSSL_VER: 3.0.16
+ OPENSSL_VER: 3.0.18
PYTHONSTRICTEXTENSIONBUILD: 1
steps:
- uses: actions/checkout@v4
@@ -558,7 +558,7 @@ jobs:
matrix:
os: [ubuntu-24.04]
env:
- OPENSSL_VER: 3.0.16
+ OPENSSL_VER: 3.0.18
PYTHONSTRICTEXTENSIONBUILD: 1
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0
steps:
diff --git a/.github/workflows/reusable-ubuntu.yml
b/.github/workflows/reusable-ubuntu.yml
index 76b19fd5d1a72e..7f8b9fdf5d6639 100644
--- a/.github/workflows/reusable-ubuntu.yml
+++ b/.github/workflows/reusable-ubuntu.yml
@@ -30,7 +30,7 @@ jobs:
runs-on: ${{ inputs.os }}
timeout-minutes: 60
env:
- OPENSSL_VER: 3.0.15
+ OPENSSL_VER: 3.0.18
PYTHONSTRICTEXTENSIONBUILD: 1
TERM: linux
steps:
diff --git a/Doc/using/configure.rst b/Doc/using/configure.rst
index b3a9e081edc9f5..b05e0600114757 100644
--- a/Doc/using/configure.rst
+++ b/Doc/using/configure.rst
@@ -22,7 +22,7 @@ Features and minimum versions required to build CPython:
* Support for threads.
-* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.16 is the recommended
+* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.18 is the recommended
minimum version for the :mod:`ssl` and :mod:`hashlib` extension modules.
* SQLite 3.15.2 for the :mod:`sqlite3` extension module.
diff --git a/Modules/_ssl_data_35.h b/Modules/_ssl_data_35.h
index 9e69eaa910f003..e4919b550e3a89 100644
--- a/Modules/_ssl_data_35.h
+++ b/Modules/_ssl_data_35.h
@@ -1,6 +1,6 @@
/* File generated by Tools/ssl/make_ssl_data.py */
-/* Generated on 2025-08-13T16:42:33.155822+00:00 */
-/* Generated from Git commit openssl-3.5.2-0-g0893a6235 */
+/* Generated on 2025-10-04T17:49:19.148321+00:00 */
+/* Generated from Git commit openssl-3.5.4-0-gc1eeb9406 */
/* generated from args.lib2errnum */
static struct py_ssl_library_code library_codes[] = {
@@ -5338,6 +5338,11 @@ static struct py_ssl_error_code error_codes[] = {
#else
{"FIPS_MODULE_ENTERING_ERROR_STATE", 57, 224},
#endif
+ #ifdef PROV_R_FIPS_MODULE_IMPORT_PCT_ERROR
+{"FIPS_MODULE_IMPORT_PCT_ERROR", ERR_LIB_PROV,
PROV_R_FIPS_MODULE_IMPORT_PCT_ERROR},
+ #else
+{"FIPS_MODULE_IMPORT_PCT_ERROR", 57, 253},
+ #endif
#ifdef PROV_R_FIPS_MODULE_IN_ERROR_STATE
{"FIPS_MODULE_IN_ERROR_STATE", ERR_LIB_PROV,
PROV_R_FIPS_MODULE_IN_ERROR_STATE},
#else
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index c0559446982eab..56976de49989ec 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -48,11 +48,11 @@
]
OPENSSL_RECENT_VERSIONS = [
-"3.0.16",
-"3.2.5",
-"3.3.4",
-"3.4.2",
-"3.5.2",
+"3.0.18",
+"3.2.6",
+"3.3.5",
+"3.4.3",
+"3.5.4",
# See make_ssl_data.py for notes on adding a new version.
]
___
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]
[Python-checkins] gh-90548: Skip ctypes test_null_dlsym when linked to musl (GH-138592)
https://github.com/python/cpython/commit/7d58461fdb02915aa1c93cba8e8e10201bd47696
commit: 7d58461fdb02915aa1c93cba8e8e10201bd47696
branch: main
author: Zachary Ware
committer: zware
date: 2025-09-06T14:01:18-05:00
summary:
gh-90548: Skip ctypes test_null_dlsym when linked to musl (GH-138592)
The test relies on glibc-specific behavior.
files:
M Lib/test/test_ctypes/test_dlerror.py
diff --git a/Lib/test/test_ctypes/test_dlerror.py
b/Lib/test/test_ctypes/test_dlerror.py
index 8af34e62b94faa..5658234f9ec66b 100644
--- a/Lib/test/test_ctypes/test_dlerror.py
+++ b/Lib/test/test_ctypes/test_dlerror.py
@@ -32,6 +32,7 @@
@unittest.skipUnless(sys.platform.startswith('linux'),
'test requires GNU IFUNC support')
[email protected](test.support.linked_to_musl(), "Requires glibc")
class TestNullDlsym(unittest.TestCase):
"""GH-126554: Ensure that we catch NULL dlsym return values
___
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]
[Python-checkins] gh-90548: Allow Alpine/MUSL to pass test_c_locale_coercion. (GH-134454)
https://github.com/python/cpython/commit/bcdac03670eff192e670aef696cce47e69061be8
commit: bcdac03670eff192e670aef696cce47e69061be8
branch: main
author: R. David Murray
committer: zware
date: 2025-09-06T14:01:11-05:00
summary:
gh-90548: Allow Alpine/MUSL to pass test_c_locale_coercion. (GH-134454)
Like cygwin, MUSL defaults to utf-8 if no variables are set. I have no
idea if the existing tests pass on cygwin, but I made the modifications
such that I shouldn't break it if is. The additional checks needed for
MUSL are guarded by DEFAULT_LOCALE_IS_C being False. Based on this
flag, we expect utf-8 for the encodings and no coercion message, as
long as LC_ALL is not set to C. (That looks like a bit of an issue with
the test structure, but I'm not going to attempt to "fix" that.)
DEFAULT_ENCODING is intentionally not given a default since it is only
used when DEFAULT_LOCALE_IS_C is False, and if you use the flag you'll
need to set it.
After reading through issue 30672, looking at the source, and running a
test on Android, I *think* the current situation is that coercion will
be done if the local is set to POSIX regardless of platform. However,
if the platform doesn't make POSIX equivalent to C, the encodings when
coercion is disabled will not be the same as for C (it is utf-8 on
android, for example). This means the tests would fail if POSIX were
added unconditionally to the EXPECTED_C_LOCALE_EQUIVALENTS as envisioned
in the issue. This *could* be fixed with another flag, but I'm not sure
it is worth the effort. I'm not even sure Python is behaving optimally
in this case (assuming my analysis is correct). So I just altered the
comment and add POSIX if and only if the platform is linux.
files:
M Lib/test/test_c_locale_coercion.py
diff --git a/Lib/test/test_c_locale_coercion.py
b/Lib/test/test_c_locale_coercion.py
index e4b0b8c451fd45..10f8ba2255228b 100644
--- a/Lib/test/test_c_locale_coercion.py
+++ b/Lib/test/test_c_locale_coercion.py
@@ -12,7 +12,9 @@
from test.support.script_helper import run_python_until_end
-# Set the list of ways we expect to be able to ask for the "C" locale
+# Set the list of ways we expect to be able to ask for the "C" locale.
+# 'invalid.ascii' is an invalid LOCALE name and so should get turned in to the
+# default locale, which is traditionally C.
EXPECTED_C_LOCALE_EQUIVALENTS = ["C", "invalid.ascii"]
# Set our expectation for the default encoding used in the C locale
@@ -21,6 +23,7 @@
EXPECTED_C_LOCALE_FS_ENCODING = "ascii"
# Set our expectation for the default locale used when none is specified
+DEFAULT_LOCALE_IS_C = True
EXPECT_COERCION_IN_DEFAULT_LOCALE = True
TARGET_LOCALES = ["C.UTF-8", "C.utf8", "UTF-8"]
@@ -30,12 +33,12 @@
# Android defaults to using UTF-8 for all system interfaces
EXPECTED_C_LOCALE_STREAM_ENCODING = "utf-8"
EXPECTED_C_LOCALE_FS_ENCODING = "utf-8"
-elif sys.platform.startswith("linux"):
-# Linux distros typically alias the POSIX locale directly to the C
-# locale.
-# TODO: Once https://bugs.python.org/issue30672 is addressed, we'll be
-# able to check this case unconditionally
-EXPECTED_C_LOCALE_EQUIVALENTS.append("POSIX")
+elif support.linked_to_musl():
+# MUSL defaults to utf-8 unless the C locale is set explicitly.
+EXPECTED_C_LOCALE_EQUIVALENTS = ["C"]
+DEFAULT_LOCALE_IS_C = False
+DEFAULT_ENCODING = 'utf-8'
+EXPECT_COERCION_IN_DEFAULT_LOCALE = False
elif sys.platform.startswith("aix"):
# AIX uses iso8859-1 in the C locale, other *nix platforms use ASCII
EXPECTED_C_LOCALE_STREAM_ENCODING = "iso8859-1"
@@ -52,6 +55,11 @@
# VxWorks defaults to using UTF-8 for all system interfaces
EXPECTED_C_LOCALE_STREAM_ENCODING = "utf-8"
EXPECTED_C_LOCALE_FS_ENCODING = "utf-8"
+if sys.platform.startswith("linux"):
+# Linux recognizes POSIX as a synonym for C. Python will always coerce
+# if the locale is set to POSIX, but not all platforms will use the
+# C locale encodings if POSIX is set, so we'll only test it on linux.
+EXPECTED_C_LOCALE_EQUIVALENTS.append("POSIX")
# Note that the above expectations are still wrong in some cases, such as:
# * Windows when PYTHONLEGACYWINDOWSFSENCODING is set
@@ -362,9 +370,14 @@ def _check_c_locale_coercion(self,
base_var_dict["PYTHONCOERCECLOCALE"] = coerce_c_locale
# Check behaviour for the default locale
+_fs_encoding = fs_encoding
+_stream_encoding = stream_encoding
+if not DEFAULT_LOCALE_IS_C and 'LC_ALL' not in extra_vars:
+_fs_encoding = _stream_encoding = DEFAULT_ENCODING
with self.subTest(default_locale=True,
[Python-checkins] gh-90548: Skip NODEV portion of test_makedev when linked to musl (GH-138593)
https://github.com/python/cpython/commit/bbe00d53e9f598b012470cf077357cbbcbee737f commit: bbe00d53e9f598b012470cf077357cbbcbee737f branch: main author: Zachary Ware committer: zware date: 2025-09-06T14:01:26-05:00 summary: gh-90548: Skip NODEV portion of test_makedev when linked to musl (GH-138593) files: M Lib/test/test_posix.py diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index 628920e34b586f..2af11888b17c1d 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -757,7 +757,7 @@ def test_makedev(self): self.assertRaises((ValueError, OverflowError), posix.makedev, x, minor) self.assertRaises((ValueError, OverflowError), posix.makedev, major, x) -if sys.platform == 'linux': +if sys.platform == 'linux' and not support.linked_to_musl(): NODEV = -1 self.assertEqual(posix.major(NODEV), NODEV) self.assertEqual(posix.minor(NODEV), NODEV) ___ 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]
[Python-checkins] Fix Windows path in `venv` docs (GH-138476)
https://github.com/python/cpython/commit/f8d9cb140726a0167c9f733c706b834a7d273476 commit: f8d9cb140726a0167c9f733c706b834a7d273476 branch: main author: Zachary Ware committer: zware date: 2025-09-03T20:15:47Z summary: Fix Windows path in `venv` docs (GH-138476) files: M Doc/library/venv.rst diff --git a/Doc/library/venv.rst b/Doc/library/venv.rst index de427fbafe71dc..b0eb8ee18fa25f 100644 --- a/Doc/library/venv.rst +++ b/Doc/library/venv.rst @@ -78,7 +78,7 @@ It also creates a :file:`bin` (or :file:`Scripts` on Windows) subdirectory containing a copy or symlink of the Python executable (as appropriate for the platform or arguments used at environment creation time). It also creates a :file:`lib/pythonX.Y/site-packages` subdirectory -(on Windows, this is :file:`Lib\site-packages`). +(on Windows, this is :file:`Lib\\site-packages`). If an existing directory is specified, it will be re-used. .. versionchanged:: 3.5 ___ 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]
[Python-checkins] gh-72249: Correct wording of GH-101910 blurb (GH-138468)
https://github.com/python/cpython/commit/007bc5fc623c632b13bc0c818bbb31db3dce83a9 commit: 007bc5fc623c632b13bc0c818bbb31db3dce83a9 branch: main author: Zachary Ware committer: zware date: 2025-09-03T13:19:54-05:00 summary: gh-72249: Correct wording of GH-101910 blurb (GH-138468) This incidentally corrects a reST issue reported by Daniel Nylander from the Swedish translation. files: M Misc/NEWS.d/3.13.0a5.rst diff --git a/Misc/NEWS.d/3.13.0a5.rst b/Misc/NEWS.d/3.13.0a5.rst index d56b1542b01823..19ba16bc8c83d5 100644 --- a/Misc/NEWS.d/3.13.0a5.rst +++ b/Misc/NEWS.d/3.13.0a5.rst @@ -742,8 +742,8 @@ Add ``windows_31j`` to aliases for ``cp932`` codec .. nonce: fv35wU .. section: Library -:func:`functools.partial`s of :func:`repr` has been improved to include the -:term:`module` name. Patched by Furkan Onder and Anilyka Barry. +Always include the :term:`module` name in the :func:`repr` of +:func:`functools.partial` objects. Patch by Furkan Onder and Anilyka Barry. .. ___ 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]
[Python-checkins] [3.13] gh-72249: Correct wording of GH-101910 blurb (GH-138471)
https://github.com/python/cpython/commit/e8280e3f915daed989c2b89304b236f84d7b2f27 commit: e8280e3f915daed989c2b89304b236f84d7b2f27 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-09-03T18:27:23Z summary: [3.13] gh-72249: Correct wording of GH-101910 blurb (GH-138471) This incidentally corrects a reST issue reported by Daniel Nylander from the Swedish translation. (cherry picked from commit 007bc5fc623c632b13bc0c818bbb31db3dce83a9) files: M Misc/NEWS.d/3.13.0a5.rst diff --git a/Misc/NEWS.d/3.13.0a5.rst b/Misc/NEWS.d/3.13.0a5.rst index d56b1542b01823..19ba16bc8c83d5 100644 --- a/Misc/NEWS.d/3.13.0a5.rst +++ b/Misc/NEWS.d/3.13.0a5.rst @@ -742,8 +742,8 @@ Add ``windows_31j`` to aliases for ``cp932`` codec .. nonce: fv35wU .. section: Library -:func:`functools.partial`s of :func:`repr` has been improved to include the -:term:`module` name. Patched by Furkan Onder and Anilyka Barry. +Always include the :term:`module` name in the :func:`repr` of +:func:`functools.partial` objects. Patch by Furkan Onder and Anilyka Barry. .. ___ 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]
[Python-checkins] [3.13] Fix Windows path in `venv` docs (GH-138478)
https://github.com/python/cpython/commit/a62b59a96e1e4efe962dfab3278bb7c8f85c7e9f commit: a62b59a96e1e4efe962dfab3278bb7c8f85c7e9f branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-09-03T20:22:05Z summary: [3.13] Fix Windows path in `venv` docs (GH-138478) (cherry picked from commit f8d9cb140726a0167c9f733c706b834a7d273476) files: M Doc/library/venv.rst diff --git a/Doc/library/venv.rst b/Doc/library/venv.rst index 224f497dde7c65..bb1f7311551659 100644 --- a/Doc/library/venv.rst +++ b/Doc/library/venv.rst @@ -75,7 +75,7 @@ It also creates a :file:`bin` (or :file:`Scripts` on Windows) subdirectory containing a copy or symlink of the Python executable (as appropriate for the platform or arguments used at environment creation time). It also creates a :file:`lib/pythonX.Y/site-packages` subdirectory -(on Windows, this is :file:`Lib\site-packages`). +(on Windows, this is :file:`Lib\\site-packages`). If an existing directory is specified, it will be re-used. .. versionchanged:: 3.5 ___ 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]
[Python-checkins] [3.13] gh-90548: Skip NODEV portion of test_makedev when linked to musl (GH-138713)
https://github.com/python/cpython/commit/7d724708bfb047706a33a94428e07a42199f95f4 commit: 7d724708bfb047706a33a94428e07a42199f95f4 branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-09-09T20:01:53Z summary: [3.13] gh-90548: Skip NODEV portion of test_makedev when linked to musl (GH-138713) (cherry picked from commit bbe00d53e9f598b012470cf077357cbbcbee737f) files: M Lib/test/test_posix.py diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py index c9cbe1541e733e..bfc1e2b251f6db 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -757,7 +757,7 @@ def test_makedev(self): self.assertRaises((ValueError, OverflowError), posix.makedev, x, minor) self.assertRaises((ValueError, OverflowError), posix.makedev, major, x) -if sys.platform == 'linux': +if sys.platform == 'linux' and not support.linked_to_musl(): NODEV = -1 self.assertEqual(posix.major(NODEV), NODEV) self.assertEqual(posix.minor(NODEV), NODEV) ___ 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]
[Python-checkins] gh-71648: Remove unused image `Doc/faq/python-video-icon.png` (GH-138841)
https://github.com/python/cpython/commit/35e6138d1f6c0c597095afbc03b1aa7197db8142 commit: 35e6138d1f6c0c597095afbc03b1aa7197db8142 branch: main author: Stan Ulbrych <[email protected]> committer: zware date: 2025-09-12T11:16:51-05:00 summary: gh-71648: Remove unused image `Doc/faq/python-video-icon.png` (GH-138841) files: D Doc/faq/python-video-icon.png diff --git a/Doc/faq/python-video-icon.png b/Doc/faq/python-video-icon.png deleted file mode 100644 index 265da50c7b38fc..00 Binary files a/Doc/faq/python-video-icon.png and /dev/null differ ___ 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]
[Python-checkins] [3.14] gh-138843: Removing "Unpacking" section from Download page (GH-139921)
https://github.com/python/cpython/commit/7ea79f6342db5851a9e734130ffec003e7045dea commit: 7ea79f6342db5851a9e734130ffec003e7045dea branch: 3.14 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-10-10T14:31:38-05:00 summary: [3.14] gh-138843: Removing "Unpacking" section from Download page (GH-139921) (cherry picked from commit aa840f500ca901deea29669df68992193a273a62) Co-authored-by: Stan Ulbrych <[email protected]> files: M Doc/tools/templates/download.html diff --git a/Doc/tools/templates/download.html b/Doc/tools/templates/download.html index 523b505f59673e..f914ad862116d7 100644 --- a/Doc/tools/templates/download.html +++ b/Doc/tools/templates/download.html @@ -75,16 +75,6 @@ {% trans %}Download Python {{ dl_version }} documentation{% endtrans %} See the https://docs.python.org/{{ version }}/archives/">directory listing for file sizes.{% endtrans %} -{% trans %}Unpacking{% endtrans %} - -{% trans %}Unix users should download the .tar.bz2 archives; these are bzipped tar -archives and can be handled in the usual way using tar and the bzip2 -program. The https://infozip.sourceforge.net";>Info-ZIP unzip program can be -used to handle the ZIP archives if desired. The .tar.bz2 archives provide the -best compression and fastest download times.{% endtrans %} - -{% trans %}Windows users can use the ZIP archives since those are customary on that -platform. These are created on Unix using the Info-ZIP zip program.{% endtrans %} {% trans %}Problems{% endtrans %} {% set bugs = pathto('bugs') %} ___ 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]
[Python-checkins] [3.13] gh-138843: Removing "Unpacking" section from Download page (GH-139920)
https://github.com/python/cpython/commit/38bedb342d35562be6a2e71fdb56e8d7b3a79efd commit: 38bedb342d35562be6a2e71fdb56e8d7b3a79efd branch: 3.13 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-10-10T14:31:50-05:00 summary: [3.13] gh-138843: Removing "Unpacking" section from Download page (GH-139920) (cherry picked from commit aa840f500ca901deea29669df68992193a273a62) Co-authored-by: Stan Ulbrych <[email protected]> files: M Doc/tools/templates/download.html diff --git a/Doc/tools/templates/download.html b/Doc/tools/templates/download.html index 08d97c76e3c0a7..5209c9b16ce185 100644 --- a/Doc/tools/templates/download.html +++ b/Doc/tools/templates/download.html @@ -78,16 +78,6 @@ {% trans %}Download Python {{ dl_version }} documentation{% endtrans %} See the https://docs.python.org/{{ version }}/archives/">directory listing for file sizes.{% endtrans %} -{% trans %}Unpacking{% endtrans %} - -{% trans %}Unix users should download the .tar.bz2 archives; these are bzipped tar -archives and can be handled in the usual way using tar and the bzip2 -program. The https://infozip.sourceforge.net";>Info-ZIP unzip program can be -used to handle the ZIP archives if desired. The .tar.bz2 archives provide the -best compression and fastest download times.{% endtrans %} - -{% trans %}Windows users can use the ZIP archives since those are customary on that -platform. These are created on Unix using the Info-ZIP zip program.{% endtrans %} {% trans %}Problems{% endtrans %} {% set bugs = pathto('bugs') %} ___ 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]
[Python-checkins] gh-139573: Update Windows builds to use OpenSSL 3.0.18 (GH-139574)
https://github.com/python/cpython/commit/063cefd7490e62cb2ad2711634a992c090fb
commit: 063cefd7490e62cb2ad2711634a992c090fb
branch: main
author: Zachary Ware
committer: zware
date: 2025-10-04T19:56:59-05:00
summary:
gh-139573: Update Windows builds to use OpenSSL 3.0.18 (GH-139574)
files:
A Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst
M Misc/externals.spdx.json
M PCbuild/get_externals.bat
M PCbuild/python.props
diff --git
a/Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst
b/Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst
new file mode 100644
index 00..02a3bfb41ce5ed
--- /dev/null
+++ b/Misc/NEWS.d/next/Windows/2025-10-04-12-18-45.gh-issue-139573.EO9kVB.rst
@@ -0,0 +1 @@
+Updated bundled version of OpenSSL to 3.0.18.
diff --git a/Misc/externals.spdx.json b/Misc/externals.spdx.json
index a87af7f9173780..59aceedb94d4c7 100644
--- a/Misc/externals.spdx.json
+++ b/Misc/externals.spdx.json
@@ -70,21 +70,21 @@
"checksums": [
{
"algorithm": "SHA256",
- "checksumValue":
"6bb739ecddbd2cfb6d255eb5898437a9b5739277dee931338d3275bac5d96ba2"
+ "checksumValue":
"9b07560b6c1afa666bd78b8d3aa5c83fdda02149afdf048596d5b0e0dac1ee55"
}
],
- "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.16.tar.gz";,
+ "downloadLocation":
"https://github.com/python/cpython-source-deps/archive/refs/tags/openssl-3.0.18.tar.gz";,
"externalRefs": [
{
"referenceCategory": "SECURITY",
- "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.16:*:*:*:*:*:*:*",
+ "referenceLocator": "cpe:2.3:a:openssl:openssl:3.0.18:*:*:*:*:*:*:*",
"referenceType": "cpe23Type"
}
],
"licenseConcluded": "NOASSERTION",
"name": "openssl",
"primaryPackagePurpose": "SOURCE",
- "versionInfo": "3.0.16"
+ "versionInfo": "3.0.18"
},
{
"SPDXID": "SPDXRef-PACKAGE-sqlite",
diff --git a/PCbuild/get_externals.bat b/PCbuild/get_externals.bat
index eff8d1ccd7f146..50a227b563a7c0 100644
--- a/PCbuild/get_externals.bat
+++ b/PCbuild/get_externals.bat
@@ -54,7 +54,7 @@ echo.Fetching external libraries...
set libraries=
set libraries=%libraries% bzip2-1.0.8
if NOT "%IncludeLibffiSrc%"=="false" set libraries=%libraries% libffi-3.4.4
-if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.16
+if NOT "%IncludeSSLSrc%"=="false" set libraries=%libraries% openssl-3.0.18
set libraries=%libraries% mpdecimal-4.0.0
set libraries=%libraries% sqlite-3.50.4.0
if NOT "%IncludeTkinterSrc%"=="false" set libraries=%libraries%
tcl-core-8.6.15.0
@@ -79,7 +79,7 @@ echo.Fetching external binaries...
set binaries=
if NOT "%IncludeLibffi%"=="false" set binaries=%binaries% libffi-3.4.4
-if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.16.2
+if NOT "%IncludeSSL%"=="false" set binaries=%binaries% openssl-bin-3.0.18
if NOT "%IncludeTkinter%"=="false" set binaries=%binaries% tcltk-8.6.15.0
if NOT "%IncludeSSLSrc%"=="false" set binaries=%binaries% nasm-2.11.06
if NOT "%IncludeLLVM%"=="false"set binaries=%binaries% llvm-19.1.7.0
diff --git a/PCbuild/python.props b/PCbuild/python.props
index 06af15a269ccd9..cc1572526559ce 100644
--- a/PCbuild/python.props
+++ b/PCbuild/python.props
@@ -82,8 +82,8 @@
$(libffiDir)$(ArchName)\
$(libffiOutDir)include
$(ExternalsDir)\mpdecimal-4.0.0\
-$(ExternalsDir)openssl-3.0.16\
-$(ExternalsDir)openssl-bin-3.0.16.2\$(ArchName)\
+$(ExternalsDir)openssl-3.0.18\
+$(ExternalsDir)openssl-bin-3.0.18\$(ArchName)\
$(opensslOutDir)include
$(ExternalsDir)\nasm-2.11.06\
$(ExternalsDir)\zlib-1.3.1\
___
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]
[Python-checkins] [3.13] gh-139573: Update OpenSSL in CI (GH-139585)
https://github.com/python/cpython/commit/dbcaa25839ae040d2d251c746d1e4e12c51f234c
commit: dbcaa25839ae040d2d251c746d1e4e12c51f234c
branch: 3.13
author: Zachary Ware
committer: zware
date: 2025-10-04T20:52:08-05:00
summary:
[3.13] gh-139573: Update OpenSSL in CI (GH-139585)
(cherry picked from commit 98e748b3a0d97bd2c785efc63693f971113b3b63)
files:
M .github/workflows/build.yml
M .github/workflows/reusable-ubuntu.yml
M Doc/using/configure.rst
M Tools/ssl/multissltests.py
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 96bc888b4955ac..083015f8e057b1 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -310,7 +310,7 @@ jobs:
# Keep 1.1.1w in our list despite it being upstream EOL and otherwise
# unsupported as it most resembles other 1.1.1-work-a-like ssl APIs
# supported by important vendors such as AWS-LC.
-openssl_ver: [1.1.1w, 3.0.15, 3.1.7, 3.2.3, 3.3.2]
+openssl_ver: [1.1.1w, 3.0.18, 3.1.7, 3.2.6, 3.3.5]
env:
OPENSSL_VER: ${{ matrix.openssl_ver }}
MULTISSL_DIR: ${{ github.workspace }}/multissl
@@ -399,7 +399,7 @@ jobs:
needs: build-context
if: needs.build-context.outputs.run-tests == 'true'
env:
- OPENSSL_VER: 3.0.15
+ OPENSSL_VER: 3.0.18
PYTHONSTRICTEXTENSIONBUILD: 1
steps:
- uses: actions/checkout@v4
@@ -518,7 +518,7 @@ jobs:
matrix:
os: [ubuntu-24.04]
env:
- OPENSSL_VER: 3.0.15
+ OPENSSL_VER: 3.0.18
PYTHONSTRICTEXTENSIONBUILD: 1
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0
steps:
diff --git a/.github/workflows/reusable-ubuntu.yml
b/.github/workflows/reusable-ubuntu.yml
index b2625339d19ab6..8d30809738bd7e 100644
--- a/.github/workflows/reusable-ubuntu.yml
+++ b/.github/workflows/reusable-ubuntu.yml
@@ -25,7 +25,7 @@ jobs:
matrix:
os: [ubuntu-24.04, ubuntu-24.04-arm]
env:
- OPENSSL_VER: 3.0.15
+ OPENSSL_VER: 3.0.18
PYTHONSTRICTEXTENSIONBUILD: 1
TERM: linux
steps:
diff --git a/Doc/using/configure.rst b/Doc/using/configure.rst
index 662b5afa88f822..03039edc71a71e 100644
--- a/Doc/using/configure.rst
+++ b/Doc/using/configure.rst
@@ -22,7 +22,7 @@ Features and minimum versions required to build CPython:
* Support for threads.
-* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.9 is the recommended
+* OpenSSL 1.1.1 is the minimum version and OpenSSL 3.0.18 is the recommended
minimum version for the :mod:`ssl` and :mod:`hashlib` extension modules.
* SQLite 3.15.2 for the :mod:`sqlite3` extension module.
diff --git a/Tools/ssl/multissltests.py b/Tools/ssl/multissltests.py
index ea88a43157bdd3..ef554233e70900 100755
--- a/Tools/ssl/multissltests.py
+++ b/Tools/ssl/multissltests.py
@@ -47,10 +47,10 @@
]
OPENSSL_RECENT_VERSIONS = [
-"3.0.15",
+"3.0.18",
"3.1.7",
-"3.2.3",
-"3.3.2",
+"3.2.6",
+"3.3.5",
]
LIBRESSL_OLD_VERSIONS = [
___
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]
[Python-checkins] gh-138843: Removing "Unpacking" section from Download page (GH-139918)
https://github.com/python/cpython/commit/aa840f500ca901deea29669df68992193a273a62 commit: aa840f500ca901deea29669df68992193a273a62 branch: main author: Stan Ulbrych <[email protected]> committer: zware date: 2025-10-10T14:22:34-05:00 summary: gh-138843: Removing "Unpacking" section from Download page (GH-139918) files: M Doc/tools/templates/download.html diff --git a/Doc/tools/templates/download.html b/Doc/tools/templates/download.html index 523b505f59673e..f914ad862116d7 100644 --- a/Doc/tools/templates/download.html +++ b/Doc/tools/templates/download.html @@ -75,16 +75,6 @@ {% trans %}Download Python {{ dl_version }} documentation{% endtrans %} See the https://docs.python.org/{{ version }}/archives/">directory listing for file sizes.{% endtrans %} -{% trans %}Unpacking{% endtrans %} - -{% trans %}Unix users should download the .tar.bz2 archives; these are bzipped tar -archives and can be handled in the usual way using tar and the bzip2 -program. The https://infozip.sourceforge.net";>Info-ZIP unzip program can be -used to handle the ZIP archives if desired. The .tar.bz2 archives provide the -best compression and fastest download times.{% endtrans %} - -{% trans %}Windows users can use the ZIP archives since those are customary on that -platform. These are created on Unix using the Info-ZIP zip program.{% endtrans %} {% trans %}Problems{% endtrans %} {% set bugs = pathto('bugs') %} ___ 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]
[Python-checkins] [3.14] gh-124694: Add versionadded note to InterpreterPoolExecutor (GH-140605)
https://github.com/python/cpython/commit/596111546d69cb6272fe671577c198fc75d1c46b commit: 596111546d69cb6272fe671577c198fc75d1c46b branch: 3.14 author: Miss Islington (bot) <[email protected]> committer: zware date: 2025-10-25T23:37:24Z summary: [3.14] gh-124694: Add versionadded note to InterpreterPoolExecutor (GH-140605) (cherry picked from commit 421a475c87771d46752c27def264e5c622a58427) Co-authored-by: Zachary Ware files: M Doc/library/concurrent.futures.rst diff --git a/Doc/library/concurrent.futures.rst b/Doc/library/concurrent.futures.rst index 6f8043e6cf7735..c2e2f7f820f4ef 100644 --- a/Doc/library/concurrent.futures.rst +++ b/Doc/library/concurrent.futures.rst @@ -239,6 +239,8 @@ ThreadPoolExecutor Example InterpreterPoolExecutor --- +.. versionadded:: 3.14 + The :class:`InterpreterPoolExecutor` class uses a pool of interpreters to execute calls asynchronously. It is a :class:`ThreadPoolExecutor` subclass, which means each worker is running in its own thread. ___ 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]
