Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-01-26 | Implement nommu subshell plumbing, <(command), and fix 2>&1 | Rob Landley | |
2020-01-11 | Fix a duplicate free() and a variable stomp, set s=s to fix "can never be | Rob Landley | |
used uninitalized" warning, move flow control character detection to the right place, change scratch zeroing to the same way main() does it. | |||
2020-01-11 | sh.c: fix memory corruption due to uninitialized sh_function in sh_run | Rich Felker | |
2020-01-08 | Remove lots of debugging dprintf()s. | Rob Landley | |
2020-01-08 | Fix commaless brace discard. | Rob Landley | |
2020-01-08 | Implement quote removal and fix unterminated bracket expansion. | Rob Landley | |
2020-01-07 | Bracket support in progress. Mind the dprintf()s. | Rob Landley | |
2020-01-03 | Add local variables support. | Rob Landley | |
2020-01-03 | Finish cd, make help -ahu unconditional, fix expand memory cleanup path, | Rob Landley | |
set $HOME $PWD and $OLDPWD, fix prompt \w, shuffle some functions around to avoid prototypes, implement tilde expansion, add FORCE_COPY. | |||
2020-01-01 | Factor out array_add(), replace argxtend(). | Rob Landley | |
2020-01-01 | If allocation update is done in blocks, initial allocation has to populate | Rob Landley | |
a full block. | |||
2019-12-31 | toysh: start of <(echo hello) support. | Rob Landley | |
2019-12-29 | Implement single command env assignments (abc=def command) and make debug | Rob Landley | |
output #definable. | |||
2019-12-29 | Debug basic pipe support and I/O flush for builtins. | Rob Landley | |
2019-12-28 | Next round of sh plumbing: more work on redirect and pipe, use CLOEXEC. | Rob Landley | |
2019-12-23 | Toysh passes two tests now! Woo! (Otherwise, does not remotely work right now.) | Rob Landley | |
2019-12-12 | Next round of toysh work, with associated lib plumbing. | Rob Landley | |
2019-09-08 | make "for i in" work. | Rob Landley | |
2019-08-29 | Fix sh handling nested if/else/elif statements ala | Rob Landley | |
if true; then if false; then echo one; elif echo two; then echo three; else echo four; fi; fi | |||
2019-08-18 | Next round of shell plumbing. | Rob Landley | |
You can now run: echo hello; if true; then echo hello; fi; while true; do echo hello; done It's got the start of for loops but needs environment variable resolver to do much with them. | |||
2019-08-09 | Split out run_function() and free_function(), add start of _TOYSH_LOCALS | Rob Landley | |
marshalling for vforked subshells, fix rc returned from run_pipeline for variable assignment. (Well, sort of: X=$(false) still needs rc = 1.) | |||
2019-08-04 | Make "if true; then echo hello; fi" work. More work on redirection. | Rob Landley | |
2019-08-02 | Next round of infrastructure. Start of redirect logic and runtime flow control. | Rob Landley | |
2019-07-22 | Next round of plumbing evolution. Left in the todo and debug code this time. | Rob Landley | |
2019-07-11 | Next sh checkpoint. Not remotely load bearing yet. | Rob Landley | |
2019-06-29 | More toysh flow control plumbing. | Rob Landley | |
2019-06-25 | Start over on toysh. | Rob Landley | |
Basic line continuation logic (to prompt with $PS2). Doesn't use result yet. | |||
2019-01-22 | Fix sigjmp_buf/jmp_buf mismatches. | Elliott Hughes | |
Broke the bionic build: external/toybox/toys/net/netcat.c:188:37: error: incompatible pointer types assigning to 'sigjmp_buf *' (aka 'long (*)[33]') from 'jmp_buf *' (aka 'long (*)[32]') [-Werror,-Wincompatible-pointer-types] if (toys.optflags&FLAG_L) NOEXIT(child = XVFORK()); ^~~~~~~~~~~~~~~~~~~~~~~~ external/toybox/lib/lib.h:375:19: note: expanded from macro 'NOEXIT' #define NOEXIT(x) WOULD_EXIT(_noexit_res, x) ^~~~~~~~~~~~~~~~~~~~~~~~~~ external/toybox/lib/lib.h:367:16: note: expanded from macro 'WOULD_EXIT' toys.rebound = &_noexit; \ ^ ~~~~~~~~ 1 error generated. | |||
2017-05-26 | Be more consistent about periods in help text. | Elliott Hughes | |
2016-04-17 | Dust off toysh, remove ancient config debris, add start of prompt logic. | Rob Landley | |
2015-09-29 | xvfork went away. | Rob Landley | |
2015-09-23 | Add xvfork() as a static inline and use it from various places. | Rob Landley | |
Note: vfork(), like fork(), can return -1 if too many processes, and we should notice and fail loudly. | |||
2015-02-28 | Minor toysh cleanup: remove another unnecessary option. | Rob Landley | |
2014-12-31 | Redo option parsing infrastructure so #define FORCE_FLAGS can unzero flag ↵ | Rob Landley | |
macros for a disabled command (needed when multiple commands share infrastructure with a common set of flags). This means the flag space is no longer packed, but leaves gaps where the zeroes go. (Actual flag bit positions are the same for all configs.) Since the option parsing needs to know where the holes are, the OPTSTR values are now generated as part of flags.h with ascii 1 values for the disabled values. (So generated/oldflags.h went away.) This also means that the option string argument for OLDTOY() went away, it now uses the same arguments as the NEWTOY() it references. | |||
2014-05-26 | Brush the dust off toysh. | Rob Landley | |
Simplify the config micromanagement tangle to just a single "interactive" option. Fix an unused variable and wrong variable type. | |||
2013-02-22 | Move some unfinished commands to the "pending" directory. | Rob Landley | |