Hugo van Kemenade
8cdaca8b25
Python 3.14.0a1
2024-10-15 22:34:54 +03:00
Alex Waygood
3024b16d51
gh-101100: Consolidate documentation on `ModuleType` attributes ( #124709 )
...
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Barry Warsaw <barry@python.org>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2024-10-09 10:53:57 +00:00
Tomas R
09aebb1fbc
gh-118181: Fix parameter markup in AST docs ( #124473 )
2024-09-26 06:38:25 -07:00
Petr Viktorin
7d24ea9db3
gh-121277: Allow `.. versionadded:: next` in docs (GH-121278)
...
Make `versionchanged:: next`` expand to current (unreleased) version.
When a new CPython release is cut, the release manager will replace
all such occurences of "next" with the just-released version.
(See the issue for release-tools and devguide PRs.)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-09-25 23:30:40 +02:00
Tomas R
21d2a9ab2f
gh-116022: Improve `repr()` of AST nodes ( #117046 )
...
Co-authored-by: AN Long <aisk@users.noreply.github.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-09-18 10:28:22 -07:00
Rafael Fontenelle
33eeccf6d4
Use pep role instead of url ( #121611 )
2024-09-17 16:02:14 +03:00
Wei-Hsiang (Matt) Wang
103a0470e3
gh-123492: Remove unnecessary `:func:` parentheses ( #123493 )
2024-08-30 14:34:09 +03:00
Pablo Galindo Salgado
db2d8b6db1
gh-122300: Preserve AST nodes for format specifiers with single elements ( #122308 )
2024-07-26 16:29:41 +00:00
Ville Skyttä
bc264eac3a
Docs: spelling and grammar fixes ( #122084 )
...
Corrected some grammar and spelling issues in documentation.
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-07-22 09:14:25 +08:00
Pablo Galindo Salgado
c46d64e0ef
gh-121130: Fix f-string format specifiers with debug expressions ( #121150 )
2024-07-16 19:57:22 +01:00
Jelle Zijlstra
9e0b11eb21
annotations: expand documentation on "simple" assignment targets ( #120535 )
...
This behavior is rather surprising and it was not clearly specified.
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-06-15 15:18:16 +00:00
Batuhan Taskaya
d065edfb66
gh-60191: Implement ast.compare ( #19211 )
...
* bpo-15987: Implement ast.compare
Add a compare() function that compares two ASTs for structural equality. There are two set of attributes on AST node objects, fields and attributes. The fields are always compared, since they represent the actual structure of the code. The attributes can be optionally be included in the comparison. Attributes capture things like line numbers of column offsets, so comparing them involves test whether the layout of the program text is the same. Since whitespace seems inessential for comparing ASTs, the default is to compare fields but not attributes.
ASTs are just Python objects that can be modified in arbitrary ways. The API for ASTs is under-specified in the presence of user modifications to objects. The comparison respects modifications to fields and attributes, and to _fields and _attributes attributes. A user could create obviously malformed objects, and the code will probably fail with an AttributeError when that happens. (For example, adding "spam" to _fields but not adding a "spam" attribute to the object.)
Co-authored-by: Jeremy Hylton <jeremy@alum.mit.edu>
2024-05-22 01:39:26 +00:00
Jelle Zijlstra
68fbc00dc8
gh-118851: Default ctx arguments to AST constructors to Load() ( #118854 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-05-09 15:30:14 -07:00
Ned Batchelder
bcb435ee8f
docs: module page titles should not start with a link to themselves ( #117099 )
2024-05-08 20:34:40 +01:00
Jelle Zijlstra
e0422198fb
gh-117486: Improve behavior for user-defined AST subclasses ( #118212 )
...
Now, such classes will no longer require changes in Python 3.13 in the normal case.
The test suite for robotframework passes with no DeprecationWarnings under this PR.
I also added a new DeprecationWarning for the case where `_field_types` exists
but is incomplete, since that seems likely to indicate a user mistake.
2024-05-06 15:57:27 -07:00
Jelle Zijlstra
ca269e58c2
gh-116126: Implement PEP 696 ( #116129 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2024-05-03 06:17:32 -07:00
Nikita Sobolev
692e902c74
gh-116023: Add `show_empty=False` to `ast.dump` ( #116037 )
...
Co-authored-by: Carl Meyer <carl@oddbird.net>
2024-04-24 11:02:38 +03:00
Nikita Sobolev
2aa11cca11
gh-118100: Improve links in `ast.rst` ( #118101 )
...
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-04-19 21:25:54 +03:00
Shantanu
c04a981ff4
Fix rendering of null character in ast.rst ( #116080 )
2024-02-29 14:09:06 -08:00
Shantanu
bea2795be2
gh-115881: Document feature_version limitations ( #115980 )
2024-02-29 11:09:09 +00:00
Jelle Zijlstra
ed4dfd8825
gh-105858: Improve AST node constructors ( #105880 )
...
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>
2024-02-27 18:13:03 -08:00
Hugo van Kemenade
76bef3832b
gh-101100: Fix Sphinx warnings in `library/ast.rst` ( #113289 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-12-19 15:44:57 +00:00
dreamflow
59f0766ae5
gh-108113: [docs] mention PyCF_OPTIMIZED_AST in ast Compiler Flags ( #113241 )
2023-12-18 16:14:15 +00:00
Adam Turner
77e9aae383
Docs: Avoid the deprecated ``.. cmdoption::`` directive ( #110292 )
2023-10-03 17:38:12 +00:00
Shantanu
74fc96bc60
Add version directives to ast docs ( #108788 )
2023-09-07 11:34:18 -07:00
Alex Povel
c1e2f3b2f7
`ast` docs: Fix incorrect link on `keyword` ( #108728 )
...
In two places, Sphinx was erroneously adding links to the `keyword` module instead of the `ast.keyword` class
2023-08-31 23:17:32 +01:00
Irit Katriel
10a91d7e98
gh-108113: Make it possible to create an optimized AST ( #108154 )
2023-08-21 16:31:30 +00:00
Pablo Galindo Salgado
da8f87b7ea
gh-107015: Remove async_hacks from the tokenizer ( #107018 )
2023-07-26 16:34:15 +01:00
Nikita Sobolev
33608fd67d
gh-92788: Add docs for `ast.Module`, `ast.Expression`, and others ( #101055 )
2023-06-27 06:43:49 -07:00
Alex Waygood
c8c1e73d95
gh-103921: Minor PEP-695 fixes to the `ast` module docs ( #105093 )
2023-05-30 09:19:10 -07:00
Jelle Zijlstra
060277d96b
gh-103921: Document PEP 695 ( #104642 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-05-26 10:48:17 -07:00
Shaygan Hooshyari
61c1d6760f
gh-104984: remove kwargs and starargs from Call & ClassDef ( #104986 )
...
These fields are removed in 025e9ebd0a
2023-05-26 10:43:58 -06:00
Jelle Zijlstra
ba73473f4c
gh-104799: Move location of type_params AST fields ( #104828 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-05-26 05:54:37 -07:00
Jelle Zijlstra
a5f244d627
gh-104656: Rename typeparams AST node to type_params ( #104657 )
2023-05-21 21:25:09 -07:00
Jelle Zijlstra
24d8b88420
gh-103763: Implement PEP 695 ( #103764 )
...
This implements PEP 695, Type Parameter Syntax. It adds support for:
- Generic functions (def func[T](): ...)
- Generic classes (class X[T](): ...)
- Type aliases (type X = ...)
- New scoping when the new syntax is used within a class body
- Compiler and interpreter changes to support the new syntax and scoping rules
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: Eric Traut <eric@traut.com>
Co-authored-by: Larry Hastings <larry@hastings.org>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-05-15 20:36:23 -07:00
Gregory P. Smith
8baef8ae36
gh-95588: Drop the safety claim from `ast.literal_eval` docs. ( #95919 )
...
It was never really safe and this claim conflicts directly with the big warning in the docs about it being able to crash the interpreter.
2022-10-01 17:55:40 -07:00
Serhiy Storchaka
dd53b79de0
gh-96959: Update more HTTP links (GH-97536)
...
Use HTTPS for documents which are available by both HTTP and HTTPS
links, but there is no redirection from HTTP to HTTPS or vice versa.
2022-09-27 14:08:11 +03:00
Terry Jan Reedy
a25a803c4c
Fix incorrect double indent in ast doc ( #94976 )
...
Warning directive indent was 4 rather than 3 spaces.
2022-07-18 13:24:18 -04:00
Terry Jan Reedy
7b617be4ab
In ast doc, update 'below' to 'above' ( #94967 )
...
The included asdl file was moved from 'below' to 'above' in 3.9.
2022-07-18 12:38:52 -04:00
anilbey
16b6e14cc2
gh-94698: add Subscript and Attribute targets to ast.for documentation (GH-94901)
...
### Summary
Add Attribute and Subscript as possible targets for the "ast for loop documentation".
Automerge-Triggered-By: GH:isidentical
2022-07-16 04:26:43 -07:00
Hugo van Kemenade
6881ea936e
bpo-47126: Update to canonical PEP URLs specified by PEP 676 (GH-32124)
2022-03-30 12:00:27 +01:00
Irit Katriel
d60457a667
bpo-45292: [PEP-654] add except* (GH-29581)
2021-12-14 16:48:15 +00:00
Christian Clauss
241bda785a
[doc] Fix typos found using codespell (GH-28744)
...
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-10-05 23:48:44 +02:00
Raymond Hettinger
db91b058d5
bpo-45346: Keep docs consistent regarding true and false values (GH-28697)
2021-10-02 13:48:08 -05:00
Pablo Galindo Salgado
e6d05a4092
bpo-30637: Improve the docs of ast.parse regarding differences with compile() (GH-28459)
2021-09-19 23:44:51 +01:00
Noah Kantrowitz
be42c06bb0
Update URLs in comments and metadata to use HTTPS (GH-27458)
2021-07-30 15:54:46 +02:00
HaeckelK
6b61d74a3b
Fix typo in ast.rst (GH-27449)
...
Co-authored-by: HaeckelK <haeckelk.github@gmail.com>
2021-07-29 19:15:35 +02:00
Nick Coghlan
1e7b858575
bpo-43892: Make match patterns explicit in the AST (GH-25585)
...
Co-authored-by: Brandt Bucher <brandtbucher@gmail.com>
2021-04-28 22:58:44 -07:00
Zackery Spytz
f2b45367f1
Fix some minor errors in the docs (GH-24834)
2021-03-13 17:00:28 -08:00
Adrian Freund
0a30f0e934
Fix error in documentation for ast.match_case (GH-24807)
2021-03-10 07:58:31 -08:00