I'm a bit confused of the conclusion at https://github.com/tinylibs/tinyexec/issues/32. Isn't that the `exec()` should throw on non-zero exit code by default? I just noticed this bug in Astro and for all its usage it should be throwing on error by default. It feels like the more sensible default to me.