https://github.com/python/cpython/commit/07a39ca07e4cbacb2941d22c9901047df292059b
commit: 07a39ca07e4cbacb2941d22c9901047df292059b
branch: main
author: Petr Viktorin <[email protected]>
committer: hugovk <[email protected]>
date: 2026-03-09T18:18:14Z
summary:
gh-145278: Revert "freeze encodings (partially) and linecache (#145279)"
(#145689)
files:
D
Misc/NEWS.d/next/Core_and_Builtins/2026-02-26-21-22-34.gh-issue-145278.DHkYqt.rst
M Makefile.pre.in
M PCbuild/_freeze_module.vcxproj
M PCbuild/_freeze_module.vcxproj.filters
M Python/frozen.c
M Tools/build/freeze_modules.py
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 4c2426ed283d43..120a6add38507f 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1729,9 +1729,6 @@ FROZEN_FILES_IN = \
Lib/zipimport.py \
Lib/abc.py \
Lib/codecs.py \
- Lib/encodings/__init__.py \
- Lib/encodings/aliases.py \
- Lib/encodings/utf_8.py \
Lib/io.py \
Lib/_collections_abc.py \
Lib/_sitebuiltins.py \
@@ -1741,7 +1738,6 @@ FROZEN_FILES_IN = \
Lib/os.py \
Lib/site.py \
Lib/stat.py \
- Lib/linecache.py \
Lib/importlib/util.py \
Lib/importlib/machinery.py \
Lib/runpy.py \
@@ -1758,9 +1754,6 @@ FROZEN_FILES_OUT = \
Python/frozen_modules/zipimport.h \
Python/frozen_modules/abc.h \
Python/frozen_modules/codecs.h \
- Python/frozen_modules/encodings.h \
- Python/frozen_modules/encodings.aliases.h \
- Python/frozen_modules/encodings.utf_8.h \
Python/frozen_modules/io.h \
Python/frozen_modules/_collections_abc.h \
Python/frozen_modules/_sitebuiltins.h \
@@ -1770,7 +1763,6 @@ FROZEN_FILES_OUT = \
Python/frozen_modules/os.h \
Python/frozen_modules/site.h \
Python/frozen_modules/stat.h \
- Python/frozen_modules/linecache.h \
Python/frozen_modules/importlib.util.h \
Python/frozen_modules/importlib.machinery.h \
Python/frozen_modules/runpy.h \
@@ -1810,15 +1802,6 @@ Python/frozen_modules/abc.h: Lib/abc.py
$(FREEZE_MODULE_DEPS)
Python/frozen_modules/codecs.h: Lib/codecs.py $(FREEZE_MODULE_DEPS)
$(FREEZE_MODULE) codecs $(srcdir)/Lib/codecs.py
Python/frozen_modules/codecs.h
-Python/frozen_modules/encodings.h: Lib/encodings/__init__.py
$(FREEZE_MODULE_DEPS)
- $(FREEZE_MODULE) encodings $(srcdir)/Lib/encodings/__init__.py
Python/frozen_modules/encodings.h
-
-Python/frozen_modules/encodings.aliases.h: Lib/encodings/aliases.py
$(FREEZE_MODULE_DEPS)
- $(FREEZE_MODULE) encodings.aliases $(srcdir)/Lib/encodings/aliases.py
Python/frozen_modules/encodings.aliases.h
-
-Python/frozen_modules/encodings.utf_8.h: Lib/encodings/utf_8.py
$(FREEZE_MODULE_DEPS)
- $(FREEZE_MODULE) encodings.utf_8 $(srcdir)/Lib/encodings/utf_8.py
Python/frozen_modules/encodings.utf_8.h
-
Python/frozen_modules/io.h: Lib/io.py $(FREEZE_MODULE_DEPS)
$(FREEZE_MODULE) io $(srcdir)/Lib/io.py Python/frozen_modules/io.h
@@ -1846,9 +1829,6 @@ Python/frozen_modules/site.h: Lib/site.py
$(FREEZE_MODULE_DEPS)
Python/frozen_modules/stat.h: Lib/stat.py $(FREEZE_MODULE_DEPS)
$(FREEZE_MODULE) stat $(srcdir)/Lib/stat.py Python/frozen_modules/stat.h
-Python/frozen_modules/linecache.h: Lib/linecache.py $(FREEZE_MODULE_DEPS)
- $(FREEZE_MODULE) linecache $(srcdir)/Lib/linecache.py
Python/frozen_modules/linecache.h
-
Python/frozen_modules/importlib.util.h: Lib/importlib/util.py
$(FREEZE_MODULE_DEPS)
$(FREEZE_MODULE) importlib.util $(srcdir)/Lib/importlib/util.py
Python/frozen_modules/importlib.util.h
diff --git
a/Misc/NEWS.d/next/Core_and_Builtins/2026-02-26-21-22-34.gh-issue-145278.DHkYqt.rst
b/Misc/NEWS.d/next/Core_and_Builtins/2026-02-26-21-22-34.gh-issue-145278.DHkYqt.rst
deleted file mode 100644
index 6b6a9eb9813663..00000000000000
---
a/Misc/NEWS.d/next/Core_and_Builtins/2026-02-26-21-22-34.gh-issue-145278.DHkYqt.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-The :mod:`encodings` is now partially frozen, including
-the ``aliases`` and ``utf_8`` submodules.
-
-The :mod:`linecache` is now frozen.
diff --git a/PCbuild/_freeze_module.vcxproj b/PCbuild/_freeze_module.vcxproj
index 40946cafd16b75..cb806459596084 100644
--- a/PCbuild/_freeze_module.vcxproj
+++ b/PCbuild/_freeze_module.vcxproj
@@ -310,21 +310,6 @@
<IntFile>$(IntDir)codecs.g.h</IntFile>
<OutFile>$(GeneratedFrozenModulesDir)Python\frozen_modules\codecs.h</OutFile>
</None>
- <None Include="..\Lib\encodings\__init__.py">
- <ModName>encodings</ModName>
- <IntFile>$(IntDir)encodings.g.h</IntFile>
-
<OutFile>$(GeneratedFrozenModulesDir)Python\frozen_modules\encodings.h</OutFile>
- </None>
- <None Include="..\Lib\encodings\aliases.py">
- <ModName>encodings.aliases</ModName>
- <IntFile>$(IntDir)encodings.aliases.g.h</IntFile>
-
<OutFile>$(GeneratedFrozenModulesDir)Python\frozen_modules\encodings.aliases.h</OutFile>
- </None>
- <None Include="..\Lib\encodings\utf_8.py">
- <ModName>encodings.utf_8</ModName>
- <IntFile>$(IntDir)encodings.utf_8.g.h</IntFile>
-
<OutFile>$(GeneratedFrozenModulesDir)Python\frozen_modules\encodings.utf_8.h</OutFile>
- </None>
<None Include="..\Lib\io.py">
<ModName>io</ModName>
<IntFile>$(IntDir)io.g.h</IntFile>
@@ -370,11 +355,6 @@
<IntFile>$(IntDir)stat.g.h</IntFile>
<OutFile>$(GeneratedFrozenModulesDir)Python\frozen_modules\stat.h</OutFile>
</None>
- <None Include="..\Lib\linecache.py">
- <ModName>linecache</ModName>
- <IntFile>$(IntDir)linecache.g.h</IntFile>
-
<OutFile>$(GeneratedFrozenModulesDir)Python\frozen_modules\linecache.h</OutFile>
- </None>
<None Include="..\Lib\importlib\util.py">
<ModName>importlib.util</ModName>
<IntFile>$(IntDir)importlib.util.g.h</IntFile>
diff --git a/PCbuild/_freeze_module.vcxproj.filters
b/PCbuild/_freeze_module.vcxproj.filters
index a0e36a4c526ede..6dcf0e8712903a 100644
--- a/PCbuild/_freeze_module.vcxproj.filters
+++ b/PCbuild/_freeze_module.vcxproj.filters
@@ -537,15 +537,6 @@
<None Include="..\Lib\codecs.py">
<Filter>Python Files</Filter>
</None>
- <None Include="..\Lib\encodings\__init__.py">
- <Filter>Python Files</Filter>
- </None>
- <None Include="..\Lib\encodings\aliases.py">
- <Filter>Python Files</Filter>
- </None>
- <None Include="..\Lib\encodings\utf_8.py">
- <Filter>Python Files</Filter>
- </None>
<None Include="..\Lib\io.py">
<Filter>Python Files</Filter>
</None>
@@ -573,9 +564,6 @@
<None Include="..\Lib\stat.py">
<Filter>Python Files</Filter>
</None>
- <None Include="..\Lib\linecache.py">
- <Filter>Python Files</Filter>
- </None>
<None Include="..\Lib\importlib\util.py">
<Filter>Python Files</Filter>
</None>
diff --git a/Python/frozen.c b/Python/frozen.c
index 72a291d0d43f1d..15d256b6743e0a 100644
--- a/Python/frozen.c
+++ b/Python/frozen.c
@@ -46,9 +46,6 @@
#include "frozen_modules/zipimport.h"
#include "frozen_modules/abc.h"
#include "frozen_modules/codecs.h"
-#include "frozen_modules/encodings.h"
-#include "frozen_modules/encodings.aliases.h"
-#include "frozen_modules/encodings.utf_8.h"
#include "frozen_modules/io.h"
#include "frozen_modules/_collections_abc.h"
#include "frozen_modules/_sitebuiltins.h"
@@ -58,7 +55,6 @@
#include "frozen_modules/os.h"
#include "frozen_modules/site.h"
#include "frozen_modules/stat.h"
-#include "frozen_modules/linecache.h"
#include "frozen_modules/importlib.util.h"
#include "frozen_modules/importlib.machinery.h"
#include "frozen_modules/runpy.h"
@@ -80,9 +76,6 @@ static const struct _frozen stdlib_modules[] = {
/* stdlib - startup, without site (python -S) */
{"abc", _Py_M__abc, (int)sizeof(_Py_M__abc), false},
{"codecs", _Py_M__codecs, (int)sizeof(_Py_M__codecs), false},
- {"encodings", _Py_M__encodings, (int)sizeof(_Py_M__encodings), true},
- {"encodings.aliases", _Py_M__encodings_aliases,
(int)sizeof(_Py_M__encodings_aliases), false},
- {"encodings.utf_8", _Py_M__encodings_utf_8,
(int)sizeof(_Py_M__encodings_utf_8), false},
{"io", _Py_M__io, (int)sizeof(_Py_M__io), false},
/* stdlib - startup, with site */
@@ -95,9 +88,6 @@ static const struct _frozen stdlib_modules[] = {
{"site", _Py_M__site, (int)sizeof(_Py_M__site), false},
{"stat", _Py_M__stat, (int)sizeof(_Py_M__stat), false},
- /* pythonrun - interactive */
- {"linecache", _Py_M__linecache, (int)sizeof(_Py_M__linecache), false},
-
/* runpy - run module with -m */
{"importlib.util", _Py_M__importlib_util,
(int)sizeof(_Py_M__importlib_util), false},
{"importlib.machinery", _Py_M__importlib_machinery,
(int)sizeof(_Py_M__importlib_machinery), false},
diff --git a/Tools/build/freeze_modules.py b/Tools/build/freeze_modules.py
index 0d1f5968d2a9e9..3c43f7e3bbe8ca 100644
--- a/Tools/build/freeze_modules.py
+++ b/Tools/build/freeze_modules.py
@@ -50,9 +50,10 @@
('stdlib - startup, without site (python -S)', [
'abc',
'codecs',
- '<encodings>',
- 'encodings.aliases',
- 'encodings.utf_8',
+ # For now we do not freeze the encodings, due # to the noise all
+ # those extra modules add to the text printed during the build.
+ # (See
https://github.com/python/cpython/pull/28398#pullrequestreview-756856469.)
+ #'<encodings.*>',
'io',
]),
('stdlib - startup, with site', [
@@ -65,9 +66,6 @@
'site',
'stat',
]),
- ('pythonrun - interactive', [
- 'linecache',
- ]),
('runpy - run module with -m', [
"importlib.util",
"importlib.machinery",
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]