You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mitogen/mitogen
Alex Willmer 83c5ab1900 mitogen: Send first stage parameters as argv (796 bytes -> 822)
Benefit: The base64 lump is now static for a given Mitogen version, and the
variable parts are more visible. This will make debugging, auditting, and
allow-listing a bit easier.
Potential benefit: generate the base64 once, at build time or startup. Rather
than once per connection.
Cost: Bootstrap command is 26 bytes longer.

```
➜  mitogen git:(boot-cmd--argv) ✗ ./preamble_size.py
SSH command size: 822
Preamble (mitogen.core + econtext) size: 18230 (17.80KiB)

                        Original           Minimized           Compressed
mitogen.core         152237 148.7KiB  68453 66.8KiB 45.0%  18130 17.7KiB 11.9%
mitogen.parent        98746  96.4KiB  51215 50.0KiB 51.9%  12922 12.6KiB 13.1%
mitogen.fork           8445   8.2KiB   4139  4.0KiB 49.0%   1652  1.6KiB 19.6%
mitogen.ssh           10847  10.6KiB   6913  6.8KiB 63.7%   2102  2.1KiB 19.4%
mitogen.sudo          12089  11.8KiB   5924  5.8KiB 49.0%   2249  2.2KiB 18.6%
mitogen.select        12325  12.0KiB   2929  2.9KiB 23.8%    964  0.9KiB  7.8%
mitogen.service       41581  40.6KiB  22398 21.9KiB 53.9%   5847  5.7KiB 14.1%
mitogen.fakessh       15753  15.4KiB   8135  7.9KiB 51.6%   2672  2.6KiB 17.0%
mitogen.master        52891  51.7KiB  27586 26.9KiB 52.2%   7129  7.0KiB 13.5%
```
2 months ago
..
compat compat: fix Py2.4 SyntaxError 6 years ago
imports Correct mitogen.imports.* licenses 2 months ago
__init__.py Begin 0.3.32dev 2 months ago
buildah.py Remove unused module imports 4 years ago
core.py mitogen: Refactor scan_code_imports() as mitogen.imports.codeobj_imports() 4 months ago
debug.py [stream-refactor] fix flake8 errors 7 years ago
doas.py remove unused imports flagged by lgtm 7 years ago
docker.py Refactor Stream, introduce quasi-asynchronous connect, much more 7 years ago
fakessh.py Cleanup unused and missing imports 2 months ago
fork.py mitogen: Fix BlockingIOError & EAGAIN in subprocess stdio 5 months ago
jail.py Stop using mitogen root logger in more modules, remove unused loggers 6 years ago
kubectl.py Remove unused module imports 4 years ago
lxc.py Remove unused module imports 4 years ago
lxd.py Remove unused module imports 4 years ago
master.py master: Fix LogForwarder in case an own LogRecordFactory is used 2 months ago
minify.py Normalize docstring formatting 7 years ago
os_fork.py mitogen: Fix BlockingIOError & EAGAIN in subprocess stdio 5 months ago
parent.py mitogen: Send first stage parameters as argv (796 bytes -> 822) 2 months ago
podman.py Remove unused module imports 4 years ago
profiler.py Fix stdlib typos that would cause NameError or AttributeError exceptions 4 years ago
select.py Merge devel/290 @ 79b979ec8544ef5d8620c64068d4a42fabf50415 6 years ago
service.py mitogen: Consolidate back compatibility fallbacks and polyfills in mitogen.core 1 year ago
setns.py Refactor Stream, introduce quasi-asynchronous connect, much more 7 years ago
ssh.py Cleanup unused and missing imports 2 months ago
su.py mitogen: Consolidate back compatibility fallbacks and polyfills in mitogen.core 1 year ago
sudo.py reverted autolinted code 6 years ago
unix.py Cleanup unused and missing imports 2 months ago
utils.py mitogen: Consolidate back compatibility fallbacks and polyfills in mitogen.core 1 year ago