add-command
FreeAdd a new bashdep:: lifecycle command with TDD
The English summary is being prepared. Showing the original description.
Run pre-release validation and execute the release process via release.sh
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
Run pre-release checks then cut a new bashdep release via release.sh.
$ARGUMENTS - Optional. Either an explicit version (0.5.0) or a
bump flag (--major, --minor, --patch). Default:
release.sh auto-bumps the minor version.grep -o 'BASHDEP_VERSION="[^"]*"' bashdep | cut -d'"' -f2git branch --show-currentgit status --shortawk '/^## \[Unreleased\]$/,/^## \[/' CHANGELOG.md | head -40Run /pre-release first, or replay the critical checks here:
make test
make sa
make lint
grep -nE 'declare -A|mapfile|\$\{[A-Za-z_][A-Za-z0-9_]*,,\}' bashdep || echo "Bash 3.2+: OK"
gh run list --limit 3 --branch main
git status --short
git branch --show-current
If ANY check fails, stop and report. Do NOT proceed to release.
Show a summary:
$ARGUMENTS)CHANGELOG.md ## [Unreleased] (abbreviated)Ask the user to confirm before running release.sh.
Always preview first - release.sh is idempotent in dry-run mode:
./release.sh $ARGUMENTS --dry-run
Show the user the proposed:
[Unreleased] section + new compare links)Ask for explicit confirmation before the real run.
./release.sh $ARGUMENTS
release.sh will:
main, tag does not existBASHDEP_VERSION in bashdepCHANGELOG.md: rename [Unreleased] → [X.Y.Z] - YYYY-MM-DD
and refresh compare linksmake test sa lint as a release gatechore(release): X.Y.Z and tag X.Y.Zgh release create and attach the
bashdep script as the downloadable assetThe release URL is printed at the end.
git log --oneline -1
git tag --list --sort=-v:refname | head -1
gh release view "$(git tag --list --sort=-v:refname | head -1)"
Verify:
chore(release): X.Y.Zbashdep assetReport the release URL to the user.
./release.sh --dry-run # preview, no changes
./release.sh --patch # auto-bump patch
./release.sh --major # auto-bump major
./release.sh 0.5.0 # explicit version
./release.sh --no-gh # skip GitHub release (still push tag)
./release.sh --force # skip "Release X.Y.Z?" prompt (CI)
/release
/release --patch
/release 0.5.0
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Add a new bashdep:: lifecycle command with TDD
The English summary is being prepared. Showing the original description.
Stage and commit changes using conventional commits format
The English summary is being prepared. Showing the original description.
Coverage gap analysis for the bashdep public API plus a bashdep::doctor audit
The English summary is being prepared. Showing the original description.
Debug and fix failing bashdep tests systematically
The English summary is being prepared. Showing the original description.
Fetch a GitHub issue, create a branch, plan and implement with TDD, then open a PR
The English summary is being prepared. Showing the original description.
Push branch and create a GitHub PR following the bashdep PR template
The English summary is being prepared. Showing the original description.