On Mon, 27 Sep 2021 10:51:43 -0600Eric Snow <ericsnowcurrently@gmail.com> wrote:We've frozen most of the stdlib modules imported during "python -c
pass" [1][2], to make startup a bit faster. Import of those modules
is controlled by "-X frozen_modules=[on|off]". Currently it defaults
to "off" but we'd like to default to "on". The blocker is the impact
on contributors. I expect many will make changes to a stdlib module
and then puzzle over why those changes aren't getting used. That's an
annoyance we can avoid, which is the point of this thread.
Possible solutions:
1. always default to "on" (the annoyance for contributors isn't big enough?)
2. default to "on" if it's a PGO build (and "off" otherwise)
3. default to "on" unless running from the source tree
Thoughts?
My vote is on #3 to minimize contributor annoyance andeventual puzzlement.
I agree, but… Most CPython tests are run while running from the source tree, that means that there will have to be testrunner configurations that run with “-X frozen_modules=on”.