Release a new version to JSR. Use when publishing a new version, bumping version, or releasing to JSR.
This skill handles the complete release process for @aidevtool/ci to JSR.
Before releasing:
mainBoth files must be updated together:
deno.json - Package version for JSRsrc/version.ts - VERSION constant for --version CLI output# Ensure on main branch
git checkout main
git pull origin main
# Verify clean working directory
git status
# Verify CI passes
deno task test
deno lint
deno fmt --check
Current version: Check deno.json and src/version.ts
Version bump rules:
deno.json:
{
"version": "X.Y.Z"
}
src/version.ts:
export const VERSION = "X.Y.Z";
# Stage version files
git add deno.json src/version.ts
# Commit with version message
git commit -m "Bump version to X.Y.Z"
# Create annotated tag
git tag vX.Y.Z
# Push commit and tag
git push origin main --tags
# Check workflow status
gh run list --limit 3
# Wait for "Publish to JSR" workflow to complete
# If failed, check logs:
gh run view <run-id> --log-failed
# Test the published version
deno run --allow-all --reload jsr:@aidevtool/ci --version
Check the error:
gh run view <run-id> --log-failed
Common issues:
deno fmtdeno lint and fix issuesdeno check mod.tsFix, commit, delete old tag, recreate:
# Fix the issue and commit
git add . && git commit -m "Fix: <description>"
# Delete old tag
git tag -d vX.Y.Z
git push origin :refs/tags/vX.Y.Z
# Create new tag and push
git tag vX.Y.Z
git push origin main --tags
If --version shows old version after release:
src/version.ts was not updated# Full release sequence (replace X.Y.Z with actual version)
git checkout main && git pull origin main
# Edit deno.json and src/version.ts
git add deno.json src/version.ts
git commit -m "Bump version to X.Y.Z"
git tag vX.Y.Z
git push origin main --tags
gh run list --limit 1 # Monitor workflow
The .github/workflows/publish.yml triggers on:
v*Steps:
deno check mod.ts)deno task test)deno fmt --check)deno lint)