mirror of
https://github.com/jhd3197/ServerKit.git
synced 2026-11-02 01:57:58 +09:00
Reworked `CHANGELOG.md` into a Keep a Changelog-style release history backfilled from published GitHub releases (starting at 1.6.25), added a structured `Unreleased` section, and linked each version to release/comparison URLs. Updated contributor guidance and the PR template to require concise user-facing changelog notes (or justification when not needed), and added a direct changelog link in the README navigation to make release history easier to find.
2.7 KiB
2.7 KiB
Description
Related Issues
Type of Change
- 🐛 Bug fix (non-breaking change which fixes an issue)
- 🚀 New feature (non-breaking change which adds functionality)
- ⚠️ Breaking change (fix or feature that would cause existing functionality to not work as expected)
- 📝 Documentation update
- 🎨 UI/UX improvement
How Has This Been Tested?
Checklist
- My code follows the style guidelines of this project
- I have performed a self-review of my own code
- I have commented my code, particularly in hard-to-understand areas
- I have made corresponding changes to the documentation
- I have added a concise user-facing note under
UnreleasedinCHANGELOG.md, or explained why this change needs no release note - My changes generate no new warnings
- I have added tests that prove my fix is effective or that my feature works
- New and existing unit tests pass locally with my changes
Shell scripts only (install.sh, uninstall.sh, serverkit, scripts/**)
- Every new pipeline / command substitution can benignly fail (empty dir,
missing conf, zero matches, dead service) without aborting the script —
observations are guarded;
haltis reserved for "cannot safely continue" - No
[ … ] && cmdas a function's last statement (returns 1 when the test is false and kills unguarded callers) — useif - Bare
x="$(cmd)"assignments only wrap infallible producers; anything that can fail sits insideif x="$(cmd)"; then - Functions whose stdout is captured send progress output to stderr
- "Warn and continue" helpers are errexit-immune internally, and teardown/rollback paths never abort over a single failed step
- Every new observation/discovery/snapshot/report function is appended to the fresh-box loop in its test suite, and I named which degenerate fixture covers the new failure mode
- Multi-statement test bodies in tested contexts (
if ( … )subshells, the left side of||) are&&-chained — bash suppressesset -ethere even when re-armed inside, so sequential statements assert only the last one - The fix/feature ships with its proving test in the same commit