Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-11-16 | Factor out do_source(), fpathopen(), and prompt_getline(). | Rob Landley | |
Use 0 optstr prefix, fix bug initializing toys.envc one too low. | |||
2020-10-23 | Fix endless recursion bug on nommu for sh -c 'echo $(echo)' | Rob Landley | |
2020-10-19 | More tests, and a workaround to pass one of them. | Rob Landley | |
(The bug is that "echo hello \" followed by just enter should end the $PS2 state but it persists when the line is empty because resulting collated line still ends with \ so it wants another line.) | |||
2020-10-19 | Implement source, fix empty ${x-alt}, use %zu as suggested by e5ten. | Rob Landley | |
2020-10-14 | Fix && || traversing loops, and typecast past size_t being stupidly typed. | Rob Landley | |
2020-10-14 | Implement ${var/search/replace} | Rob Landley | |
2020-10-13 | Fix up ${x%y} ${x^y} ${x,y} and add tests. | Rob Landley | |
2020-10-11 | toysh: more variable/wildcard plumbing and tests. | Rob Landley | |
2020-10-06 | toysh: Yank debug scaffolding. | Rob Landley | |
2020-10-06 | toysh file wildcards: echo toys/*/*.c works now. | Rob Landley | |
2020-10-04 | Implement ${x#y} and ${x##y} | Rob Landley | |
Debug wildcard * match, teach skipslash() to fill out a wildcard deck, make collect_wildcards() flush remove the parsing-only 0th entry. | |||
2020-10-01 | Debug wildcard plumbing. | Rob Landley | |
2020-09-27 | Implement wildcard match plumbing. (Not yet fully debugged.) | Rob Landley | |
2020-09-14 | Fix multiline case/esac parsing, make syntax_err() exit non-interactve | Rob Landley | |
contexts like scripts, and tweak debug scaffolding. | |||
2020-09-05 | Fix segfault for sh -c 'echo {a..Z}' | Rob Landley | |
Bash produces different output for that test, but I'm not sure I care? http://lists.landley.net/pipermail/toybox-landley.net/2020-September/011990.html The problem is parse_word() guarantees its output's quotes/escapes are completed, but brace expansion happens after parse_word() and thus violating assumptions later code depends on to not do redundant error checking. The easy fix is to escape punctuation produced by parse_word (which in bash can only happen when you span upper and lower case ranges so "\" is the only interesting character). I could special case this to match bash exactly, but I'm waiting for someone to complain instead. | |||
2020-09-03 | Implement brace sequence expressions ala {a..z} and {1..37..2} | Rob Landley | |
2020-08-31 | Implement select. | Rob Landley | |
2020-08-31 | Implement case/esac, add more wildcard tests. | Rob Landley | |
2020-08-05 | toysh: next round of wildcard plumbing | Rob Landley | |
2020-07-28 | toysh: more wildcard plumbing | Rob Landley | |
2020-07-22 | toysh: Start of wildcard plumbing. | Rob Landley | |
2020-07-15 | toysh: NOSPLIT shouldn't collate whitespace $IFS | Rob Landley | |
2020-07-14 | toysh: honor nosplit, expand_one_arg shouldn't free (that's what del list for) | Rob Landley | |
2020-07-12 | Fixing up failing tests cases. | Rob Landley | |
2020-07-11 | Chunk of job control plumbing and start of ${x:1:3} variable slicing support. | Rob Landley | |
2020-06-10 | Chunk of job control pumbing. | Rob Landley | |
2020-06-09 | Inline/remove block_end() and skip_andor(). Add ->end pointer to sh_pipeline | Rob Landley | |
pointing to end of current block so we don't have to search for it later. | |||
2020-05-27 | Convert array_add() to arg_add(). | Rob Landley | |
2020-05-26 | Fix syntax checking for "if true; then echo hello | fi", fix some tests, | Rob Landley | |
slightly more elaborate debug output. | |||
2020-05-17 | Don't ask for line continuation when ending with & | Rob Landley | |
2020-05-05 | Link to bash man page. | Rob Landley | |
2020-05-05 | Remove leftover increment and move variable clear after error report. | Rob Landley | |
2020-05-04 | Restore error message for command not found, don't let ctrl-C kill shell. | Rob Landley | |
2020-05-03 | Fix "make root && chroot root/host/fs /init" with glibc host compiler. | Rob Landley | |
2020-05-03 | Next round of shell work. | Rob Landley | |
2020-04-27 | Add gratuitous typecast to work around insane warning. | Rob Landley | |
(long is 32 bits on 32 bit systems, just use long already) | |||
2020-04-27 | Redo toysh variable expansion plumbing to start ${} (variable expansion can | Rob Landley | |
now return error), inline utf8spnc and merge_arg(), unify "break" logic, fix "continue" and "done; done", fix cd not to expand arguments twice | |||
2020-04-14 | Implement $'' | Rob Landley | |
2020-04-14 | Start of $- and set flags support. | Rob Landley | |
2020-04-12 | Fix sh -c 'CONSOLE="$(</sys"' segfault (don't advance twice after quote). | Rob Landley | |
2020-04-12 | Add shift and $[], fix exec. | Rob Landley | |
2020-04-09 | Fix "else" loop. | Rob Landley | |
2020-04-08 | Implement ! and $$ and fix quoted "$(subshell)" | Rob Landley | |
2020-04-06 | Pass more tests, and detect ELF files (don't try to run them as shell scripts). | Rob Landley | |
Don't fall back to stdin if we can't find shell script on command line. | |||
2020-04-04 | Fix lifetime rules in bracket expansion. | Rob Landley | |
2020-04-02 | More shell plumbing. Redo of variable storage, add export. | Rob Landley | |
2020-03-18 | Next round of shell work. | Rob Landley | |
Rethink syntax_err a bit. Try to track top level shell pid for $$ including passing it to nommu subshells. Reset hfd more often so it doesn't climb endlessly. Leak fewer filehandles and detect more filehandle exhaustion errors. Replace skip_quote() with a second mode for parse_word(). Fix $() and implement $(<input). | |||
2020-03-13 | Pass a few more test suite entries. | Rob Landley | |
2020-03-13 | Fix "eval x=y", add exec, only prompt if stdin is a tty, search $PATH for script | Rob Landley | |
2020-03-12 | Shuffle code around: eliminate one of two function prototypes, add "static" | Rob Landley | |
to functions that aren't entry points, and collate debug code at top. |