summaryrefslogtreecommitdiffstats
path: root/Doc/whatsnew
Commit message (Collapse)AuthorAgeFilesLines
* gh-112015: Implement `ctypes.memoryview_at()` (GH-112018)Rian Hunter2025-01-031-0/+8
| | | | | Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> Co-authored-by: Petr Viktorin <encukou@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-128317: Highlight today in colour in calendar CLI output (#128318)Hugo van Kemenade2025-01-031-0/+13
| | | | Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
* gh-115765: Upgrade to GNU Autoconf 2.72 (#128411)Erlend E. Aasland2025-01-031-0/+3
|
* gh-124130: Fix a bug in matching regular expression \B in empty string ↵Serhiy Storchaka2025-01-021-0/+4
| | | | (GH-127007)
* gh-128349: Use `.. data::` instead of `.. class::` for pre-defined decimal ↵abkmystery2025-01-021-2/+2
| | | | `Context` objects (#128379)
* gh-121676: Raise a ``DeprecationWarning`` if the Python implementation of ↵Kirill Podoprigora2025-01-011-0/+5
| | | | | | | | | | | | | | | | | | ``functools.reduce`` is called with `function` or `sequence` as a keyword args (#121677) Python implementation of `functools` allows calling `reduce` with `function` or `sequence` as keyword args. This doesn't match behavior of our C accelerator and our documentation for `functools.reduce` states that `function`and `sequence` are positional-only arguments. Now calling a Python implementation of `functools.reduce` with `function` or `sequence` as keyword args would raise a `DeprecationWarning` and is planned to be prohibited in Python 3.16. Co-authored-by: Victor Stinner <vstinner@python.org> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* Docs: correctly markup sys.monitoring "What's New" entry (#128346)Erlend E. Aasland2024-12-301-2/+2
| | | The sys.monitoring entry was added with commit d2f1d917e.
* gh-123424: add `ZipInfo._for_archive` to set suitable default properties ↵Bénédikt Tran2024-12-291-0/+8
| | | | | | | (#123429) --------- Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
* gh-128192: support HTTP sha-256 digest authentication as per RFC-7617 ↵Calvin Bui2024-12-281-0/+8
| | | | | | | | | (GH-128193) support sha-256 digest authentication Co-authored-by: Peter Bierma <zintensitydev@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Gregory P. Smith <greg@krypto.org>
* gh-127949: add docs for asyncio policy deprecation (#128269)Kumar Aditya2024-12-261-4/+30
|
* gh-128035: Add ssl.HAS_PHA to detect libssl PHA support (GH-128036)Will Childs-Klein2024-12-241-0/+8
| | | | | | * Add ssl.HAS_PHA to detect libssl Post-Handshake-Auth support Co-authored-by: Tomas R. <tomas.roun8@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-126180: Remove getopt and optparse deprecation notices (GH-126227)Alyssa Coghlan2024-12-231-8/+16
| | | | | | | | | | | | | * Remove getopt and optparse deprecation notices * Add new docs sections for command line app helper libraries * Add guidance on choosing a CLI parsing library to the optparse docs * Link to the new guidance from the argparse and getopt docs * Reword intro in docs section for superseded stdlib modules * Reframe the optparse->argparse guide as a migration guide rather than as an upgrade guide --------- Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* gh-112328: Make EnumDict usable on its own and document it (GH-123669)Petr Viktorin2024-12-201-2/+4
| | | | | Co-authored-by: Rafi <rafi.promit@gmail.com> Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua> Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
* gh-112328: Document EnumDict in docs and release notes (GH-121720)Md Rokibul Islam2024-12-191-0/+5
| | | | Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua> Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
* GH-122548: Implement branch taken and not taken events for sys.monitoring ↵Mark Shannon2024-12-192-1/+15
| | | | (GH-122564)
* gh-127688: Add `SCHED_DEADLINE` and `SCHED_NORMAL` constants to `os` module ↵RUANG (James Roy)2024-12-191-0/+4
| | | | (GH-127689)
* gh-127174: add docs for asyncio.get_event_loop replacements (#127640)Thomas Grainger2024-12-181-0/+90
| | | Co-authored-by: Kumar Aditya <kumaraditya@python.org>
* gh-127896: Add missing documentation of `PySequence_In` (GH-127979)Yuki Kobayashi2024-12-161-0/+4
| | | | Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
* gh-127691: add type checks when using `PyUnicodeError` objects (GH-127694)Bénédikt Tran2024-12-131-0/+6
|
* gh-102471, PEP 757: Add PyLong import and export API (#121339)Victor Stinner2024-12-131-0/+11
| | | | | Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com> Co-authored-by: Steve Dower <steve.dower@microsoft.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-101100: Fix sphinx warnings in `whatsnew/3.0.rst` (#127662)Yuki Kobayashi2024-12-101-56/+56
|
* gh-126925: Modify how iOS test results are gathered (#127592)Russell Keith-Magee2024-12-091-0/+7
| | | | | | | Adds a `use_system_log` config item to enable stdout/stderr redirection for Apple platforms. This log streaming is then used by a new iOS test runner script, allowing the display of test suite output at runtime. The iOS test runner script can be used by any Python project, not just the CPython test suite.
* GH-125413: Revert addition of `pathlib.Path.scandir()` method (#127377)Barney Gale2024-12-051-6/+0
| | | | | | | | | | Remove documentation for `pathlib.Path.scandir()`, and rename the method to `_scandir()`. In the private pathlib ABCs, make `iterdir()` abstract and call it from `_scandir()`. It's not worthwhile to add this method at the moment - see discussion: https://discuss.python.org/t/ergonomics-of-new-pathlib-path-scandir/71721 Co-authored-by: Steve Dower <steve.dower@microsoft.com>
* gh-127221: Add colour to unittest output (#127223)Hugo van Kemenade2024-12-052-9/+7
| | | Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
* gh-127413: allow to show specialized bytecode via `dis` CLI (#127414)Bénédikt Tran2024-12-051-0/+6
|
* gh-127255: Make `CopyComPointer` public and add to `ctypes` doc. (GH-127275)Jun Komoda2024-12-031-1/+4
|
* gh-126585: Add EHWPOISON error code (#126586)RUANG (James Roy)2024-12-031-0/+5
|
* gh-109523: Raise a BlockingIOError if reading text from a non-blocking ↵Giovanni Siragusa2024-12-021-0/+9
| | | | stream cannot immediately return bytes. (GH-122933)
* gh-126899: Add `**kw` to `tkinter.Misc.after` and `tkinter.Misc.after_idle` ↵Zhikang Yan2024-12-011-0/+8
| | | | | | | (#126900) --------- Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* gh-69639: Add mixed-mode rules for complex arithmetic (C-like) (GH-124829)Sergey B Kirpichev2024-11-261-0/+4
| | | | | | | | | | | | | | | "Generally, mixed-mode arithmetic combining real and complex variables should be performed directly, not by first coercing the real to complex, lest the sign of zero be rendered uninformative; the same goes for combinations of pure imaginary quantities with complex variables." (c) Kahan, W: Branch cuts for complex elementary functions. This patch implements mixed-mode arithmetic rules, combining real and complex variables as specified by C standards since C99 (in particular, there is no special version for the true division with real lhs operand). Most C compilers implementing C99+ Annex G have only these special rules (without support for imaginary type, which is going to be deprecated in C2y).
* gh-107954: Document PEP 741 in What's New 3.14 (#127056)Victor Stinner2024-11-251-0/+36
|
* gh-101100: Fix sphinx warnings of removed opcodes (#127222)Yuki Kobayashi2024-11-246-16/+16
|
* GH-127133: Remove ability to nest argument groups & mutually exclusive ↵Savannah Ostrowski2024-11-241-0/+8
| | | | groups (#127186)
* gh-97514: Authenticate the forkserver control socket. (GH-99309)Gregory P. Smith2024-11-201-0/+5
| | | | | | | | | | | | | | | | | | | This adds authentication to the forkserver control socket. In the past only filesystem permissions protected this socket from code injection into the forkserver process by limiting access to the same UID, which didn't exist when Linux abstract namespace sockets were used (see issue) meaning that any process in the same system network namespace could inject code. We've since stopped using abstract namespace sockets by default, but protecting our control sockets regardless of type is a good idea. This reuses the HMAC based shared key auth already used by `multiprocessing.connection` sockets for other purposes. Doing this is useful so that filesystem permissions are not relied upon and trust isn't implied by default between all processes running as the same UID with access to the unix socket. ### pyperformance benchmarks No significant changes. Including `concurrent_imap` which exercises `multiprocessing.Pool.imap` in that suite. ### Microbenchmarks This does _slightly_ slow down forkserver use. How much so appears to depend on the platform. Modern platforms and simple platforms are less impacted. This PR adds additional IPC round trips to the control socket to tell forkserver to spawn a new process. Systems with potentially high latency IPC are naturally impacted more. Typically a 1-4% slowdown on a very targeted process creation microbenchmark, with a worst case overloaded system slowdown of 20%. No evidence that these slowdowns appear in practical sense. See the PR for details.
* gh-126615: `ctypes`: Make `COMError` public (GH-126686)Jun Komoda2024-11-201-0/+3
| | | Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* GH-84850: Improve whatsnew entry for `[Fancy]URLopener` removal (#127032)Barney Gale2024-11-201-0/+7
|
* gh-123299: Copyedit "What's New in Python 3.14" (#127028)Hugo van Kemenade2024-11-201-17/+17
|
* GH-84850: Remove `urllib.request.URLopener` and `FancyURLopener` (#125739)Barney Gale2024-11-191-0/+4
|
* gh-85957: Add missing MIME types for images with RFCs (#126966)Hugo van Kemenade2024-11-181-0/+11
|
* gh-123803: Support arbitrary code page encodings on Windows (GH-123804)Serhiy Storchaka2024-11-181-0/+3
| | | | | | If the cpXXX encoding is not directly implemented in Python, fall back to use the Windows-specific API codecs.code_page_encode() and codecs.code_page_decode().
* Add PEP 761 to What's New (#126550)Seth Michael Larson2024-11-151-0/+10
| | | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
* gh-122549: Add platform.invalidate_caches() (#122547)Bénédikt Tran2024-11-151-0/+8
| | | Allow to invalidate platform's cached results.
* Doc: Recommend shlex.quote alongside pipes removal (#126570)Colin Watson2024-11-141-0/+2
| | | | | | | One of the most common reasons I see the old `pipes` module still in use when porting to Python 3.13 is for the undocumented `pipes.quote` function, which can easily be replaced with `shlex.quote`. I think it's worth specifically calling this out, since being directed to the `subprocess` module would be confusing in this case.
* gh-126390: Support for preserving order of options and nonoption arguments ↵Serhiy Storchaka2024-11-131-0/+3
| | | | in gnu_getopt() (GH-126393)
* gh-123619: Add an unstable C API function for enabling deferred reference ↵Peter Bierma2024-11-131-0/+3
| | | | | | counting (GH-123635) Co-authored-by: Sam Gross <colesbury@gmail.com>
* gh-116897: Deprecate generic false values in urllib.parse.parse_qsl() ↵Serhiy Storchaka2024-11-121-0/+7
| | | | | | | | (GH-116903) Accepting objects with false values (like 0 and []) except empty strings and byte-like objects and None in urllib.parse functions parse_qsl() and parse_qs() is now deprecated.
* gh-89083: add support for UUID version 8 (RFC 9562) (#123224)Bénédikt Tran2024-11-121-0/+8
| | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
* gh-126061: Add PyLong_IsPositive/Zero/Negative() functions (#126065)RUANG (James Roy)2024-11-121-0/+5
| | | | | Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com> Co-authored-by: Peter Bierma <zintensitydev@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-125916: Allow functools.reduce() 'initial' to be a keyword argument (#125917)Sayandip Dutta2024-11-121-0/+5
|
* gh-84852: Add MIME types for .eot, ,otf, .ttf, .woff and .woff2 fonts (#20199)Sahil Prajapati2024-11-121-0/+10
| | | | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>