Commit graph

29115 commits

Author SHA1 Message Date
Mark Shannon
2498c22fa0
GH-91079: Implement C stack limits using addresses, not counters. (GH-130007)
* Implement C recursion protection with limit pointers

* Remove calls to PyOS_CheckStack

* Add stack protection to parser

* Make tests more robust to low stacks

* Improve error messages for stack overflow
2025-02-19 11:44:57 +00:00
Adam Turner
736ad664e0
Docs: Upgrade Sphinx to 8.2 (#130171) 2025-02-18 23:45:02 +00:00
Sergey Miryanov
bcc9a5dddb
gh-129515: Clarify syntax error messages for conditional expressions (#129880)
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-02-18 21:43:19 +00:00
Pablo Galindo Salgado
51d4bf1e0e
bpo-45325: Add a new 'p' parameter to Py_BuildValue to convert an integer into a Python bool (#28634) 2025-02-18 17:14:11 +00:00
sobolevn
97d0011e7e
gh-130160: use option instead of cmdoption in dis.rst (#130255) 2025-02-18 15:54:14 +03:00
Kanishk Pachauri
8cd7f8bf8d
gh-130160: use .. program:: directive for documenting ensurepip CLI (gh-130253) 2025-02-18 12:09:22 +00:00
Tomas R.
25422561de
gh-125756: Document Pickler.clear_memo() (GH-125762) 2025-02-17 17:48:29 +02:00
Yuki Kobayashi
fc8c99a8ce
gh-130214: Document PyEllipsis_Type (GH-130215) 2025-02-17 13:56:33 +01:00
Irit Katriel
c9b1bf302c
gh-130139: always check ast node type in ast.parse() with ast input (#130140) 2025-02-16 13:32:39 +00:00
Stan Ulbrych
9837c2a214
gh-130169: Fix broken list markup in Doc/c-api/function.rst (#130174) 2025-02-16 13:55:31 +03:00
AN Long
798f8d3ea9
Replace non-breaking spaces with normal spaces (#130116)
Using normal spaces in place of non-breaking spaces.
2025-02-16 09:33:14 +08:00
Ken Jin
a13460ac44
Add Neil's suggestions to whatsnew wording for tailcall (#130155)
Add Neil's suggestions

Co-authored-by: Neil Schemenauer <690853+nascheme@users.noreply.github.com>
2025-02-15 21:09:37 +08:00
Srinivas Reddy Thatiparthy (తాటిపర్తి శ్రీనివాస్ రెడ్డి)
d2e60d8e59
gh-130106: Fix a typo in unittest.mock doc (#130107) 2025-02-15 03:30:12 +00:00
Inada Naoki
e65e9f9062
Doc: update term "namespace package" (#129251) 2025-02-14 13:47:54 -05:00
Stan Ulbrych
3402e133ef
gh-82045: Correct and deduplicate "isprintable" docs; add test. (GH-130118)
We had the definition of what makes a character "printable" documented in three places, giving two different definitions.
The definition in the comment on `_PyUnicode_IsPrintable` was inverted; correct that.

With that correction, the two definitions turn out to be equivalent -- but to confirm that, you have to go look up, or happen to know, that those are the only five "Other" categories and only three "Separator" categories in the Unicode character database.  That makes it hard for the reader to tell whether they really are the same, or if there's some subtle difference in the intended semantics.

Fix that by cutting the C API docs' and the C comment's copies of the subtle details, in favor of referring to the Python-level docs. That ensures it's explicit that these are all meant to agree, and also lets us concentrate improvements to the wording in one place.

Speaking of which, borrow some ideas from the C comment, along with other tweaks, to hopefully add a bit more clarity to that one newly-centralized copy in the docs.

Also add a thorough test that the implementation agrees with this definition.

Author:    Greg Price <gnprice@gmail.com>

Co-authored-by: Greg Price <gnprice@gmail.com>
2025-02-14 18:16:47 +01:00
Ken Jin
aa28423201
Revert "gh-130048: Reintroduce full LTO as default on Clang (GH-130049)" (#130088)
This reverts commit 34c06ccc4c.
2025-02-13 17:27:19 +00:00
Ken Jin
34c06ccc4c
gh-130048: Reintroduce full LTO as default on Clang (GH-130049) 2025-02-13 22:06:00 +08:00
Ammar Askar
f9a7d41bac
gh-96092: Fix traceback.walk_stack(None) skipping too many frames (#129330)
As it says in its documentation, walk_stack was meant to just
follow `f.f_back` like other functions in the traceback module.
Instead it was previously doing `f.f_back.f_back` and then this
changed to `f_back.f_back.f_back.f_back' in Python 3.11 breaking
its behavior for external users.

This happened because the walk_stack function never really had
any good direct tests and its only consumer in the traceback module was
`extract_stack` which passed the result into `StackSummary.extract`.
As a generator, it was previously capturing the state of the stack
when it was first iterated over, rather than the stack when `walk_stack`
was called. Meaning when called inside the two method deep
`extract` and `extract_stack` calls, two `f_back`s were needed.
When 3.11 modified the sequence of calls in `extract`, two more
`f_back`s were needed to make the tests happy.

This changes the generator to capture the stack when `walk_stack` is
called, rather than when it is first iterated over. Since this is
technically a breaking change in behavior, there is a versionchanged
to the documentation. In practice, this is unlikely to break anyone,
you would have been needing to store the result of `walk_stack` and
expecting it to change.
2025-02-13 01:43:09 +00:00
Pablo Galindo Salgado
6fb5138776
gh-88535: Improve syntax error for wrongly closed strings (#26633) 2025-02-13 01:30:20 +00:00
Satyam Kumar
791cdfe141
gh-129912: Fix references to Py_TPFLAGS_MANAGED_DICT (gh-130044) 2025-02-12 17:48:14 -05:00
Andrew Svetlov
469d2e416c
gh-129889: Support context manager protocol by contextvars.Token (#129888) 2025-02-12 12:32:58 +01:00
Stan Ulbrych
555ee43d92
gh-59149: Setup documentation for IDLE on Linux and add section in Editors (#130003)
Co-authored-by: Petr Viktorin <encukou@gmail.com>
---------

Co-authored-by: Petr Viktorin <encukou@gmail.com>
2025-02-12 03:16:56 -05:00
Wulian233
06ac157c53
gh-125746: Delay deprecated zipimport.zipimporter.load_module removal time to 3.15 (#125748) 2025-02-11 23:59:09 +00:00
Hugo van Kemenade
53e8e72dab Merge branch 'main' of https://github.com/python/cpython 2025-02-11 21:29:11 +02:00
Tomas R.
aa81a6f6e4
gh-97850: Update the deprecation warning of importlib.abc.Loader.load_module (GH-129855) 2025-02-11 11:04:16 -08:00
Hugo van Kemenade
3ae9101482 Python 3.14.0a5 2025-02-11 19:16:29 +02:00
Yuki Kobayashi
1da412e574
gh-101100: Docs: Fix some typos in the document (#129988)
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
2025-02-11 13:06:32 +02:00
Wulian233
12bd15f7b3
gh-129939: Add darkmode support for difflib's comparison pages (#129940) 2025-02-11 10:58:57 +02:00
Hugo van Kemenade
1feaecc2bc
gh-123299: Copyedit "What's New in Python 3.14" (#129970) 2025-02-10 23:46:36 +02:00
Ken Jin
516c70d4dd
Clarify baseline for new interpreter (GH-129972) 2025-02-10 19:07:24 +00:00
Yuki Kobayashi
8d9d3e4ecb
gh-46236: Document PyUnicode_DecodeCodePageStateful (GH-127934)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-02-10 17:17:37 +01:00
Vinay Sajip
7c156a63d3
gh-129143: Fix incorrect documentation for logging.Handler.close(). (GH-129950) 2025-02-10 11:13:52 +00:00
Victorien
2abb6a4f13
Fix typo in 3.14 pdb whatsnew entry (#129886) 2025-02-09 22:17:05 -08:00
Victorien
d05053a203
Fix typo in enum documentation (#129920) 2025-02-09 21:48:11 +00:00
Stan Ulbrych
6fbf15f98e
gh-129873: IDLE: Improve help.py's method of parsing HTML (#129859)
In `help.copy_strip`, only copy the text `<section>`.  In `help.HelpParser.handle_starttag` and elsewhere, remove code to skip the no longer present html.  Add a reminder at the top of idle.rst to run copy_strip after changes.
---------

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2025-02-09 08:17:35 +00:00
Tian Gao
29f8a67ae0
Provide curframe_locals for backward compatibility but deprecate it (#125951) 2025-02-08 23:35:28 +00:00
Gregory P. Smith
5ce70ad129
gh-64414: mention AF_INET6 and IPv6 in socketserver docs. (#129866)
mention AF_INET6 and IPv6 in socketserver docs.
2025-02-08 12:06:28 -08:00
Ned Batchelder
f2ae79d29e
Docs: more explanation of the implications of new tail-call interpreter (GH-129863)
Co-authored-by: Ken Jin <kenjin4096@gmail.com>
2025-02-08 19:28:35 +00:00
Stan Ulbrych
33a7094aa6
gh-129699: Add description to IDLE doc title (#129727)
Also extend the 'idlelib' section header. These additions affect both the displayed idle.html file and the contents.html file displayed by clicking the Complete table of contents link on the main docs.python.org page. (The module index entries are generated from the module name and synopsis within module files.)
---------

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2025-02-08 14:26:07 -05:00
Hugo van Kemenade
1bccd6c34f
gh-128317: Move CLI calendar highlighting to private class (#129625)
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2025-02-08 15:56:57 +00:00
Brian Ward
421ea1291d
gh-119349: Add ctypes.util.dllist -- list loaded shared libraries (GH-122946)
Add function to list the currently loaded libraries to ctypes.util

The dllist() function calls platform-specific APIs in order to
list the runtime libraries loaded by Python and any imported modules.
On unsupported platforms the function may be missing.


Co-authored-by: Eryk Sun <eryksun@gmail.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-02-08 14:02:36 +01:00
Tian Gao
d3b60fff58
gh-124703: Add documentation and whatsnew entry for pdb exit change (#129818) 2025-02-07 21:02:46 -05:00
Barney Gale
718ab66299
GH-125413: Add pathlib.Path.info attribute (#127730)
Add `pathlib.Path.info` attribute, which stores an object implementing the `pathlib.types.PathInfo` protocol (also new). The object supports querying the file type and internally caching `os.stat()` results. Path objects generated by `Path.iterdir()` are initialised with status information from `os.DirEntry` objects, which is gleaned from scanning the parent directory.

The `PathInfo` protocol has four methods: `exists()`, `is_dir()`, `is_file()` and `is_symlink()`.
2025-02-08 01:16:45 +00:00
Irit Katriel
a1417b211f
gh-100239: replace BINARY_SUBSCR & family by BINARY_OP with oparg NB_SUBSCR (#129700) 2025-02-07 22:39:54 +00:00
Ken Jin
e4a00f70b1
Fix link in 3.14 whatsnew (#129828) 2025-02-07 19:30:23 +00:00
Ken Jin
7b2e01bb55
Remove tail-calling wording as it is confusing (GH-129823) 2025-02-07 18:49:28 +00:00
Garrett Gu
662e88db64
Fix Garrett Gu name misspelling in 3.14 whatsnew (GH-129822)
Update 3.14.rst to fix typo
2025-02-07 17:56:46 +00:00
Adam Turner
a93a5a39fb
gh-128563: Clarify clarificatory tail calling wording in What's New (#129812) 2025-02-07 15:12:33 +00:00
Ken Jin
476a78fdd6
gh-128563: Clarify tail calling interpreter is not TCO (#129809)
Clarify tail calling interpreter is not TCO
2025-02-07 14:59:34 +00:00
Ken Jin
3d3a4beefe
gh-128563: Document the tail-calling interpreter (GH-129728)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-02-07 20:18:15 +08:00