Added -S flag to umask
Reset optind to 0

POSIX states that setting this to 0 is unspecified however setting it
to 1 is causing issues on certain versions of glibc.
Fix error handling in basic frontend
Very basic umask implementation

Doesn't yet support the -S flag, or symbolic modes, but does allow for
getting and setting the umask.
Fix exit status
Source /etc/profile
Source ENV, only source ~/.profile if login shell

Fixes https://github.com/emersion/mrsh/issues/62
builtin: fix memory leaks in dot and eval
parser: fix io_number

Fixes https://github.com/emersion/mrsh/issues/64
readme: add link to website, improve refs
ci: fix freebsd build
Add editline support
Add meson option for readline
Move frontend_* -> frontend/*
42c50b20 — Jason Valencia 1 year, 10 months ago
Drop minimum meson version to 0.37.1

The minimum required meson version is 0.43.0, but no features are
actually being used that are incompatible with 0.37.1 (the latest
version shipped by Debian).
Remove context.{stdin,stdout}_fileno

These we too fragile, nesting wasn't properly supported.

Instead, we now use dup() to setup and restore stdin and stdout in pipelines.
Add support for IO redirections in builtins
builtin: implement `unset -f`
Fix state->args not set
Fix continuation lines in interactive mode
parser: add mrsh_parser_from_buffer

This allows the user to share a buffer with the parser. This is especially
useful when managing manually how input lines are read (e.g. for interactive
shells). Before each mrsh_parse_line call, the user can fill the shared buffer
with the (maybe incomplete) input.

Fixes https://github.com/emersion/mrsh/issues/59