Skip to content

Add GitHub releases to publish workflow#11

Merged
drernie merged 11 commits intomainfrom
deno-version
Dec 15, 2025
Merged

Add GitHub releases to publish workflow#11
drernie merged 11 commits intomainfrom
deno-version

Conversation

@drernie
Copy link
Contributor

@drernie drernie commented Dec 15, 2025

Summary

  • GitHub workflow now creates releases automatically when publishing to JSR
  • Fixed workflow permissions to allow release creation
  • Added @std/semver dependency for version management
  • Updated version.ts to use @std/semver for better version handling

Changes

GitHub Actions Workflow

  • Added contents: write permission (required for creating releases)
  • Added "Create GitHub Release" step using softprops/action-gh-release@v2
  • Automatically marks dev versions as pre-releases
  • Includes JSR package link and installation instructions in release body

Version Management

  • Refactored scripts/version.ts to use @std/semver for version parsing
  • Added @std/semver to deno.json imports
  • Improved error handling and validation

Documentation

  • Updated CLAUDE.md with dev versioning details
  • Updated CHANGELOG.md

Test Results

Successfully tested with dev pre-release:

  • ✅ JSR publication works
  • ✅ GitHub release created automatically
  • ✅ Pre-release flag correctly set for dev versions
  • ✅ Release includes JSR link and installation instructions

See: https://github.com/TheSwanFactory/deno-hooks/releases/tag/v0.3.0-dev.1765827924

Next Steps

After merge, stable releases created with deno task version tag will also generate GitHub releases automatically.

🤖 Generated with Claude Code

- Use @std/semver for proper semantic version parsing and incrementing
- Switch to timestamp-based dev versions (e.g., 0.3.0-dev.1734293847) for merge safety
- Add validation to prevent bumping while on dev/prerelease versions
- Refactor with cleaner helper functions: isDev(), getStableBase(), parseSemVerOrThrow()
- Update help text to reflect timestamp-based dev versioning

This makes dev releases merge-safe and prevents version conflicts when multiple
branches create dev releases simultaneously.
- Document new timestamp-based dev versioning (e.g., 0.3.0-dev.1734293847)
- Add dev pre-release workflow section
- Explain merge-safety benefits of timestamp-based versions
- Document version reset command
- Note restriction on bumping while on dev/prerelease versions
- Fix markdown linting warnings (use headings instead of bold emphasis)
@drernie drernie merged commit 77915ae into main Dec 15, 2025
3 checks passed
@drernie drernie deleted the deno-version branch December 15, 2025 19:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant