summaryrefslogtreecommitdiffstats
path: root/Doc/whatsnew
Commit message (Collapse)AuthorAgeFilesLines
...
* gh-85283: Build termios extension with the limited C API (#116928)Victor Stinner2024-03-171-1/+2
|
* gh-73468: Add math.fma() function (#116667)Victor Stinner2024-03-171-0/+10
| | | | | | Added new math.fma() function, wrapping C99's ``fma()`` operation: fused multiply-add function. Co-authored-by: Mark Dickinson <mdickinson@enthought.com>
* gh-85283: Build pwd extension with the limited C API (#116841)Victor Stinner2024-03-151-1/+1
| | | | Argument Clinic now uses the PEP 737 "%T" format to format type name for the limited C API.
* gh-111696, PEP 737: Add %T and %N to PyUnicode_FromFormat() (#116839)Victor Stinner2024-03-141-0/+6
|
* gh-111696, PEP 737: Add PyType_GetModuleName() function (#116824)Victor Stinner2024-03-141-0/+4
| | | Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
* gh-111696, PEP 737: Add PyType_GetFullyQualifiedName() function (#116815)Victor Stinner2024-03-141-0/+6
| | | Rewrite tests on type names in Python, they were written in C.
* gh-88494: Use QueryPerformanceCounter() for time.monotonic() (#116781)Victor Stinner2024-03-141-0/+9
| | | | | On Windows, time.monotonic() now uses the QueryPerformanceCounter() clock to have a resolution better than 1 us, instead of the gGetTickCount64() clock which has a resolution of 15.6 ms.
* gh-85283: Build fcntl extension with the limited C API (#116791)Victor Stinner2024-03-141-2/+2
|
* gh-116127: PEP-705: Add `ReadOnly` support for `TypedDict` (#116350)Nikita Sobolev2024-03-121-0/+4
| | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-113538: Revert "gh-113538: Add asycio.Server.{close,abort}_clients ↵Guido van Rossum2024-03-121-5/+0
| | | | | | | | | | (#114432)" (#116632) Revert "gh-113538: Add asycio.Server.{close,abort}_clients (#114432)" Reason: The new test doesn't always pass: https://github.com/python/cpython/pull/116423#issuecomment-1989425489 This reverts commit 1d0d49a7e86257ff95b4de0685e6997d7533993c.
* gh-113538: Add asycio.Server.{close,abort}_clients (#114432)Pierre Ossman (ThinLinc team)2024-03-111-0/+5
| | | | | | These give applications the option of more forcefully terminating client connections for asyncio servers. Useful when terminating a service and there is limited time to wait for clients to finish up their work.
* gh-116349: Deprecate `platform.java_ver` function (#116471)Nikita Sobolev2024-03-081-0/+9
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-107361: strengthen default SSL context flags (#112389)William Woodruff2024-03-061-1/+15
| | | | | | | | | | | | | This adds `VERIFY_X509_STRICT` to make the default SSL context perform stricter (per RFC 5280) validation, as well as `VERIFY_X509_PARTIAL_CHAIN` to enforce more standards-compliant path-building behavior. As part of this changeset, I had to tweak `make_ssl_certs.py` slightly to emit 5280-conforming CA certs. This changeset includes the regenerated certificates after that change. Signed-off-by: William Woodruff <william@yossarian.net> Co-authored-by: Victor Stinner <vstinner@python.org>
* gh-115957: Close coroutine if TaskGroup.create_task() raises an error (#116009)Jason Zhang2024-03-061-0/+6
|
* gh-115256: Remove refcycles from tarfile writing (GH-115257)pan3242024-03-041-0/+3
|
* gh-115398: Expose Expat >=2.6.0 reparse deferral API (CVE-2023-52425) ↵Sebastian Pipping2024-02-291-0/+11
| | | | | | | | | | | | | | | | | | | | | (GH-115623) Allow controlling Expat >=2.6.0 reparse deferral (CVE-2023-52425) by adding five new methods: - `xml.etree.ElementTree.XMLParser.flush` - `xml.etree.ElementTree.XMLPullParser.flush` - `xml.parsers.expat.xmlparser.GetReparseDeferralEnabled` - `xml.parsers.expat.xmlparser.SetReparseDeferralEnabled` - `xml.sax.expatreader.ExpatParser.flush` Based on the "flush" idea from https://github.com/python/cpython/pull/115138#issuecomment-1932444270 . ### Notes - Please treat as a security fix related to CVE-2023-52425. Includes code suggested-by: Snild Dolkow <snild@sony.com> and by core dev Serhiy Storchaka.
* Docs: mark up NotImplemented using the :data: role throughout the docs (#116135)Erlend E. Aasland2024-02-294-4/+4
|
* gh-105858: Improve AST node constructors (#105880)Jelle Zijlstra2024-02-281-0/+15
| | | | | | | | | | | | | | | | | Demonstration: >>> ast.FunctionDef.__annotations__ {'name': <class 'str'>, 'args': <class 'ast.arguments'>, 'body': list[ast.stmt], 'decorator_list': list[ast.expr], 'returns': ast.expr | None, 'type_comment': str | None, 'type_params': list[ast.type_param]} >>> ast.FunctionDef() <stdin>:1: DeprecationWarning: FunctionDef.__init__ missing 1 required positional argument: 'name'. This will become an error in Python 3.15. <stdin>:1: DeprecationWarning: FunctionDef.__init__ missing 1 required positional argument: 'args'. This will become an error in Python 3.15. <ast.FunctionDef object at 0x101959460> >>> node = ast.FunctionDef(name="foo", args=ast.arguments()) >>> node.decorator_list [] >>> ast.FunctionDef(whatever="you want", name="x", args=ast.arguments()) <stdin>:1: DeprecationWarning: FunctionDef.__init__ got an unexpected keyword argument 'whatever'. Support for arbitrary keyword arguments is deprecated and will be removed in Python 3.15. <ast.FunctionDef object at 0x1019581f0>
* gh-101100: Fix Sphinx warnings in `whatsnew/2.1.rst` (#112357)Hugo van Kemenade2024-02-261-37/+37
| | | | | Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-115532: Add kernel density estimation to the statistics module (gh-115863)Raymond Hettinger2024-02-251-0/+8
|
* bpo-31116: Add Z85 variant to base64 (GH-30598)Matan Perelman2024-02-251-0/+8
| | | Z85 specification: https://rfc.zeromq.org/spec/32/
* gh-101100: Fix Sphinx warnings in `whatsnew/2.0.rst` (#112351)Hugo van Kemenade2024-02-251-52/+53
| | | | Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-113202: Add whatsnew entry for the batched() strict option. (gh-115889)Raymond Hettinger2024-02-241-0/+8
|
* gh-101100: Fix Sphinx warnings in `whatsnew/3.2.rst` (#115580)Hugo van Kemenade2024-02-171-42/+43
| | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-101100: Fix Sphinx warnings in `whatsnew/3.1.rst` (#115575)Hugo van Kemenade2024-02-171-9/+13
|
* gh-113812: Allow DatagramTransport.sendto to send empty data (#115199)Jamie Phan2024-02-171-0/+6
| | | | Also include the UDP packet header sizes (8 bytes per packet) in the buffer size reported to the flow control subsystem.
* gh-100734: What's New in 3.x: Add missing detail from 3.x branch (#114689)Hugo van Kemenade2024-02-158-0/+327
|
* gh-114570: Add PythonFinalizationError exception (#115352)Victor Stinner2024-02-141-0/+15
| | | | | | | | | | | | | | | | | Add PythonFinalizationError exception. This exception derived from RuntimeError is raised when an operation is blocked during the Python finalization. The following functions now raise PythonFinalizationError, instead of RuntimeError: * _thread.start_new_thread() * subprocess.Popen * os.fork() * os.fork1() * os.forkpty() Morever, _winapi.Overlapped finalizer now logs an unraisable PythonFinalizationError, instead of an unraisable RuntimeError.
* gh-100414: Make dbm.sqlite3 the preferred dbm backend (#115447)Erlend E. Aasland2024-02-141-1/+1
|
* gh-100414: Add SQLite backend to dbm (#114481)Erlend E. Aasland2024-02-141-0/+10
| | | | | Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com> Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
* gh-111140: Adds PyLong_AsNativeBytes and PyLong_FromNative[Unsigned]Bytes ↵Steve Dower2024-02-121-1/+6
| | | | functions (GH-114886)
* gh-110850: Add PyTime_t C API (GH-115215)Petr Viktorin2024-02-121-0/+10
| | | | | | | | | | | | * gh-110850: Add PyTime_t C API Add PyTime_t API: * PyTime_t type. * PyTime_MIN and PyTime_MAX constants. * PyTime_AsSecondsDouble(), PyTime_Monotonic(), PyTime_PerfCounter() and PyTime_GetSystemClock() functions. Co-authored-by: Victor Stinner <vstinner@python.org>
* gh-101100: Fix Sphinx warnings in `whatsnew/2.7.rst` and related (#115319)Hugo van Kemenade2024-02-124-91/+95
| | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-97928: Partially restore the behavior of tkinter.Text.count() by default ↵Serhiy Storchaka2024-02-111-7/+6
| | | | | | | | | | | | | (GH-115031) By default, it preserves an inconsistent behavior of older Python versions: packs the count into a 1-tuple if only one or none options are specified (including 'update'), returns None instead of 0. Except that setting wantobjects to 0 no longer affects the result. Add a new parameter return_ints: specifying return_ints=True makes Text.count() always returning the single count as an integer instead of a 1-tuple or None.
* gh-114894: add array.array.clear() method (#114919)Mike Zimin2024-02-101-0/+3
| | | | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: AN Long <aisk@users.noreply.github.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-96471: Add shutdown() method to queue.Queue (#104750)Laurie O2024-02-101-0/+7
| | | | Co-authored-by: Duprat <yduprat@gmail.com>
* GH-113632: update configure.ac for WebAssembly support tiers (#115192)Brett Cannon2024-02-091-0/+6
| | | Move WASI to tier 2 and drop Emscripten.
* gh-107944: Improve error message for getargs with bad keyword arguments ↵Shantanu2024-02-081-0/+11
| | | | (#114792)
* GH-108362: Revert "GH-108362: Incremental GC implementation (GH-108038)" ↵Mark Shannon2024-02-071-34/+0
| | | | | | | (#115132) Revert "GH-108362: Incremental GC implementation (GH-108038)" This reverts commit 36518e69d74607e5f094ce55286188e4545a947d.
* gh-115114: Add missing slash to file URI prefix `file:/` (#115115)Edgar Ramírez Mondragón2024-02-071-1/+1
| | | Add missing slash to file URI prefix `file:/`
* gh-112066: Add `PyDict_SetDefaultRef` function. (#112123)Sam Gross2024-02-061-0/+6
| | | | | | | The `PyDict_SetDefaultRef` function is similar to `PyDict_SetDefault`, but returns a strong reference through the optional `**result` pointer instead of a borrowed reference. Co-authored-by: Petr Viktorin <encukou@gmail.com>
* gh-91602: Add iterdump() support for filtering database objects (#114501)Mariusz Felisiak2024-02-061-0/+4
| | | | | | Add optional 'filter' parameter to iterdump() that allows a "LIKE" pattern for filtering database objects to dump. Co-authored-by: Erlend E. Aasland <erlend@python.org>
* gh-83648: Support deprecation of options, arguments and subcommands in ↵Serhiy Storchaka2024-02-051-0/+9
| | | | argparse (GH-114086)
* gh-82626: Emit a warning when bool is used as a file descriptor (GH-111275)Serhiy Storchaka2024-02-051-0/+5
|
* GH-108362: Incremental GC implementation (GH-108038)Mark Shannon2024-02-051-0/+34
|
* gh-43457: Tkinter: fix design flaws in wm_attributes() (GH-111404)Serhiy Storchaka2024-02-051-0/+9
| | | | | | | | | * When called with a single argument to get a value, it allow to omit the minus prefix. * It can be called with keyword arguments to set attributes. * w.wm_attributes(return_python_dict=True) returns a dict instead of a tuple (it will be the default in future). * Setting wantobjects to 0 no longer affects the result.
* gh-69893: Add the close() method for xml.etree.ElementTree.iterparse() ↵Serhiy Storchaka2024-02-041-0/+8
| | | | iterator (GH-114534)
* gh-101100: Fix Sphinx warnings from PEP 3108 stdlib re-organisation (#114327)Hugo van Kemenade2024-02-048-90/+90
| | | | | | | | | | | | | | | | | | | * Fix Sphinx warnings from PEP 3108 stdblib re-organisation * Apply suggestions from code review Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> * Update Doc/whatsnew/2.2.rst Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> * Apply suggestions from code review Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> --------- Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-114329: Add `PyList_GetItemRef` function (GH-114504)Sam Gross2024-02-021-0/+4
| | | | | | | The new `PyList_GetItemRef` is similar to `PyList_GetItem`, but returns a strong reference instead of a borrowed reference. Additionally, if the passed "list" object is not a list, the function sets a `TypeError` instead of calling `PyErr_BadInternalCall()`.
* Write about Tier 2 and JIT in "what's new 3.13" (#114826)Guido van Rossum2024-02-011-0/+47
| | | (This will soon be superseded by Ken Jin's much more detailed version.)