Commit Graph

27608 Commits

Author SHA1 Message Date
Jakub Kulík 2b93f52242
gh-113117: Support posix_spawn in subprocess.Popen with close_fds=True (#113118)
Add support for `os.POSIX_SPAWN_CLOSEFROM` and
`posix_spawn_file_actions_addclosefrom_np` and have the `subprocess` module use
them when available.  This means `posix_spawn` can now be used in the default
`close_fds=True` situation on many platforms.

Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org>
2023-12-17 21:34:57 +00:00
Hugo van Kemenade 32d87a8899
Docs: Add label to grammar spec for linking from PEPs (#113235) 2023-12-17 12:23:14 -07:00
Taylor Packard 21d52995ea
gh-112890: `unittest` Test Discovery page updated "`unittest` dropped the namspace packages support" (GH-113195) 2023-12-17 13:14:21 +02:00
Jakub Kulík 48c907a15c
gh-113119 fix environment handling in subprocess.Popen when posix_spawn is used (#113120)
* Allow posix_spawn to inherit environment form parent environ variable.

With this change, posix_spawn call can behave similarly to execv with regards to environments when used in subprocess functions.
2023-12-17 05:19:05 +00:00
Raymond Hettinger 1583c40be9
gh-113202: Add a strict option to itertools.batched() (gh-113203) 2023-12-16 09:13:50 -06:00
Mark Dickinson fe479fb8a9
gh-67790: Support basic formatting for Fraction (#111320)
PR #100161 added fancy float-style formatting for the Fraction type,
but left us in a state where basic formatting for fractions (alignment,
fill, minimum width, thousands separators) still wasn't supported.

This PR adds that support.

---------

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-12-16 10:58:31 +00:00
Terry Jan Reedy 84df3172ef
gh-113046: Revise csv.reader doc (#113207)
Clarify nature of csvfile.
2023-12-16 03:12:39 -05:00
Raymond Hettinger 40574da019
Add reshape() recipe to demonstrate a use case for batched() and chained.from_iterable() (gh-113198) 2023-12-15 18:03:44 -06:00
Akshat Khandelwal 00d2b6d1fc
gh-110746: Improve markup in ``tkinter.ttk.rst`` (#111236)
* gh-110746: Improve markup in tkinter.ttk.rst

* gh-110746: Improve markup in tkinter.ttk.rst

* 📜🤖 Added by blurb_it.

---------

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
2023-12-15 21:53:16 +01:00
Alex Waygood 1addde0c69
gh-101100: Fix various Sphinx warnings for dunder references in the `library/` directory (#113163) 2023-12-15 19:15:34 +02:00
Alex Waygood c2c4879b0a
gh-101100: Fix Sphinx nitpicks in `library/numbers.rst` (#113162) 2023-12-15 19:05:12 +02:00
Victor Stinner 4a153a1d3b
[CVE-2023-27043] gh-102988: Reject malformed addresses in email.parseaddr() (#111116)
Detect email address parsing errors and return empty tuple to
indicate the parsing error (old API). Add an optional 'strict'
parameter to getaddresses() and parseaddr() functions. Patch by
Thomas Dwyer.

Co-Authored-By: Thomas Dwyer <github@tomd.tel>
2023-12-15 16:10:40 +01:00
Alex Waygood 7bb00f053e
gh-101100: Fix Sphinx nitpicks in `library/rlcompleter.rst` (#113125) 2023-12-15 10:57:23 +02:00
Raymond Hettinger 5f7d7353b4
Optimize unique_justseen() recipe for a common case. (gh-113147) 2023-12-14 17:27:39 -06:00
Alex Waygood 25061f5c98
gh-101100: Cleanup `mailbox` docs (#113124) 2023-12-14 14:10:26 -07:00
Hugo van Kemenade 961f1043a0
gh-101100: Fix Sphinx warnings in `whatsnew/2.3.rst` (#112373) 2023-12-14 13:48:36 -07:00
Raymond Hettinger becad9a2a1
Remove itertool recipe with low pedagogical value (gh-113138) 2023-12-14 14:36:40 -06:00
Alex Waygood 006355b2a9
gh-101100: Fix Sphinx nitpicks in `library/collections.abc.rst` (#113116) 2023-12-14 19:25:55 +00:00
Raymond Hettinger 93cf7358d9
Add recipe for totient() to demonstrate unique_justseen() and factor(). (gh-113131) 2023-12-14 13:15:29 -06:00
Ronald Oussoren 22511f77c2
gh-105912: document gotcha with using os.fork on macOS (#112871)
* gh-105912: document gotcha with using os.fork on macOS

Using ``fork(2)`` on macOS when also using higher-level
system APIs in the parent proces can crash on macOS because
those system APIs are not written to handle this usage
pattern.

There's nothing we can do about this other than documenting
the problem.

Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
2023-12-14 20:14:50 +01:00
jeremy-dolan fb4cb7ce31
gh-113113: doc: use less ambiguously named variable (gh-113114) 2023-12-14 15:40:24 +00:00
Alex Waygood d9e1b5794a
gh-101100: Fix Sphinx nitpicks in `library/traceback.rst` (#113106) 2023-12-14 14:10:35 +00:00
Alex Waygood 4b3cb082da
gh-101100: Fix Sphinx nitpicks in `library/inspect.rst` and `reference/simple_stmts.rst` (#113107) 2023-12-14 13:30:57 +00:00
Hugo van Kemenade 12f0bbd6e0
gh-112730: Update docs for colour env vars (#112837) 2023-12-14 13:36:48 +02:00
Serhiy Storchaka 29f7eb4859
gh-59616: Support os.chmod(follow_symlinks=True) and os.lchmod() on Windows (GH-113049) 2023-12-14 13:28:37 +02:00
Daniel Wysocki b3c21265fa
Fixing typo in DocTestRunner docs (GH-112326) 2023-12-14 12:07:37 +02:00
Stephen Gildea 4d5d9acb22
gh-90890: Reorder mailbox.Maildir method documentation (GH-113071)
When new mailbox.Maildir methods were added for 3.13.0a2, their
documentation was added at the end of the mailbox.Maildir section
instead of grouping them with other methods Maildir adds to Mailbox.

This commit moves the new methods' documentation adjacent to
documentation for existing Maildir-specific methods, so that
the "special remarks" for common methods remains at the end.
2023-12-14 09:53:08 +02:00
Christoph Anton Mitterer f14e3d59c9
gh-107959: clarify Unix-availability of `os.lchmod()` (GH-107960)
POSIX specifies that implementations are not required to support changing the
file mode of symbolic links, but may do so.
Consequently, `lchmod()` is not part of POSIX (but mentioned for implementations
which do support the above).

The current wording of the availability of `os.lchmod()` is rather vague and
improved to clearly tell which POSIX/Unix/BSD-like support the function in
general (those that support changing the file mode of symbolic links).
Further, some examples of major implementations are added.

Data for the BSDs taken from their online manpages.

Signed-off-by: Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-12-13 21:55:31 +02:00
Miro Hrončok 85923cb377
Docs: Fix external link to devguide.python.org (GH-112899) 2023-12-13 11:37:13 -08:00
Alex Waygood d05a180350
gh-101100: Improve docs on exception attributes (GH-113057)
* Improve docs on exception attributes

* thanks sphinx-lint

* fix doctests

* argh, okay, give up on doctests

* Various improvements
2023-12-13 10:59:36 -08:00
Raymond Hettinger 2111795d0c
Use match/case in grouper() recipe (gh-113059)
Use match/case in grouper() reciper
2023-12-13 12:11:52 -06:00
Irit Katriel 428c9812cb
gh-112962: in dis module, put cache information in the Instruction instead of creating fake Instructions to represent it (#113016) 2023-12-13 12:00:21 +00:00
Hugo van Kemenade 3531ea441b
gh-101100: Fix Sphinx warning in references with asterisks (#113029)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-13 09:24:55 +02:00
beavailable 3aea6c4823
gh-101336: Add keep_alive keyword arg for asyncio create_server() (#112485) 2023-12-13 03:23:29 +00:00
Alex Waygood 81a15ea74e
gh-101100: Further improve docs on function attributes (#113001) 2023-12-12 20:21:12 +00:00
Serhiy Storchaka fe9991bb67
gh-112999: Replace the outdated "deprecated" directives with "versionchanged" (GH-113000) 2023-12-12 18:31:04 +02:00
Ronald Oussoren 0d2fe6bab0
gh-87286: Add a number of LOG_* constants to syslog (#24432)
* bpo-43120: Add a number of LOG_* constants to syslog

This adds a number of syslog facilities to the syslogmodule.c.
These values are available on macOS.

* Switch contant documentation to the data directive

This fixes a CI warning and matches the pattern
used in the documentation for ``os``.

* Update Doc/library/syslog.rst


Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-12 10:25:51 +01:00
achhina a01022af23
GH-83162: Rename re.error for better clarity. (#101677)
Renamed re.error for clarity, and kept re.error for backward compatibility.
Updated idlelib files at TJR's request.
---------

Co-authored-by: Matthias Bussonnier <mbussonnier@ucmerced.edu>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2023-12-11 15:45:08 -05:00
Alex Waygood 4c5b9c107a
gh-101100: Improve documentation on function attributes (#112933)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-12-11 12:00:42 +02:00
Adam Turner 9cdf05bc28
GH-101986: Support translation for Limited/Unstable API & Stable ABI (#107680)
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-12-10 12:17:07 -07:00
Inada Naoki 42a86df3a3
Doc: c-api: fix order of PyMemberDef fields (#112879) 2023-12-11 02:43:17 +09:00
Hugo van Kemenade 7595d47722
gh-101100: Fix Sphinx warning in library/http.cookies.rst (#112908)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-10 05:53:26 -07:00
Hugo van Kemenade 5bf7580d72
Docs: Use 'f-strings' as header (#112888) 2023-12-10 10:39:51 +02:00
Alex Waygood 96f64a2b1b
gh-101100: Improve documentation of `TracebackType` attributes (#112884) 2023-12-09 22:43:53 +00:00
Alex Waygood 54410e6bd9
gh-101100: Fix Sphinx nitpicks in `library/tempfile.rst` (#112886)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-12-09 22:08:01 +00:00
Taylor Packard ed8720ace4
gh-112758: Updated pathlib documentation for PurePath.match (#112814) 2023-12-08 18:13:17 +00:00
Alex Waygood ed21d0c1f4
gh-101100: Improve documentation for attributes on instance methods (#112832) 2023-12-08 13:18:53 +00:00
Alex Waygood e4c0876033
gh-101100: Fix Sphinx nits in `library/contextlib.rst` (#112870) 2023-12-08 13:17:57 +00:00
Alex Waygood 3cdcc2edf8
gh-101100: Fix Sphinx nitpicks in `library/shelve.rst` (#112836) 2023-12-08 14:31:11 +02:00
Serhiy Storchaka 4ac1e8fb25
Add a versionchanged directive for gh-94692 (GH-112846)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-08 10:18:15 +02:00
Alex Waygood 2c3906bc4b
gh-101100: Silence Sphinx warnings when `ntpath` or `posixpath` are referenced (#112833) 2023-12-07 20:57:30 +00:00
Eric Snow 64d8b4c709
gh-112826: Add a "What's New" Entry About _thread._is_main_interpreter (gh-112853)
As of gh-112661, the threading module expects the _thread module to have a _is_main_interpreter(), which is used in the internal threading._shutdown().  This change causes a problem for anyone that replaces the _thread module with a custom one (only if they don't provide _is_main_interpreter()).  They need to be sure to add it for 3.13+, thus this PR is adding a note in "What's New".

This also forward-ports the "What's New" entry from 3.12 (gh-112850).  Note that we do not also forward-port the fix in that PR.  The fix is there only due to a regression from 3.12.0. There is no regression in 3.13+.
2023-12-07 13:22:15 -07:00
Tian Gao 3d712a9f4c
gh-102980: Redirect output of pdb's `interact` command, add tests and improve docs (#111194) 2023-12-07 11:19:33 +00:00
Pablo Galindo Salgado 16448cab44
gh-112730: Use color to highlight error locations (gh-112732)
Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2023-12-06 23:29:54 +01:00
Alex Waygood 3870d19d15
gh-101100: Fix Sphinx nitpicks in `library/reprlib.rst` (#112811) 2023-12-06 20:16:12 +00:00
Alex Waygood e9707d3c3d
gh-101100: Improve documentation of code object attributes (#112781) 2023-12-06 20:15:46 +00:00
Victor Stinner 828451dfde
gh-111545: Add Py_HashPointer() function (#112096)
* Implement _Py_HashPointerRaw() as a static inline function.
* Add Py_HashPointer() tests to test_capi.test_hash.
* Keep _Py_HashPointer() function as an alias to Py_HashPointer().
2023-12-06 15:09:22 +01:00
Victor Stinner f8852634ed
gh-108223: Refer to PEP 703 as Free Threading (#112780) 2023-12-06 12:55:58 +01:00
Christopher Chavez 00cce0fe49
gh-111178: Docs: fix `traverseproc`, `inquiry`, and `destructor` parameters in slot typedefs table (GH-112742)
In the slot typedefs table, the parameter of `destructor`
and the first parameter of `traverseproc` should both be
`PyObject *` rather than `void *`.
Same for `inquiry`.
2023-12-06 10:44:41 +01:00
Alex Waygood e3f670e137
gh-101100: Fix most Sphinx nitpicks in the glossary and `stdtypes.rst` (#112757) 2023-12-06 08:44:06 +00:00
Alex Waygood d109f637c0
gh-101100: Properly document frame object attributes (#112735) 2023-12-05 19:27:59 +00:00
Jurjen N. E. Bos c2e2df8356
Minor stylistic edit to the grouper recipe (gh112759) 2023-12-05 12:44:06 -06:00
Ethan Furman de6bca9564
gh-112328: [Enum] Make some private attributes public. (GH-112514)
* [Enum] Make some private attributes public.

- ``_EnumDict`` --> ``EnumDict``
- ``EnumDict._member_names`` --> ``EnumDict.member_names``
- ``Enum._add_alias_``
- ``Enum._add_value_alias_``

---------

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-12-05 08:27:36 -08:00
Alex Waygood 2f20cafdbf
gh-101100: Fix many easily solvable Sphinx nitpicks in the datamodel docs (#112737) 2023-12-05 09:59:52 +00:00
Jeffrey Kintscher 268415bbb3
gh-81441: shutil.rmtree() FileNotFoundError race condition (GH-14064)
Ignore missing files and directories while enumerating
directory entries in shutil.rmtree().

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-12-05 09:33:51 +00:00
Rune Tynan b31232ddf7
gh-62897: Update PyUnicode C API parameter names (GH-12680)
Standardize PyUnicode C API parameter names across the documentation.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-12-05 11:21:09 +02:00
pan324 81ee026091
gh-82300: Add track parameter to multiprocessing.shared_memory (#110778)
Add a track parameter to shared memory to allow resource tracking via the side-launched resource tracker process to be disabled on platforms that use it (POSIX).

This allows people who do not want automated cleanup at process exit because they are using the shared memory with processes not participating in Python's resource tracking to use the shared_memory API.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Guido van Rossum <gvanrossum@gmail.com>
Co-authored-by: Antoine Pitrou <pitrou@free.fr>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-12-05 00:11:44 -08:00
Constantin Hong aa5bee30ab
gh-102130: Support tab completion in cmd for Libedit. (GH-107748)
---

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2023-12-05 08:24:56 +01:00
Amioplk a8ce149628
gh-112671: Fixing typo in the Macro Docs (GH-112715)
Replace Py_T_STRING_INLINE with Py_T_STRING_INPLACE
2023-12-04 22:52:06 +02:00
Kamil Turek a1551b48ee
gh-103363: Add follow_symlinks argument to `pathlib.Path.owner()` and `group()` (#107962) 2023-12-04 19:42:01 +00:00
Alex Waygood 9560e0d6d7
gh-101100: Fix Sphinx nitpicks in `library/abc.rst` (#112703) 2023-12-04 12:42:24 +00:00
Serhiy Storchaka c74e9fb189
gh-110275: Named tuple's __replace__() now raises TypeError for invalid arguments (GH-110299) 2023-12-04 13:30:32 +02:00
Serhiy Storchaka da6760bdf5
gh-65210: Add const qualifiers in PyArg_VaParseTupleAndKeywords() (GH-105958)
Change the declaration of the keywords parameter in functions
PyArg_ParseTupleAndKeywords() and PyArg_VaParseTupleAndKeywords() from `char **`
to `char * const *` in C and `const char * const *` in C++.

It makes these functions compatible with argument of type `const char * const *`,
`const char **` or `char * const *` in C++ and `char * const *` in C
without explicit type cast.

Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
2023-12-04 13:14:56 +02:00
Alex Waygood cda737924f
gh-101100: Fix Sphinx nitpicks in `library/functions.rst` (#112669) 2023-12-04 11:05:20 +00:00
Serhiy Storchaka dee7beeb4f
bpo-34392: Add sys. _is_interned() (GH-8755) 2023-12-04 11:09:06 +02:00
Hugo van Kemenade 489aeac3a2
gh-101100: Fix Sphinx warning in `library/gettext.rst` (#112668)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-03 20:23:09 +00:00
Alex Waygood 45650d1c47
gh-101100: Fix most Sphinx nitpicks in `inspect.rst` (#112662) 2023-12-03 17:32:49 +00:00
Marco Aurélio A. Barbosa c27b09c813
Fix link to 'The Perils of Floating Point', on the tutorial (GH-112499)
Use author link to 'The Perils of Floating Point'.
2023-12-03 17:14:14 +02:00
Irit Katriel 97857ac058
gh-112645: remove deprecation warning for use of onerror in shutil.rmtree (#112659) 2023-12-03 14:02:37 +00:00
Alex Waygood 4ed46d2244
Run more `inspect.rst` code snippets in CI (#112654) 2023-12-03 11:50:22 +00:00
Victor Stinner a971574b73
gh-111545: Mention PEP 456 in PyHash_GetFuncDef() doc (#112647) 2023-12-03 11:21:48 +00:00
Alex Waygood fc9e24b01f
gh-112316: improve docs for `inspect.signature` and `inspect.Signature` (#112631) 2023-12-03 01:37:34 -08:00
Nikita Sobolev a9574c68f0
gh-112139: Add `inspect.Signature.format` and use it in `pydoc` (#112143)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2023-12-02 15:39:43 -08:00
Hugo van Kemenade 0229d2a9b1
Docs: Use sphinx-notfound-page to show a nicer 404 page (#111084) 2023-12-02 17:41:40 +00:00
Nikita Sobolev a74daba7ca
gh-112316: Improve docs of `inspect.signature` and `Signature.from_callable` (#112317)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-02 13:13:44 +00:00
William Wen 939fc6d6ea
gh-106922: Support multi-line error locations in traceback (attempt 2) (#112097) 2023-12-01 22:18:16 +00:00
Victor Stinner 5f6ac2d88a
gh-110481: Fix Py_SET_REFCNT() integer overflow (#112174)
If Py_NOGIL is defined and Py_SET_REFCNT() is called with a reference
count larger than UINT32_MAX, make the object immortal.

Set _Py_IMMORTAL_REFCNT constant type to Py_ssize_t to fix the
following compiler warning:

Include/internal/pycore_global_objects_fini_generated.h:14:24:
warning: comparison of integers of different signs: 'Py_ssize_t'
(aka 'long') and 'unsigned int' [-Wsign-compare]

    if (Py_REFCNT(obj) < _Py_IMMORTAL_REFCNT) {
        ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~
2023-12-01 15:50:16 +01:00
Tian Gao c2982380f8
gh-112510: Add `readline.backend` for the backend readline uses (GH-112511)
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Donghee Na <donghee.na92@gmail.com>
2023-12-01 14:05:55 +00:00
William Andrea f6afa426d8
Add links under "generator expression" in glossary (#112537) 2023-12-01 00:41:11 -08:00
Alperen Serkan Aksöz 730d450d43
gh-112502: Docs: Improve docs for gc.collect method (#112562)
* Docs: Improve docs for gc.collect method

* Update gc.rst
2023-11-30 21:04:00 +00:00
Matt Prodani 1ff212debd
gh-111699: Move smtpd note to dedicated section in What's New Python 3.12 doc (GH-112544)
Relocate smtpd deprecation notice to it's own section rather than under
'locale' in docs for What's New in Python 3.12 doc
2023-11-30 14:53:19 +02:00
Jelle Zijlstra d4a6229afe
gh-104003: Implement PEP 702 (#104004)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-11-29 09:38:29 -08:00
Ethan Furman f9e6ce0395
[Enum] update class creation for RuntimeError changes (GH-111815) 2023-11-28 20:40:12 -08:00
Grant Ramsay e413daf5f6
gh-112454: Disable TLS-PSK if OpenSSL was built without PSK support (#112491)
If OpenSSL was built without PSK support, the python TLS-PSK
methods will raise "NotImplementedError" if called.

Add a constant "ssl.HAS_PSK" to check if TLS-PSK is supported
2023-11-28 16:15:39 -08:00
Hugo van Kemenade 3fdf7ae3d1
gh-110930: Correct book title by Alan D. Moore (#112490) 2023-11-28 16:46:00 +02:00
Irit Katriel 2c68011780
gh-112332: Deprecate TracebackException.exc_type, add exc_type_str. (#112333) 2023-11-28 08:03:25 +00:00
Alex Waygood 2e632fa07d
Docs: fix markup for `importlib.machinery.NamespaceLoader` (#112479) 2023-11-28 00:15:23 +00:00
Eugene Toder 562d7149c6
Correct documentation for AF_PACKET (#112339)
Protocol in the address tuple should *not* be in the network-byte-order, because it is converted internally[1].

[1] 89ddea4886/Modules/socketmodule.c (L2144)

network byte order doesn't make sense for a python level int anyways. It's a fixed size C serialization concept.
2023-11-27 15:42:37 -08:00
Tian Gao b90a5cf11c
gh-99367: Do not mangle sys.path[0] in pdb if safe_path is set (#111762)
Co-authored-by: Christian Walther <cwalther@users.noreply.github.com>
2023-11-27 23:11:40 +00:00
Serhiy Storchaka 4dcfd02bed
gh-68166: Add support of "vsapi" in ttk.Style.element_create() (GH-111393) 2023-11-27 20:57:33 +02:00
Jacob Walls 99a73c3465
gh-76912: Raise OSError from any failure in getpass.getuser() (#29739)
* bpo-32731: Raise OSError from any failure in getpass.getuser()
Previously, if the username was not set in certain environment variables, ImportError escaped on Windows systems, and it was possible for KeyError to escape on other systems if getpwuid() failed.
2023-11-27 10:05:55 -08:00
Adam Turner ffe1b2d07b
GH-101100: Fix reference warnings for ``socket`` methods (#110114)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-11-27 16:36:54 +02:00
Victor Stinner d44ee42cd7
Move What's New In Python 3.12 entries to the right section (#112447)
Jython and ctypes removals are unrelated to C API Removals.
2023-11-27 12:55:52 +01:00
Tom Levy fb79e1ed4a
Docs: fix typo in doc for sqlite3.Cursor.execute (#112442) 2023-11-27 09:27:47 +00:00
Grant Ramsay e954ac7205
gh-63284: Add support for TLS-PSK (pre-shared key) to the ssl module (#103181)
Add support for TLS-PSK (pre-shared key) to the ssl module.

---------

Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-11-27 04:01:44 +00:00
Hugo van Kemenade 3faf8e586d
gh-101100: Fix Sphinx reference warnings (GH-112416)
* Fix Sphinx warning in library/xml.rst

Direct use of the pyexpat module is deprecated, but this is how to check the version for security purposes

* Fix Sphinx warning in library/importlib.resources.rst

* Use italics for parameters

* Link to the exception

* Fix Sphinx warning in library/gzip.rst

* Document message and header defect base classes to fix Sphinx warning in library/email.headerregistry.rst

* Restore feed_eof() doc to fix Sphinx warning in library/asyncio-stream.rst

* Fix Sphinx warning in extending/newtypes.rst

* Fix Sphinx warning in c-api/set.rst

On stdtypes.rst, set and frozenset are documented together and the frozenset has the working refs
2023-11-25 15:40:19 -08:00
Raymond Hettinger 97f8f28b3e
gh-112331: Fix reference manual description of attribute lookup mechanics (gh-112375) 2023-11-25 16:20:53 -06:00
Raymond Hettinger f93a4ef7a9
Descriptor HowTo: Sync the error-messages with the C code. Add tests. (gh-112403) 2023-11-25 16:18:00 -06:00
Hugo van Kemenade 0303a9fa79
gh-101100 : Fix Sphinx warnings in `library/doctest.rst` (#112399)
* Fix Sphinx warnings in library/doctest.rst

* Don't link to self, and wrap a line

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>

* Link to load_tests protocol

* Link to option flags

* Wrap line

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>

---------

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-11-25 20:08:32 +02:00
Hugo van Kemenade 6b961b8cea
gh-101100: Define `_tkinter` module to fix references (#112382)
Define _tkinter module to fix references
2023-11-25 08:18:02 +02:00
Hugo van Kemenade d525d01e27
gh-101100: Define `test.regrtest` module to fix references (#112381)
Define test.regrtest module to fix references
2023-11-25 08:17:31 +02:00
Irit Katriel fafae08cc7
gh-59254: mention in open() doc that line buffering is for writing (#112318) 2023-11-24 18:59:41 +01:00
Raymond Hettinger d9fc15222e
Remove bogus annotations from the descriptor howto guide (#112349) 2023-11-23 15:16:00 -06:00
Irit Katriel 10e1a0c916
gh-112137: change dis output to display labels instead of offsets (#112138) 2023-11-22 22:36:55 +00:00
Sebastian Rittau 6c47eaccfa
Fix docstring and var name of itertools recipe (#112113)
`prepend()` works with arbitrary iterables, not only iterators. In fact,
the example given uses a `list`, which is iterable, but not an iterator.
2023-11-22 07:35:36 +02:00
Tian Gao 46500c42f0
GH-111963: Clarify sys.monitoring.free_tool_id's limitations (GH-112291) 2023-11-21 14:58:30 -08:00
Junya Okabe 9d70831cb7
gh-110745: add a newline argument to pathlib.Path.read_text (#110880)
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Barney Gale <barney.gale@gmail.com>
2023-11-21 22:32:38 +00:00
Lincoln d857d5331a
gh-111361: Added an update for unicodedata in what's new in Python 3.13 (#112031)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-11-21 11:46:26 -07:00
Unique-Usman a6d25de375
gh-110383: Explained which error message is generated when there is an unhandled exception (#111574)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-11-19 05:20:10 -07:00
Alex Ptakhin 6bf8f20344
gh-110383: Fix documentation profile cumtime fix (#112221)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-11-19 02:56:54 -07:00
Charlie Zhao dabc0d77b2
Fix typo in documentation of `importlib.metadata` (GH-112099)
Fix minor typo in importlib doc
2023-11-17 15:11:30 -08:00
Victor Stinner cb5048ea0e
gh-112026: Update What's New: _PyObject_Vectorcall() was restored (#112171) 2023-11-17 23:30:42 +01:00
Victor Stinner 7c50800241
gh-110481, doc: Add "immortal" term to the glossary (#112180) 2023-11-17 15:09:19 +01:00
Ori Avtalion fb4cddb0cc
gh-94309: "What's new in Python 3.12": improve deprecation notice for typing.Hashable and typing.Sized (#112196) 2023-11-17 12:30:47 +00:00
Terry Jan Reedy 8cd70eefc7
gh-112165: Fix typo in `__main__.py` (#112183)
Change '[2]' to '[1]' to get second argument.
2023-11-16 20:05:16 -05:00
Luis Pedro Coelho 81ab0e8a4a
[doc] Make subprocess.wait documentation more precise (#98700)
[doc] Make subprocess.wait doc more precise

An active loop is only used when the `timeout` parameter is used on
POSIX.

When no timeout is used, the code calls `os.waitpid` internally (which puts
the process on a sleep status). On Windows, the internal Windows API
call accepts a timeout parameter, so that is delegated to the OS.
2023-11-16 05:04:46 -08:00
Petr Viktorin 985679f05d
gh-110812: Isolating Extension Modules HOWTO: List GC-related gotchas (GH-111504)
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
2023-11-16 12:05:44 +01:00
Victor Stinner d9fd33a869
gh-112088: Run autoreconf in GHA check_generated_files (#112090)
The "Check if generated files are up to date" job of GitHub Actions
now runs the "autoreconf -ivf -Werror" command instead of the "make
regen-configure" command to avoid depending on the external quay.io
server.

Add Tools/build/regen-configure.sh script to regenerate the configure
with an Ubuntu container image. The
"quay.io/tiran/cpython_autoconf:271" container image
(https://github.com/tiran/cpython_autoconf) is no longer used.
2023-11-15 21:47:14 +01:00
Victor Stinner b338ffa4bc
gh-112026: Add again <unistd.h> include in Python.h (#112046)
Add again <ctype.h> and <unistd.h> includes in Python.h, but don't
include them in the limited C API version 3.13 and newer.
2023-11-15 16:59:32 +01:00
Ryuji Tsutsui 0cfdd6e3d1
Fix typo in perf profiling docs (#112112) 2023-11-15 15:40:19 +00:00
Adam Turner 6c214dea7c
Docs: Add the time to the HTML last updated format (#110091) 2023-11-15 04:04:28 +00:00
Victor Stinner 55f3cce821
gh-111545: Test PyHash_GetFuncDef() function (#112098)
Add Modules/_testcapi/hash.c and Lib/test/test_capi/test_hash.py.
2023-11-15 03:41:29 +01:00
Victor Stinner 4f04172c92
gh-111262: Add PyDict_Pop() function (#112028)
_PyDict_Pop_KnownHash(): remove the default value and the return type
becomes an int.

Co-authored-by: Stefan Behnel <stefan_ml@behnel.de>
Co-authored-by: Antoine Pitrou <pitrou@free.fr>
2023-11-14 12:51:00 +00:00
Terry Jan Reedy e31d65e0b7
gh-111622: Fix doc for items views (#112051)
They are set-like even when some values are not hashable,
but work even better when all are.
2023-11-14 07:41:20 +00:00
Barney Gale d5491a6eff
GH-110417: Fix `glob` docs ordering (#110418)
Fix incorrect placement of `translate()` docs from cf67ebf.

Move "see also: pathlib" admonition to the bottom of the page, alongside one for fnmatch. This helps the module introduction flow more naturally into the function descriptions.

Add an "Examples" subheading just before the examples. This makes it more obvious that examples aren't specifically related to the preceding documentation of `escape()` and `translate()`.
2023-11-13 17:48:16 +00:00
Barney Gale cf67ebfb31
GH-72904: Add `glob.translate()` function (#106703)
Add `glob.translate()` function that converts a pathname with shell wildcards to a regular expression. The regular expression is used by pathlib to implement `match()` and `glob()`.

This function differs from `fnmatch.translate()` in that wildcards do not match path separators by default, and that a `*` pattern segment matches precisely one path segment. When *recursive* is set to true, `**` pattern segments match any number of path segments, and `**` cannot appear outside its own segment.

In pathlib, this change speeds up directory walking (because `_make_child_relpath()` does less work), makes path objects smaller (they don't need a `_lines` slot), and removes the need for some gnarly code.

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-11-13 17:15:56 +00:00
Victor Stinner babb787047
gh-111138: Add PyList_Extend() and PyList_Clear() functions (#111862)
* Split list_extend() into two sub-functions: list_extend_fast() and
  list_extend_iter().
* list_inplace_concat() no longer has to call Py_DECREF() on the
  list_extend() result, since list_extend() now returns an int.
2023-11-13 16:14:56 +00:00
Hugo van Kemenade a430b4ffdd
Docs: Add `make htmllive` to rebuild and reload HTML files in your browser (#111900) 2023-11-13 10:06:49 +02:00
Terry Jan Reedy 9a2f25d374
gh-111944: Add assignment expression parentheses requirements (#111977)
gh-111944: Clarify where assignment expressions require ()s

Augment the list of places where parentheses are
required around assignnment statements.  In particular,
'a := 0' and 'a = b := 1' are syntax errors.
2023-11-12 19:06:50 -05:00
Stephen Gildea 38035fed9b
gh-90890: New methods to access mailbox.Maildir message info and flags (#103905)
New methods to access mailbox.Maildir message info and flags:
get_info, set_info, get_flags, set_flags, add_flag, remove_flag.

These methods speed up accessing a message's info and/or flags and are
useful when it is not necessary to access the message's contents,
as when iterating over a Maildir to find messages with specific flags.

---------

* Add more str type checking
* modernize to f-strings instead of %

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2023-11-11 17:41:33 +00:00
Łukasz Langa 3932b0f7b1
gh-110722: Make `-m test -T -j` use sys.monitoring (GH-111710)
Now all results from worker processes are aggregated and
displayed together as a summary at the end of a regrtest run.

The traditional trace is left in place for use with sequential
in-process test runs but now raises a warning that those
numbers are not precise.

`-T -j` requires `--with-pydebug` as it relies on `-Xpresite=`.
2023-11-10 18:17:45 +01:00
Zac Hatfield-Dodds d61313bdb1
gh-103791: handle `BaseExceptionGroup` in `contextlib.suppress()` (#111910) 2023-11-10 13:32:36 +00:00
Samuel Thibault 0802fd6c8e
gh-81925: Implement native thread ids for kFreeBSD (#111761)
---------

Co-authored-by: Antoine Pitrou <antoine@python.org>
2023-11-09 21:02:30 +01:00
Hugo van Kemenade 7d21e3d5ee
gh-111895: Convert definition list to bullet list for readability on mobile (#111898)
Convert definition list to bullet list for readability on mobile
2023-11-09 20:50:27 +02:00
zipperer 2f2a0a3a6c
Add detail to comment on range of random.random() (gh-111868)
---------

Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
2023-11-09 08:58:04 -06:00
Donghee Na 6046aec377
gh-111835: Add seekable method to mmap.mmap (gh-111852) 2023-11-09 20:13:35 +09:00
Serhiy Storchaka 005d1e8fc8
gh-68166: Tkinter: Add tests and examples for element_create() (GH-111453)
* Remove mention of "vsapi" element type from the documentation.
* Add tests for element_create() and other ttk.Style methods.
* Add examples for element_create() in the documentation.
2023-11-08 18:25:58 +02:00
Pierre Ossman (ThinLinc team) 74b868f636
gh-111246: Remove listening Unix socket on close (#111483)
Try to clean up the socket file we create so we don't add unused noise to the file system.
2023-11-08 08:10:10 -08:00
Jelle Zijlstra 8ab7ad6308
Glossary: Add "static type checker" (#111837)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-11-08 14:38:36 +00:00
Victor Stinner 11e83488c5
gh-111089: Revert PyUnicode_AsUTF8() changes (#111833)
* Revert "gh-111089: Use PyUnicode_AsUTF8() in Argument Clinic (#111585)"

This reverts commit d9b606b3d0.

* Revert "gh-111089: Use PyUnicode_AsUTF8() in getargs.c (#111620)"

This reverts commit cde1071b2a.

* Revert "gh-111089: PyUnicode_AsUTF8() now raises on embedded NUL (#111091)"

This reverts commit d731579bfb.

* Revert "gh-111089: Add PyUnicode_AsUTF8() to the limited C API (#111121)"

This reverts commit d8f32be5b6.

* Revert "gh-111089: Use PyUnicode_AsUTF8() in sqlite3 (#111122)"

This reverts commit 37e4e20eaa.
2023-11-07 22:36:13 +00:00