We added the install_only_stripped runtimes to the default set of runtimes and made using them an opt-in choice with a flag.
Using them by default was brought up, but the discussion fizzled, so it was left as opt-in. For reference, a stripped runtime is about 26MB. Unstripped varies, but the largest is the 3.15 free threaded ones, which are 77MB.
Ignas suggested to have -c opt use install_only_stripped. I'm generally +1 on this.
My main reservation with enabling it by default is that tests benefit from having debug symbols, especially for projects that use a lot of C++ code. If we could use stripped runtimes for binaries, but not tests, when in opt mode, that'd be ideal, I think.
Maybe, at the least, we have py_zipapp default to stripped runtimes when in opt mode? That would help address the originating issue of zipapps being too large.
I'll suggest: enable it for exec mode by default. Exec tools are unlikely to need debug symbols and would benefit from a smaller runtime.
cc @gfrankliu @aignas
We added the install_only_stripped runtimes to the default set of runtimes and made using them an opt-in choice with a flag.
Using them by default was brought up, but the discussion fizzled, so it was left as opt-in. For reference, a stripped runtime is about 26MB. Unstripped varies, but the largest is the 3.15 free threaded ones, which are 77MB.
Ignas suggested to have
-c optuse install_only_stripped. I'm generally +1 on this.My main reservation with enabling it by default is that tests benefit from having debug symbols, especially for projects that use a lot of C++ code. If we could use stripped runtimes for binaries, but not tests, when in opt mode, that'd be ideal, I think.
Maybe, at the least, we have py_zipapp default to stripped runtimes when in opt mode? That would help address the originating issue of zipapps being too large.
I'll suggest: enable it for exec mode by default. Exec tools are unlikely to need debug symbols and would benefit from a smaller runtime.
cc @gfrankliu @aignas