aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Tools/scripts/generate_stdlib_module_names.py
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2021-09-13 16:18:37 -0600
committerGitHub <noreply@github.com>2021-09-13 16:18:37 -0600
commita2d8c4b81b8e68e2ffe10945f7ca69174c14e52a (patch)
treec46c7aead37c0a393f13ef0fb8bb97ea9a9836c6 /Tools/scripts/generate_stdlib_module_names.py
parent1fc41ae8709e20d741bd86c2345173688a5e84b0 (diff)
downloadcpython-a2d8c4b81b8e68e2ffe10945f7ca69174c14e52a.tar.gz
cpython-a2d8c4b81b8e68e2ffe10945f7ca69174c14e52a.zip
bpo-45019: Do some cleanup related to frozen modules. (gh-28319)
There are a few things I missed in gh-27980. This is a follow-up that will make subsequent PRs cleaner. It includes fixes to tests and tools that reference the frozen modules. https://bugs.python.org/issue45019
Diffstat (limited to 'Tools/scripts/generate_stdlib_module_names.py')
-rw-r--r--Tools/scripts/generate_stdlib_module_names.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/Tools/scripts/generate_stdlib_module_names.py b/Tools/scripts/generate_stdlib_module_names.py
index 716a6d4b7a0..325ae202b1d 100644
--- a/Tools/scripts/generate_stdlib_module_names.py
+++ b/Tools/scripts/generate_stdlib_module_names.py
@@ -117,9 +117,19 @@ def list_frozen(names):
cmd = ' '.join(args)
print(f"{cmd} failed with exitcode {exitcode}")
sys.exit(exitcode)
+ submodules = set()
for line in proc.stdout.splitlines():
name = line.strip()
- names.add(name)
+ if '.' in name:
+ submodules.add(name)
+ else:
+ names.add(name)
+ # Make sure all frozen submodules have a known parent.
+ for name in list(submodules):
+ if name.partition('.')[0] in names:
+ submodules.remove(name)
+ if submodules:
+ raise Exception(f'unexpected frozen submodules: {sorted(submodules)}')
def list_modules():