Martijn Dekker
31c6cfca9c
39625: case needs to reset lastval if no pattern matched
2016-10-13 10:49:02 +01:00
Oliver Kiddle
9d393f7b7d
39622: add test cases for recent _arguments fixes, exclusion lists and -A/-S
2016-10-13 10:05:18 +02:00
Peter Stephenson
8f2ce89a0c
39599: Don't reset status before "case" execution
2016-10-10 10:55:48 +01:00
Peter Stephenson
ffa6c76253
39578: Test more ERR_RETURN cases with "&&" and functions
2016-10-06 09:48:48 +01:00
Peter Stephenson
bcb52460f3
39571: Fix ERR_EXIT bug with && and function.
...
"foo && bar" inside a function could cause the code outside
the function not to perform ERR_EXIT or ERR_RETURN when needed.
2016-10-05 17:46:42 +01:00
Peter Stephenson
0854ee56bc
39568: "! <complex-command>" suppresses ERR_EXIT
2016-10-05 13:52:31 +01:00
Peter Stephenson
dc517212ca
39566: Improve usefulness of command_not_found_handler.
...
Don't behave as if command not found if return status is non-zero
as this may simply be the return status of the replacement command.
Let the function report a command not found instead.
2016-10-05 12:14:43 +01:00
Peter Stephenson
36a11804b4
39521: Refactor start of execcmd().
...
By splitting into _analyse and _exec execpline2() has easier
access to the state at the start of execution. Use this
to ensure we fork if this is a builtin with no arguments.
2016-10-03 09:59:01 +01:00
Peter Stephenson
6b2585147b
39540: "! command" should suppress ERR_EXIT and ERR_RETURN
2016-10-02 19:17:19 +01:00
Peter Stephenson
bb2bbcc944
39517: back off 39502 (WC_ASSIGN causes fork in pipe).
...
This isn't a robust fix as WC_ASSIGNs simply precede the main wordcode.
2016-09-30 11:34:15 +01:00
Peter Stephenson
6ce696f352
39502: Fork for assignment in LHS of pipeline.
...
foo=bar | stuff
left the value of foo set to bar as we didn't realise we needed to
fork.
2016-09-29 17:29:58 +01:00
Peter Stephenson
07c8fbe596
34943: Fixes for "command" with multiple options.
...
These need to combine properly, and alos "command -p" with either
-v or -V needs to search for builtins and then using the default
system path.
2016-09-29 11:01:00 +01:00
Oliver Kiddle
fbafc5b509
39332: support ksh's [[ -v varname ]] condition for checking if variables are set
2016-09-16 00:00:28 +02:00
Peter Stephenson
a4b8ee13be
zsh-users/21903: Fix ${...?...} in interactive shell.
...
On failure should abort back to top level, but we reset the error
flag around commands. Add a hard error flag that's only reset at top level.
2016-09-14 10:33:18 +01:00
Peter Stephenson
1993a3cd2a
39292: Distinguish "=" and "==" tests in output.
...
This is both in xtrace output and shell code rebuilt from
internal structures.
2016-09-13 09:42:24 +01:00
Daniel Shahaf
1b6033489b
unposted: Add tests for ${(q)} being aware of the EQUALS option.
2016-09-09 09:36:12 +00:00
Peter Stephenson
198c7bc232
39222: test math functions in modules.
...
Use zsh/system.
2016-09-08 12:15:14 +01:00
Peter Stephenson
8e329ccb0a
39141: Use zsh instead of sh in SHLVL test.
...
This removes ambiguous behaviour of sh which may or may not
increment SHLVL.
2016-08-31 11:31:55 +01:00
Stephane Chazelas
8ce98c75f5
39125: More care needed decrementing SHLVL on exec.
...
Not needed in subshell.
2016-08-31 10:21:00 +01:00
Barton E. Schaefer
fa48711e31
39115: repair forced joining when (@) and (j) are used together
2016-08-29 08:34:03 -07:00
Daniel Shahaf
7154052ebe
39046 + 39061: New :P history modifier.
2016-08-22 03:34:30 +00:00
Barton E. Schaefer
a1a58dde6a
39035: ${(A)name=word} should expand as an array even when there is only one element.
2016-08-12 16:10:26 -07:00
Barton E. Schaefer
68e14c41f2
39028: more join/split cases fixed and tested.
2016-08-12 00:55:32 -07:00
Barton E. Schaefer
4234fccef6
39019 (cf. PWS 39013): add test cases for more join/split combinations
...
Accidentally omitted from previous commit.
2016-08-11 10:08:16 -07:00
Daniel Shahaf
f026a4dc12
38991: Make 'whence -v autoloaded-function' shows the defining filename.
...
This may also fix a problem whereby the %x prompt escape evaluated to
a function name rather than a filename, since %x is also backed by
scriptfilename.
2016-08-05 12:37:26 +00:00
Peter Stephenson
72e5fe7aab
38879: Unmetafy file names for glob sort.
...
Test using Polish UTF-8 collation sequence that'w known to
cause the problems.
2016-07-18 16:57:38 +01:00
Daniel Shahaf
8468f24af4
38728: Tests: Add tests for the ':a' and ':A' modifiers.
2016-07-05 04:57:28 +00:00
Daniel Shahaf
14dbc20b02
38652: test harness: Emit unified diffs instead of context diffs
2016-06-25 16:32:27 +00:00
Peter Stephenson
954cdd77d7
38746: Fix suffix alias expansion recursion.
...
This was problematic if the expansion landed you back in
command position.
Delay marking the alias as out of use until the text that
caused the expansion is finished.
2016-06-22 13:10:22 +01:00
Peter Stephenson
016929e043
38734: fix final case clauses terminating with ;&
2016-06-21 16:12:51 +01:00
Daniel Shahaf
7badf262c1
38653 + 38657: 'functions -T' tracing: recurse into anonymous functions.
2016-06-13 08:53:18 +00:00
Peter Stephenson
dcffad8326
38586: Metafication problem with $functions
...
If treated as a complete associative array or scanned (retrieving
individual values was not affected), it incorrectly unmetafied
the value so multibyte characters got confused.
Add test.
2016-06-03 10:28:52 +01:00
Jun T
724021779b
38445: subsequent tests rely on a file touched by the -N test, so it must always be touched
...
(Bart) Minor tweak to SECONDS loop to make total of sleeps be 60 seconds
2016-05-09 20:27:57 -07:00
Barton E. Schaefer
4712b8f4d5
38375 (tweaked per 38384): try harder to detect noatime filesystems.
2016-05-02 17:31:18 -07:00
Barton E. Schaefer
59de766e26
38358: "fgrep --" for noatime check in case a mount point is named "-"
2016-04-29 13:14:10 -07:00
Barton E. Schaefer
222dea055c
Mikael Berthe: 38307: PCRE segfault when parenthesized group matches nothing
...
unposted: regression test for 38307
2016-04-23 14:20:16 -07:00
Peter Stephenson
dc2397f754
users/21352: ensure $'' doesn't get elided.
...
Assign nulstring to it if empty. Test for all forms of quotation
marks.
2016-03-07 09:44:54 +00:00
Peter Stephenson
17fb014dc7
38094: Fix POSIX EXIT traps defined in function.
...
These aren't local, so set the local level to 0; else they can get
overridden incorrectly.
2016-03-07 09:42:21 +00:00
Peter Stephenson
c55d855171
38024: Improve POSIX and native EXIT traps compatibility.
...
Allow a nested function trap to leave save and restore a POSIX
trap.
Still fails if the POSIX trap was defined in a function.
2016-02-25 14:20:26 +00:00
Peter Stephenson
ab74c86edb
37999: Sticky behaviour of EXIT traps.
...
They now have POSIX or non-POSIX behaviour based on the setting
of POSIX_TRAPS where the trap was defined, rather than where the
trap would (or would not) be executed.
Tweaks possible.
2016-02-17 10:40:55 +00:00
Barton E. Schaefer
95663e9365
37914: reparse associative array subscripts in "unset" so keys with "[" or "]" may be backslash-escaped
...
Also fix erroneous test case this revealed.
2016-02-08 20:52:11 -08:00
Daniel Shahaf
1d9c6a746c
37752: More tests for the previous patch.
2016-01-29 09:14:54 +00:00
Daniel Shahaf
bced1beb8c
37700: Teach ${(z)} the 'repeat WORD SUBLIST' syntax.
2016-01-29 09:14:53 +00:00
Peter Stephenson
7c59c953f2
37765: Use FS_FUNC on fucstack to find autoload -X target.
...
This is better than scriptname which can be updated due to e.g.
intervening "eval".
2016-01-25 16:23:16 +00:00
Peter Stephenson
1aec003155
37722: test builtin should return status 2 on syntax error
2016-01-21 16:30:21 +00:00
Peter Stephenson
1c41f98aab
37705: don't turn - to Dash after start of brace parameter
2016-01-20 11:22:09 +00:00
Peter Stephenson
ad16356e19
37689: ! and ^ need to be tokenised in character sets
2016-01-19 17:24:12 +00:00
Peter Stephenson
8eb9070d67
37678: Now possible to quote "-" in pattern range
2016-01-19 09:55:46 +00:00
Peter Stephenson
d0cd9032d8
37646: bit missed out of previous readonly commit.
...
I mean, the commit about readonly. Commits aren't readonly, this is git.
2016-01-19 09:49:40 +00:00
Daniel Shahaf
a8a00be442
37591: 'alias -L': skip with a warning aliases with '=' in their LHS
2016-01-13 01:25:46 +00:00