-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Observe the SHELL environment variable #54
Comments
The default shell used by GNU Make is |
I didn't know this:
https://www.gnu.org/software/make/manual/html_node/Choosing-the-Shell.html So |
The Python example would give almost-free SnakeMake compatibility (modulo one parser). This, with a couple other features like provenance, seems noteworthy enough for publication (to me at least), which is a good driver of issue prioritization IMO. So this issue just increased in appeal/priority 👍 |
Cool idea! |
Changing the shell to either
bash -o pipefail
orzsh -o pipefail
is useful to catch a failed intermediate stage of a pipe. For example by defaultcat non-existant-file | gzip >$@
is successful because thegzip
is succesful, even thoughcat
failed. Setting-o pipefail
causes this pipe to fail correctly.It's also useful to use
zsh
to time every command that's run bybiomake
like so:Usually
SHELL
is used to changed the shell from the default/bin/sh
to sayzsh -o pipefail
, but here's a fun example changing it topython
.The text was updated successfully, but these errors were encountered: