about summary refs log tree commit diff
path: root/Test
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/master' into 5.9Daniel Shahaf2020-03-079-4/+354
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Test/D02glob.ztst: On the "unreadable directories can be globbed (users/24619, users/24626)" test, resolve conflicts by removing the Cygwin-only skip that has been added in master, since the test is passing on this branch. This effectively reverts workers/45492. See discussion starting in workers/45504. * origin/master: unposted: Remove 'sgi', as that OpenBSD port has been discontinued. 45509: fix typos in B01cd.ztst 45490 (+45495 and a test): refactor rlimits.c github #49: Fix typo: longson should be loongson users/24710: Fix job control problem with sudo. 45492: skip test added by users/24633 on Cygwin 45488: COMP_WORDS for bash need "$@"-style quoting 45487: Missing mod_export declarations for AIX 45447: Complete vcs_info_hookadd and vcs_info_hookdel. Expose _vcs_info_hooks as a top-level helper function. 45463: test: kill: Document why we use SIGURG 45453: builtins: kill: Do not signal current process group when pid is empty 45452: builtins: kill: Add `kill ''` regression test with explicit sigspec 45451: builtins: kill: Add basic test suite github #48/0002: vcs_info git: properly detect bare repositories github #48/0001: vcs_info git: avoid warnings in bare repositories unposted: Post-release version bump unposted: Release 5.8 CVE-2019-20044: Update change log for preceding commits Update NEWS/README Add unsetopt/PRIVILEGED tests Clean up error-message white space Improve PRIVILEGED fixes (again) Improve PRIVILEGED fixes Drop privileges securely unposted: V01zmodload: Fix failing test from workers/45385 45423: _su: Improve arg handling, shell look-ups unposted: _zip: Recognise '--' 45385: Add a test for 'zmodload -Fa' preemptively disabling ("blacklisting"?) features. unposted: Test release: 5.7.1-test-3 zsh/system: Fix infinite loop in sysread _diff_options: Restore -w completion lost in workers/43351 unposted: Fix ChangeLog typo. 45368: Add tests for workers/45367's issue about double slashes in 'cd -P' and /home/daniel/in/zsh. 45373: Fix ERR_EXIT bug in else branch of if. 45372: Record a symlink loop bug involving :P 45365: _git: Fix __git_recent_branches for the case when a commit has an empty message 45343: Queue signals around arithmetic evaluations 45344: Document where third-party completion functions should be installed. 45345: internal: ztst.vim: Fix highlighting of zsh comments in test payload unposted: internal: Add some comments and fix indentation. No functional change. 45340: internal: Document the difference between paramtab and realparamtab. 45332: _git: add completion for git-version _brace_parameter: add missing \ Conflicts: ChangeLog Test/D02glob.ztst Test/V01zmodload.ztst
| * 45509: fix typos in B01cd.ztstJun-ichi Takimoto2020-03-061-3/+3
| |
| * 45490 (+45495 and a test): refactor rlimits.cJun-ichi Takimoto2020-03-061-0/+10
| | | | | | | | | | Use a table of known resouces instead of generating rlimits.h by rlimits.awk.
| * 45492: skip test added by users/24633 on CygwinJun-ichi Takimoto2020-02-271-5/+9
| |
| * 45463: test: kill: Document why we use SIGURGChris Down2020-02-181-0/+9
| | | | | | | | See discussion in workers/45460.
| * 45453: builtins: kill: Do not signal current process group when pid is emptyChris Down2020-02-181-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following case was encountered in the wild: % zsh; echo "$?" % trap 'exit 5' TERM % kill '' 5 This behaviour seems more likely to be the result of bugs in programs (e.g. `kill -9 "$unsetvar") rather than being desirable behaviour to me. It also seems unintentional judging by the code and documentation, since it comes about as a result of the fact that: - `isanum` returns true for empty strings (since an empty string technically only consists of digits and minuses...); - `atoi`, when passed a pointer to an invalid number, returns 0; - `kill(0, signal)` sends the signal in question to all processes in the current process group. There are (at least) two ways to solve this issue: 1. Add special handling to `kill` to avoid this case. See this patch[0] for a version that does that. 2. Change how isanum behaves. Since the only two call sites that use it both seem like they should handle the case where the input char array is empty, that seems like a reasonable overall change to me.[1] After this patch: % trap 'exit 5' TERM % kill '' kill: illegal pid: The regression test for `kill` without a sigspec is also included in this commit, as previously it's not possible to test it trivially as it would still kill the test runner in expected-to-fail mode; see discussion in workers/45449. 0: workers/45426: https://www.zsh.org/mla/workers/2020/msg00251.html 1: The other call site using isanum() is the fg builtin, but in that case we just fail later since we can't find any job named '', so no big deal either way. It's the kill case which is more concerning.
| * 45452: builtins: kill: Add `kill ''` regression test with explicit sigspecChris Down2020-02-181-0/+9
| | | | | | | | | | | | | | | | The version without a sigspec can't be added yet because it would still kill the test runner even in expected-to-fail mode; see workers/45449 for discussion. For the same reason, we use a signal which is non-fatal by default and unlikely to be sent by someone else, SIGURG, to do the expected-to-fail case prior to the fix.
| * 45451: builtins: kill: Add basic test suiteChris Down2020-02-181-0/+60
| | | | | | | | | | | | This is not totally comprehensive, but at least it's a start for the core functionality. In the next commits, we'll also use this base to add some regression tests.
| * Add unsetopt/PRIVILEGED testsdana2020-02-143-1/+207
| |
| * Improve PRIVILEGED fixesDaniel Shahaf2020-02-141-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Fix retval handling in bin_setopt() - Don't skip_setuid / skip_setgid. It's not our place to optimize away noops (that might not even _be_ noops; they might change the saved uid…). - Remove HAVE_* guard checks around functions that are used unguarded elsewhere. - Use bsd-setres_id.c from OpenSSH to provide setresuid() / setresgid() everywhere, and thus simplify the ifdef soup. Fix some preëxisting bugs in the macro definitions of setuid() (do we still need that one?). - Fix zwarning() format codes for variadic arguments type safety - Restored a comment from HEAD - Fix failure modes around initgroups() - Compared privilege restoration code with OpenSSH's permanently_drop_uid() and updated as needed - Add E01 PRIVILEGED sanity checks
| * unposted: V01zmodload: Fix failing test from workers/45385dana2020-02-141-2/+4
| |
| * 45385: Add a test for 'zmodload -Fa' preemptively disabling ↵Daniel Shahaf2020-02-071-0/+14
| | | | | | | | ("blacklisting"?) features.
| * 45368: Add tests for workers/45367's issue about double slashes in 'cd -P' ↵Daniel Shahaf2020-02-032-0/+8
| | | | | | | | and /home/daniel/in/zsh.
| * 45373: Fix ERR_EXIT bug in else branch of if.Peter Stephenson2020-02-021-0/+9
| | | | | | | | | | The flags need resetting for this branch otherwise e.g. command substitution with non-zero status doesn't cause exit.
* | unposted: Fix trailing whitespace in test expectations.Daniel Shahaf2020-03-071-3/+3
| |
* | 45342: Add tests for interaction between autoloadable parameters and module ↵Daniel Shahaf2020-01-291-0/+41
| | | | | | | | loading.
* | 45304: Do execute the always block even when the try/always block itself is ↵Daniel Shahaf2020-01-161-1/+1
| | | | | | | | | | | | the last command. Fixes the test added in the previous commit (workers/45305).
* | Merge branch 'master' into 5.9Daniel Shahaf2020-01-161-0/+4
|\| | | | | | | | | | | | | | | * master: 45305: Add an XFail test: The exec-last-command optimization is applied to try/always. 45307: zstyle docs: Unoverload a placeholder variable name. 45306: zstyle docs: Introduce the first synopsis in the same way as all others: with an item()(). unposted: docs: Fix a cross-reference.
| * 45305: Add an XFail test: The exec-last-command optimization is applied to ↵Daniel Shahaf2020-01-161-0/+4
| | | | | | | | try/always.
* | 45292: D02glob: Add regression test for macOS stat(2) misbehaviourdana2020-01-151-0/+11
| | | | | | | | | | | | | | On macOS, a privileged stat(2) call can erroneously treat files as directories, which can produce unexpected glob results. This was reported at workers/42891. A side-effect of the change from workers/45291 is that it seems to work around this issue, at least in the obvious cases
* | 45291: A glob with a trailing slash will now match unreadable/unexecutable ↵Daniel Shahaf2020-01-151-1/+1
| | | | | | | | directories.
* | Merge remote-tracking branch 'origin/master' into 5.9Daniel Shahaf2020-01-158-8/+176
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now, as we're preparing to tag the 5.8 release, the 5.9 branch is maintained as a topic branch off master. * origin/master: 45287: zshexpn: Describe parameter elision and add some introductory prose 45302: bin_umask(): Queue signals around umask(). users/24656: docs: Add an example of setting and querying zstyles users/24659: Cross-ref doc for matchers. 45296: D02glob: Clean up after test from users/24633 45290: New helper script for listing XFail tests. users/24633: Add an xfail test for users/24619. unposted: additional typo fix 45280: _git: add -local variants users/24628 (fixed): More doc for selectw-word-style widgets. 45266: Fix losetup completion, broken in da085b7a20729401c725f91ae930200d0deda64f (41720). unposted: Fix punctuation. use /dev/fd on Cygwin for process substitution unposted: Two additional typo fixes. Fix typos reported by codespell in shell code Fix typos reported by codespell in Src/ 45269: Fix misspellings in completions and elsewhere. 45261: _gcc: Detect clang-as-gcc unposted: internal: Remove Vim modeline that interferes with ztst.vim. unposted: internal: ztst.vim: Use :syn-sync to work around (#x) and "`\\\\\\\\`" confusing the highlighting. unposted: internal: zyodl.vim: Support glob qualifiers in example()'s unposted: internal: zyodl.vim: Support yodl comments. github #44: Allow completion for picocom to list symlinks to character devices 45245: _gcc: add some clang specific warnings 45231: _rsync: When completing remote modules, ignore more of the motd. unposted: _tac: Eliminate superfluous variable 45226: _man: Improve completion of file paths 45184: Clarify documentation of %-sequences understood by compadd -[Xx] 45239: Remove 'appendhistory' from zsh-newuser-install 45218: add more options to swaks completion 45196: fix completion after make -C, allowing for -C being used multiple times unposted (after 45183): Fix yodl error: "contrib.yo:4457: No macro: back(...)". 45181: Fix workers/45164: ${(S)%%} will now consider the empty string as a potential match. 45183: Improve documentation examples unposted: Add some tests for ${(S)}, including a regression test for workers/45164. 45169/0002 (tweaked for trailing newlines): Add an expected-to-fail test for workers/44007. 45169/0001: In the test suite, allow test cases to be marked as expected to fail. users/24582 + users/24583: Add regression tests for the previous commit. 24581: Fix array assignments in shell word splitting and completion. 45160: zshexpn: Expand documentation of (S) 45150 + 45152: zshexpn: Use a more minimal example in the documentation of (#b). unposted: internal: Vim ztst support: Add an ftplugin in addition to the syntax highlighter. 45130: _multi_parts: Always pass -f to compadd if given by caller unposted: zerrmsg(): Fix macro guard missed in previous commit unposted: ChangeLog for last commit internal: Allow %L in zerrmsg() in non-debug builds, too.
| * 45296: D02glob: Clean up after test from users/24633dana2020-01-131-0/+5
| |
| * 45290: New helper script for listing XFail tests.Daniel Shahaf2020-01-131-0/+5
| |
| * users/24633: Add an xfail test for users/24619.Daniel Shahaf2020-01-121-0/+13
| |
| * 45269: Fix misspellings in completions and elsewhere.Jens Schleusener2020-01-092-2/+2
| |
| * unposted: internal: Remove Vim modeline that interferes with ztst.vim.Daniel Shahaf2020-01-071-2/+0
| | | | | | | | | | | | | | | | As an alternative, one can use: autocmd BufRead,BufNewFile **/*.ztst setfiletype zsh (But see Util/ztst-syntax.vim and Util/ztst-ftplugin.vim for an alternative.)
| * 45181: Fix workers/45164: ${(S)%%} will now consider the empty string as a ↵Daniel Shahaf2020-01-021-1/+1
| | | | | | | | potential match.
| * unposted: Add some tests for ${(S)}, including a regression test for ↵Daniel Shahaf2020-01-011-0/+25
| | | | | | | | workers/45164.
| * 45169/0002 (tweaked for trailing newlines): Add an expected-to-fail test for ↵Daniel Shahaf2020-01-011-0/+17
| | | | | | | | workers/44007.
| * 45169/0001: In the test suite, allow test cases to be marked as expected to ↵Daniel Shahaf2020-01-012-3/+31
| | | | | | | | | | | | fail. See next commit for a use-case.
| * users/24582 + users/24583: Add regression tests for the previous commit.Daniel Shahaf2019-12-312-0/+77
| |
| * unposted: internal: Vim ztst support: Add an ftplugin in addition to the ↵Daniel Shahaf2019-12-271-1/+1
| | | | | | | | syntax highlighter.
* | unposted (follow-up to 45131): Extra testing by MikaelDaniel Shahaf2019-12-261-6/+31
| |
* | 45137: zformat: Allow the specifying minimum width and a dot with an empty ↵Daniel Shahaf2019-12-261-0/+2
| | | | | | | | | | | | | | | | | | | | maximum width. Before this commit, format specs such as '%5.s' would be printed literally. Now, they are treated as equivalent to '%5s'. The '.' character is not allowed to be used in specs, so there is no incompatibility.
* | 45138: Add zformat unit tests.Daniel Shahaf2019-12-261-0/+65
| |
* | 45131: Make a function that redefines itself preserve its tracedness.Daniel Shahaf2019-12-261-0/+9
|/ | | | | This makes it easy to apply local tracing ('functions -T') to autoloadable functions that redefines themselves when first loaded.
* unposted: Fix broken build: 45109 (!) broke Test/Y01completion.ztst.Daniel Shahaf2019-12-222-86/+1
|
* 45111: zshmisc(1): Clarify the documentation of 'return' and 'exit' in ↵Daniel Shahaf2019-12-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | conjunction with try/always Having reviewed 20076, 20084, 21734, and 21735, my understanding is that the original intention was: - A 'return' in a function does run always-list - An 'exit' outside a function does not run always-list - A 'return' outside a function is treated as an 'exit' All of which are the case today. The remaining case, of 'exit' used inside a function, was not specified by the referenced -workers@ posts; does, as implemented, run the always-list; and furthermore, based in 21734 it's fair to assume that the original documentation was assuming that 'exit' would be used outside of any function, just like it assumed 'return' would be used inside a function. Therefore, have the documentation specify only the behaviour of 'exit' outside any function, and leave the behaviour of 'exit' inside a function unspecified. Anyone who relied on the documentation of 'exit' as documented until this commit would have run into the documentation/implementation discrepancy described in 45075.
* 45107: ztst.vim: Highlight some more special variablesDaniel Shahaf2019-12-221-1/+3
|
* 45108: ztst.vim: Conceal the '>' or '?' on pattern expected output / ↵Daniel Shahaf2019-12-221-8/+19
| | | | | | expected errput lines. This aligns the expectations given by '*>' and '>' lines.
* 45109: Add Vim highlighting file for Test/*.ztst files.Daniel Shahaf2019-12-222-0/+74
|
* unposted: Group related tests. No functional change.Daniel Shahaf2019-12-211-8/+8
|
* 45001: Fix zero-length matches with ${...%...}Peter Stephenson2019-12-121-0/+23
| | | | As the shortest match is preferred, zero-length matches beat any other.
* 45004: Fix typos in commentsMartijn Dekker2019-12-118-9/+9
|
* unposted: zstyle: Add a unit test and some comments.Daniel Shahaf2019-12-011-0/+10
|
* unposted: Add smoke test for :P history modifier.Daniel Shahaf2019-11-191-0/+7
|
* 44664: Fix problem with temporary assignment.Peter Stephenson2019-08-141-0/+12
| | | | | "foo=bar builtin" inside a function lost any variable from enclosing scope.
* Copy functions using functions -c old new.Peter Stephenson2019-08-031-1/+68
| | | | Documentation and test.
* 44523: Add ZTST_handler capability.Peter Stephenson2019-07-161-1/+6
| | | | | Defaults to runtests.zsh but can be something else for alternative test management.