From 165ecc95f871fb0a3722862779d71300889af96f Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+aa-turner@users.noreply.github.com> Date: Wed, 2 Apr 2025 18:21:35 +0100 Subject: [PATCH 1/2] gh-118761: Fix star-import of ``ast`` --- Lib/ast.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Lib/ast.py b/Lib/ast.py index 8be4f68455150a..5dbed8c80bce98 100644 --- a/Lib/ast.py +++ b/Lib/ast.py @@ -653,8 +653,9 @@ def main(): main() def __dir__(): - dir_ = {n for n in globals() if not n.startswith('_') and n != 'sys'} - return sorted(dir_ | {'unparse'}) + return {n for n in globals() if not n.startswith('_')} | {'unparse'} + +__all__ = tuple(__dir__() - {'sys'}) # don't include modules in __all__ def __getattr__(name): if name == 'unparse': From 6c3ddda08ecc470c00320cbd5eb0494dd623f6b3 Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+aa-turner@users.noreply.github.com> Date: Wed, 2 Apr 2025 18:24:37 +0100 Subject: [PATCH 2/2] Make sys import local --- Lib/ast.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/ast.py b/Lib/ast.py index 5dbed8c80bce98..79e8d6c9c5226b 100644 --- a/Lib/ast.py +++ b/Lib/ast.py @@ -24,7 +24,6 @@ :copyright: Copyright 2008 by Armin Ronacher. :license: Python License. """ -import sys from _ast import * @@ -623,6 +622,7 @@ class Param(expr_context): def main(): import argparse + import sys parser = argparse.ArgumentParser() parser.add_argument('infile', nargs='?', default='-', @@ -655,7 +655,7 @@ def main(): def __dir__(): return {n for n in globals() if not n.startswith('_')} | {'unparse'} -__all__ = tuple(__dir__() - {'sys'}) # don't include modules in __all__ +__all__ = tuple(__dir__()) def __getattr__(name): if name == 'unparse':