Skip to content

Commit 3199a97

Browse files
freeze encodings
1 parent 0ac5372 commit 3199a97

File tree

5 files changed

+72
-4
lines changed

5 files changed

+72
-4
lines changed

Makefile.pre.in

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -994,6 +994,10 @@ FROZEN_FILES_IN = \
994994
Lib/zipimport.py \
995995
Lib/abc.py \
996996
Lib/codecs.py \
997+
Lib/encodings/__init__.py \
998+
Lib/encodings/aliases.py \
999+
Lib/encodings/ascii.py \
1000+
Lib/encodings/utf_8.py \
9971001
Lib/io.py \
9981002
Lib/_collections_abc.py \
9991003
Lib/_sitebuiltins.py \
@@ -1019,6 +1023,10 @@ FROZEN_FILES_OUT = \
10191023
Python/frozen_modules/zipimport.h \
10201024
Python/frozen_modules/abc.h \
10211025
Python/frozen_modules/codecs.h \
1026+
Python/frozen_modules/encodings.h \
1027+
Python/frozen_modules/encodings.aliases.h \
1028+
Python/frozen_modules/encodings.ascii.h \
1029+
Python/frozen_modules/encodings.utf_8.h \
10221030
Python/frozen_modules/io.h \
10231031
Python/frozen_modules/_collections_abc.h \
10241032
Python/frozen_modules/_sitebuiltins.h \
@@ -1067,6 +1075,18 @@ Python/frozen_modules/abc.h: Lib/abc.py $(FREEZE_MODULE_DEPS)
10671075
Python/frozen_modules/codecs.h: Lib/codecs.py $(FREEZE_MODULE_DEPS)
10681076
$(FREEZE_MODULE) codecs $(srcdir)/Lib/codecs.py Python/frozen_modules/codecs.h
10691077

1078+
Python/frozen_modules/encodings.h: Lib/encodings/__init__.py $(FREEZE_MODULE_DEPS)
1079+
$(FREEZE_MODULE) encodings $(srcdir)/Lib/encodings/__init__.py Python/frozen_modules/encodings.h
1080+
1081+
Python/frozen_modules/encodings.aliases.h: Lib/encodings/aliases.py $(FREEZE_MODULE_DEPS)
1082+
$(FREEZE_MODULE) encodings.aliases $(srcdir)/Lib/encodings/aliases.py Python/frozen_modules/encodings.aliases.h
1083+
1084+
Python/frozen_modules/encodings.ascii.h: Lib/encodings/ascii.py $(FREEZE_MODULE_DEPS)
1085+
$(FREEZE_MODULE) encodings.ascii $(srcdir)/Lib/encodings/ascii.py Python/frozen_modules/encodings.ascii.h
1086+
1087+
Python/frozen_modules/encodings.utf_8.h: Lib/encodings/utf_8.py $(FREEZE_MODULE_DEPS)
1088+
$(FREEZE_MODULE) encodings.utf_8 $(srcdir)/Lib/encodings/utf_8.py Python/frozen_modules/encodings.utf_8.h
1089+
10701090
Python/frozen_modules/io.h: Lib/io.py $(FREEZE_MODULE_DEPS)
10711091
$(FREEZE_MODULE) io $(srcdir)/Lib/io.py Python/frozen_modules/io.h
10721092

@@ -1146,6 +1166,10 @@ Python/deepfreeze/deepfreeze.c: $(DEEPFREEZE_DEPS)
11461166
Python/frozen_modules/zipimport.h:zipimport \
11471167
Python/frozen_modules/abc.h:abc \
11481168
Python/frozen_modules/codecs.h:codecs \
1169+
Python/frozen_modules/encodings.h:encodings \
1170+
Python/frozen_modules/encodings.aliases.h:encodings.aliases \
1171+
Python/frozen_modules/encodings.ascii.h:encodings.ascii \
1172+
Python/frozen_modules/encodings.utf_8.h:encodings.utf_8 \
11491173
Python/frozen_modules/io.h:io \
11501174
Python/frozen_modules/_collections_abc.h:_collections_abc \
11511175
Python/frozen_modules/_sitebuiltins.h:_sitebuiltins \

