From 14177128126f688856099c8ec138ac4693a8cf85 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 25 Jan 2023 09:28:14 -0800 Subject: Add advice how to freeze fewer modules (#101298) (And fix a bug that only occurs when you follow the advice.) --- Tools/build/freeze_modules.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Tools/build/freeze_modules.py b/Tools/build/freeze_modules.py index 810224b..ee4dd2f 100644 --- a/Tools/build/freeze_modules.py +++ b/Tools/build/freeze_modules.py @@ -32,6 +32,9 @@ PCBUILD_PYTHONCORE = os.path.join(ROOT_DIR, 'PCbuild', 'pythoncore.vcxproj') OS_PATH = 'ntpath' if os.name == 'nt' else 'posixpath' # These are modules that get frozen. +# If you're debugging new bytecode instructions, +# you can delete all sections except 'import system'. +# This also speeds up building somewhat. TESTS_SECTION = 'Test module' FROZEN = [ # See parse_frozen_spec() for the format. @@ -45,6 +48,7 @@ FROZEN = [ # on a builtin zip file instead of a filesystem. 'zipimport', ]), + # (You can delete entries from here down to the end of the list.) ('stdlib - startup, without site (python -S)', [ 'abc', 'codecs', @@ -80,6 +84,7 @@ FROZEN = [ '<__phello__.**.*>', f'frozen_only : __hello_only__ = {FROZEN_ONLY}', ]), + # (End of stuff you could delete.) ] BOOTSTRAP = { 'importlib._bootstrap', @@ -520,7 +525,7 @@ def regen_frozen(modules, frozen_modules: bool): for lines in (bootstraplines, stdliblines, testlines): # TODO: Is this necessary any more? - if not lines[0]: + if lines and not lines[0]: del lines[0] for i, line in enumerate(lines): if line: -- cgit v0.12