Modernize zunit organization integration#1
Conversation
There was a problem hiding this comment.
Pull request overview
Modernizes the ZUnit project's CI/integration story for the Z-Shell organization mirror. It adds GitHub Actions workflows (native run, syntax check, scheduled multi-Zsh matrix), introduces a zunit init --github-actions bootstrap path, escapes test names/messages in the HTML reporter, defers the revolver dependency check so --help/--version work without it, fixes several "Supress" → "Suppress" typos and a zulu init → zunit init mistake, and adds Z-Shell-style modelines to all Zsh sources.
Changes:
- New CI:
test-native.yml,zsh-n.yml, and a scheduledtest-matrix.ymlbuilding Zsh from source in Alpine. zunit init --github-actionsgenerator, completion entry, README walkthrough, and regression tests intests/cli.zunitandtests/reports.zunit.- HTML report escaping via a new
_zunit_html_escape, deferred revolver check, dependency URL switch tozdharma/*, and assorted typo/comment fixes.
Reviewed changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/test-native.yml | New native-Zsh test workflow used by the README badge. |
| .github/workflows/zsh-n.yml | New zsh -n syntax check workflow over src, build.zsh, and the completion file. |
| .github/workflows/test-matrix.yml | New scheduled matrix building Zsh 5.5.1–5.9 in Alpine via Docker. |
| README.md | Replaces Travis badge, adds Maintenance section, switches install URLs to zdharma/*, documents zunit init --github-actions. |
| build.zsh | Adds Z-Shell modeline header. |
| src/zunit.zsh | Adds modeline; defers revolver check so --help/--version work; fixes "Supress" typo; updates revolver URL. |
| src/commands/init.zsh | Adds modeline, parses -g/--github-actions, embeds workflow template, switches dependency URLs to zdharma/*. |
| src/commands/run.zsh | Adds modeline; fixes typo and zulu init → zunit init. |
| src/reports/html.zsh | Adds modeline and _zunit_html_escape; escapes $name/$message in all renderers. |
| src/reports/tap.zsh, src/helpers.zsh, src/events.zsh, src/assertions.zsh | Modeline-only additions. |
| tests/_support/script-with-{global,local}-variable.zsh | Modeline-only additions to fixture scripts. |
| tests/cli.zunit | New CLI regression suite for help/version, missing-revolver messaging, init flags, GitHub Actions generator. |
| tests/reports.zunit | New regression test for HTML escaping in _zunit_html_failure. |
| zunit.zsh-completion | Adds --github-actions completion entry; fixes "supress" typo. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Signed-off-by: Sall <59910950+ss-o@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Signed-off-by: Sall <59910950+ss-o@users.noreply.github.com>
|
@copilot apply changes based on the comments in this thread |
…ify README Agent-Logs-Url: https://github.com/z-shell/zunit/sessions/669d9ca6-d99f-4d97-9626-5bb99b8b6196 Co-authored-by: ss-o <59910950+ss-o@users.noreply.github.com>
Applied all changes from the unresolved threads in commit
|
Summary
zunit init --github-actions, and safer HTML reportsTest Plan
./build.zsh >/dev/null && PATH="/tmp/zunit-fake-bin:$PATH" ./zunit --tap testsfind src -type f -name '*.zsh' -print | sort | while read -r file; do zsh -n "$file" || exit 1; done; zsh -n build.zsh; zsh -n zunit.zsh-completiongit diff --checkNotes
zdharma/*package coordinates where the surrounding ecosystem still uses them, rather than making an implicit namespace migration--travisremains available as a legacy bootstrap path;--github-actionsis the new current example