PCbuild/_freeze_module.vcxproj

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,26 @@
262262
<IntFile>$(IntDir)codecs.g.h</IntFile>
263263
<OutFile>$(PySourcePath)Python\frozen_modules\codecs.h</OutFile>
264264
</None>
265+
<None Include="..\Lib\encodings\__init__.py">
266+
<ModName>encodings</ModName>
267+
<IntFile>$(IntDir)encodings.g.h</IntFile>
268+
<OutFile>$(PySourcePath)Python\frozen_modules\encodings.h</OutFile>
269+
</None>
270+
<None Include="..\Lib\encodings\aliases.py">
271+
<ModName>encodings.aliases</ModName>
272+
<IntFile>$(IntDir)encodings.aliases.g.h</IntFile>
273+
<OutFile>$(PySourcePath)Python\frozen_modules\encodings.aliases.h</OutFile>
274+
</None>
275+
<None Include="..\Lib\encodings\ascii.py">
276+
<ModName>encodings.ascii</ModName>
277+
<IntFile>$(IntDir)encodings.ascii.g.h</IntFile>
278+
<OutFile>$(PySourcePath)Python\frozen_modules\encodings.ascii.h</OutFile>
279+
</None>
280+
<None Include="..\Lib\encodings\utf_8.py">
281+
<ModName>encodings.utf_8</ModName>
282+
<IntFile>$(IntDir)encodings.utf_8.g.h</IntFile>
283+
<OutFile>$(PySourcePath)Python\frozen_modules\encodings.utf_8.h</OutFile>
284+
</None>
265285
<None Include="..\Lib\io.py">
266286
<ModName>io</ModName>
267287
<IntFile>$(IntDir)io.g.h</IntFile>
@@ -400,6 +420,10 @@
400420
"$(PySourcePath)Python\frozen_modules\zipimport.h:zipimport" ^
401421
"$(PySourcePath)Python\frozen_modules\abc.h:abc" ^
402422
"$(PySourcePath)Python\frozen_modules\codecs.h:codecs" ^
423+
"$(PySourcePath)Python\frozen_modules\encodings.h:encodings" ^
424+
"$(PySourcePath)Python\frozen_modules\encodings.aliases.h:encodings.aliases" ^
425+
"$(PySourcePath)Python\frozen_modules\encodings.ascii.h:encodings.ascii" ^
426+
"$(PySourcePath)Python\frozen_modules\encodings.utf_8.h:encodings.utf_8" ^
403427
"$(PySourcePath)Python\frozen_modules\io.h:io" ^
404428
"$(PySourcePath)Python\frozen_modules\_collections_abc.h:_collections_abc" ^
405429
"$(PySourcePath)Python\frozen_modules\_sitebuiltins.h:_sitebuiltins" ^

PCbuild/_freeze_module.vcxproj.filters

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,18 @@
420420
<None Include="..\Lib\codecs.py">
421421
<Filter>Python Files</Filter>
422422
</None>
423+
<None Include="..\Lib\encodings\__init__.py">
424+
<Filter>Python Files</Filter>
425+
</None>
426+
<None Include="..\Lib\encodings\aliases.py">
427+
<Filter>Python Files</Filter>
428+
</None>
429+
<None Include="..\Lib\encodings\ascii.py">
430+
<Filter>Python Files</Filter>
431+
</None>
432+
<None Include="..\Lib\encodings\utf_8.py">
433+
<Filter>Python Files</Filter>
434+
</None>
423435
<None Include="..\Lib\io.py">
424436
<Filter>Python Files</Filter>
425437
</None>

Python/frozen.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ extern PyObject *_Py_get_importlib__bootstrap_external_toplevel(void);
4949
extern PyObject *_Py_get_zipimport_toplevel(void);
5050
extern PyObject *_Py_get_abc_toplevel(void);
5151
extern PyObject *_Py_get_codecs_toplevel(void);
52+
extern PyObject *_Py_get_encodings_toplevel(void);
53+
extern PyObject *_Py_get_encodings_aliases_toplevel(void);
54+
extern PyObject *_Py_get_encodings_ascii_toplevel(void);
55+
extern PyObject *_Py_get_encodings_utf_8_toplevel(void);
5256
extern PyObject *_Py_get_io_toplevel(void);
5357
extern PyObject *_Py_get__collections_abc_toplevel(void);
5458
extern PyObject *_Py_get__sitebuiltins_toplevel(void);
@@ -85,6 +89,10 @@ static const struct _frozen stdlib_modules[] = {
8589
/* stdlib - startup, without site (python -S) */
8690
{"abc", NULL, 0, false, GET_CODE(abc)},
8791
{"codecs", NULL, 0, false, GET_CODE(codecs)},
92+
{"encodings", NULL, 0, true, GET_CODE(encodings)},
93+
{"encodings.aliases", NULL, 0, false, GET_CODE(encodings_aliases)},
94+
{"encodings.ascii", NULL, 0, false, GET_CODE(encodings_ascii)},
95+
{"encodings.utf_8", NULL, 0, false, GET_CODE(encodings_utf_8)},
8896
{"io", NULL, 0, false, GET_CODE(io)},
8997

9098
/* stdlib - startup, with site */

Tools/scripts/freeze_modules.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@
4949
('stdlib - startup, without site (python -S)', [
5050
'abc',
5151
'codecs',
52-
# For now we do not freeze the encodings, due # to the noise all
53-
# those extra modules add to the text printed during the build.
54-
# (See https://github.com/python/cpython/pull/28398#pullrequestreview-756856469.)
55-
#'<encodings.*>',
52+
'<encodings>', # this is equivalent to encodings.__init__
53+
'encodings.aliases',
54+
'encodings.ascii',
55+
'encodings.utf_8',
5656
'io',
5757
]),
5858
('stdlib - startup, with site', [

0 commit comments

Comments
 (0)