Skip to content

Commit 1a7a28d

Browse files
authored
Merge branch 'main' into syntax-warning
2 parents beeebed + 2afba5c commit 1a7a28d

File tree

432 files changed

+16381
-10806
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

432 files changed

+16381
-10806
lines changed

.github/CODEOWNERS

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,9 @@ Doc/c-api/stable.rst @encukou
211211

212212
**/*ensurepip* @pfmoore @pradyunsg
213213

214-
**/*idlelib* @terryjreedy
215214
/Doc/library/idle.rst @terryjreedy
215+
**/*idlelib* @terryjreedy
216+
**/*turtledemo* @terryjreedy
216217

217218
**/*annotationlib* @JelleZijlstra
218219
**/*typing* @JelleZijlstra @AlexWaygood
@@ -275,3 +276,6 @@ Lib/test/test_interpreters/ @ericsnowcurrently
275276
# Config Parser
276277
Lib/configparser.py @jaraco
277278
Lib/test/test_configparser.py @jaraco
279+
280+
# Doc sections
281+
Doc/reference/ @willingc

.github/workflows/build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ jobs:
202202
strategy:
203203
fail-fast: false
204204
matrix:
205-
openssl_ver: [1.1.1w, 3.0.13, 3.1.5, 3.2.1]
205+
openssl_ver: [3.0.15, 3.1.7, 3.2.3, 3.3.2]
206206
env:
207207
OPENSSL_VER: ${{ matrix.openssl_ver }}
208208
MULTISSL_DIR: ${{ github.workspace }}/multissl
@@ -266,7 +266,7 @@ jobs:
266266
needs: check_source
267267
if: needs.check_source.outputs.run_tests == 'true' && needs.check_source.outputs.run_hypothesis == 'true'
268268
env:
269-
OPENSSL_VER: 3.0.13
269+
OPENSSL_VER: 3.0.15
270270
PYTHONSTRICTEXTENSIONBUILD: 1
271271
steps:
272272
- uses: actions/checkout@v4
@@ -380,7 +380,7 @@ jobs:
380380
needs: check_source
381381
if: needs.check_source.outputs.run_tests == 'true'
382382
env:
383-
OPENSSL_VER: 3.0.13
383+
OPENSSL_VER: 3.0.15
384384
PYTHONSTRICTEXTENSIONBUILD: 1
385385
ASAN_OPTIONS: detect_leaks=0:allocator_may_return_null=1:handle_segv=0
386386
steps:

.github/workflows/reusable-docs.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ concurrency:
1111
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
1212
cancel-in-progress: true
1313

14+
env:
15+
FORCE_COLOR: 1
16+
1417
jobs:
1518
build_doc:
1619
name: 'Docs'

.github/workflows/reusable-ubuntu.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
runs-on: ubuntu-22.04
1818
env:
1919
FORCE_COLOR: 1
20-
OPENSSL_VER: 3.0.13
20+
OPENSSL_VER: 3.0.15
2121
PYTHONSTRICTEXTENSIONBUILD: 1
2222
TERM: linux
2323
steps:

Android/android.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ def make_build_python(context):
138138

139139
def unpack_deps(host):
140140
deps_url = "https://github.com/beeware/cpython-android-source-deps/releases/download"
141-
for name_ver in ["bzip2-1.0.8-1", "libffi-3.4.4-2", "openssl-3.0.13-1",
141+
for name_ver in ["bzip2-1.0.8-1", "libffi-3.4.4-2", "openssl-3.0.15-0",
142142
"sqlite-3.45.1-0", "xz-5.4.6-0"]:
143143
filename = f"{name_ver}-{host}.tar.gz"
144144
download(f"{deps_url}/{name_ver}/{filename}")

Android/testbed/app/src/main/c/main_activity.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ JNIEXPORT void JNICALL Java_org_python_testbed_PythonTestRunner_redirectStdioToL
100100
}
101101

102102

103-
// --- Python intialization ----------------------------------------------------
103+
// --- Python initialization ---------------------------------------------------
104104

105105
static PyStatus set_config_string(
106106
JNIEnv *env, PyConfig *config, wchar_t **config_str, jstring value

Doc/c-api/bytes.rst

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,24 @@ called with a non-bytes parameter.
189189
to *newpart* (i.e. decrements its reference count).
190190
191191
192+
.. c:function:: PyObject* PyBytes_Join(PyObject *sep, PyObject *iterable)
193+
194+
Similar to ``sep.join(iterable)`` in Python.
195+
196+
*sep* must be Python :class:`bytes` object.
197+
(Note that :c:func:`PyUnicode_Join` accepts ``NULL`` separator and treats
198+
it as a space, whereas :c:func:`PyBytes_Join` doesn't accept ``NULL``
199+
separator.)
200+
201+
*iterable* must be an iterable object yielding objects that implement the
202+
:ref:`buffer protocol <bufferobjects>`.
203+
204+
On success, return a new :class:`bytes` object.
205+
On error, set an exception and return ``NULL``.
206+
207+
.. versionadded:: 3.14
208+
209+
192210
.. c:function:: int _PyBytes_Resize(PyObject **bytes, Py_ssize_t newsize)
193211
194212
Resize a bytes object. *newsize* will be the new length of the bytes object.

Doc/c-api/datetime.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -318,10 +318,10 @@ Macros for the convenience of modules implementing the DB API:
318318
.. c:function:: PyObject* PyDateTime_FromTimestamp(PyObject *args)
319319
320320
Create and return a new :class:`datetime.datetime` object given an argument
321-
tuple suitable for passing to :meth:`datetime.datetime.fromtimestamp()`.
321+
tuple suitable for passing to :meth:`datetime.datetime.fromtimestamp`.
322322
323323
324324
.. c:function:: PyObject* PyDate_FromTimestamp(PyObject *args)
325325
326326
Create and return a new :class:`datetime.date` object given an argument
327-
tuple suitable for passing to :meth:`datetime.date.fromtimestamp()`.
327+
tuple suitable for passing to :meth:`datetime.date.fromtimestamp`.

Doc/c-api/exceptions.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ propagated, additional calls into the Python/C API may not behave as intended
3434
and may fail in mysterious ways.
3535

3636
.. note::
37-
The error indicator is **not** the result of :func:`sys.exc_info()`.
37+
The error indicator is **not** the result of :func:`sys.exc_info`.
3838
The former corresponds to an exception that is not yet caught (and is
3939
therefore still propagating), while the latter returns an exception after
4040
it is caught (and has therefore stopped propagating).

Doc/c-api/hash.rst

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,25 @@ See also the :c:member:`PyTypeObject.tp_hash` member and :ref:`numeric-hash`.
8989
9090
.. versionadded:: 3.13
9191
92+
93+
.. c:function:: Py_hash_t Py_HashBuffer(const void *ptr, Py_ssize_t len)
94+
95+
Compute and return the hash value of a buffer of *len* bytes
96+
starting at address *ptr*. The hash is guaranteed to match that of
97+
:class:`bytes`, :class:`memoryview`, and other built-in objects
98+
that implement the :ref:`buffer protocol <bufferobjects>`.
99+
100+
Use this function to implement hashing for immutable objects whose
101+
:c:member:`~PyTypeObject.tp_richcompare` function compares to another
102+
object's buffer.
103+
104+
*len* must be greater than or equal to ``0``.
105+
106+
This function always succeeds.
107+
108+
.. versionadded:: 3.14
109+
110+
92111
.. c:function:: Py_hash_t PyObject_GenericHash(PyObject *obj)
93112
94113
Generic hashing function that is meant to be put into a type

0 commit comments

Comments
 (0)