From ac2fff4c0e197fe3a01b3029d315f1645815eee0 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Tue, 24 Mar 2026 02:37:09 +0100 Subject: [PATCH] [3.14] gh-140196: Added constructor behavior changes in ast.rst for python 3.13 (GH-140243) (GH-146351) MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit (cherry picked from commit fae5761a762a587b48430cbcd6e1886034ae8130) Co-authored-by: Parman Mohammadalizadeh Co-authored-by: Łukasz Langa --- Doc/library/ast.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Doc/library/ast.rst b/Doc/library/ast.rst index d2bff5735883..31c406c62b17 100644 --- a/Doc/library/ast.rst +++ b/Doc/library/ast.rst @@ -134,6 +134,14 @@ Node classes Simple indices are represented by their value, extended slices are represented as tuples. +.. versionchanged:: 3.13 + + AST node constructors were changed to provide sensible defaults for omitted + fields: optional fields now default to ``None``, list fields default to an + empty list, and fields of type :class:`!ast.expr_context` default to + :class:`Load() `. Previously, omitted attributes would not exist on constructed + nodes (accessing them raised :exc:`AttributeError`). + .. versionchanged:: 3.14 The :meth:`~object.__repr__` output of :class:`~ast.AST` nodes includes -- 2.47.3