mirror of
https://github.com/veeso/termscp.git
synced 2026-09-16 00:55:51 -07:00
afbc74113f
Deploy docs to GitHub Pages / deploy (push) Has been cancelled
Site / build-site (push) Has been cancelled
Install.sh / build (macos-latest) (push) Has been cancelled
Install.sh / build (ubuntu-latest) (push) Has been cancelled
CI / toolchain (push) Has been cancelled
CI / fmt (push) Has been cancelled
CI / install-scripts (push) Has been cancelled
CI / crates-ubuntu-latest (push) Has been cancelled
CI / crates-windows-latest (push) Has been cancelled
CI / doc (push) Has been cancelled
CI / deny (push) Has been cancelled
CI / crates-macos-latest (push) Has been cancelled
* ci: migrate project automation to Just Centralize build, test, release, dependency, hook, and website commands in Just recipes. Pin workflow tooling, use the repository toolchain, and run the complete validation set in CI. * ci: codex being codex * docs: update CLAUDE.md for just task runner migration Reflect the switch to just recipes for build/test/clippy/fmt, note dprint replacing raw rustfmt, and add a cross-platform code requirement. * fix: resolve clippy warnings breaking CI on ubuntu and windows Use clone() instead of implicit to_string() on already-owned String values, gate the windows-only unused make_file_at import behind cfg(posix), and fix unused mut / manual assign-op in the windows-only localhost test. * fix: fmt
45 lines
1.6 KiB
Plaintext
45 lines
1.6 KiB
Plaintext
set positional-arguments
|
|
|
|
# Print the unreleased changelog section to stdout (preview only), e.g. `just changelog_preview 8.1.0`
|
|
[group('changelog')]
|
|
changelog_preview version:
|
|
git-cliff --config cliff.toml --unreleased --tag "v$1" --strip all
|
|
|
|
# Add a new entry to CHANGELOG.md from the unreleased conventional commits, e.g. `just changelog 8.1.0`
|
|
[group('changelog')]
|
|
changelog version:
|
|
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
version="$1"
|
|
if [[ ! "$version" =~ ^(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)$ ]]; then
|
|
echo "invalid release version: $version (expected MAJOR.MINOR.PATCH)" >&2
|
|
exit 2
|
|
fi
|
|
tag="v$version"
|
|
section="$(git-cliff --config cliff.toml --unreleased --tag "$tag" --strip all)"
|
|
if [ -z "$section" ]; then
|
|
echo "No unreleased conventional commits found; nothing to add." >&2
|
|
exit 0
|
|
fi
|
|
anchor="$(printf '%s' "$version" | tr -d '.')"
|
|
secfile="$(mktemp)"
|
|
tmp="$(mktemp)"
|
|
printf '%s\n' "$section" > "$secfile"
|
|
# Insert a TOC entry before the first existing version entry and the rendered
|
|
# section before the first existing version heading, keeping the title + TOC.
|
|
awk -v secfile="$secfile" -v ver="$version" -v anc="$anchor" '
|
|
!toc_done && /^[[:space:]]*- \[[0-9]/ {
|
|
print " - [" ver "](#" anc ")"
|
|
toc_done = 1
|
|
}
|
|
!body_done && /^## [0-9]/ {
|
|
while ((getline line < secfile) > 0) print line
|
|
print ""
|
|
body_done = 1
|
|
}
|
|
{ print }
|
|
' CHANGELOG.md > "$tmp"
|
|
rm -f "$secfile"
|
|
mv "$tmp" CHANGELOG.md
|
|
echo "CHANGELOG.md updated for $tag"
|