Skip to content

Add version management infrastructure and update dependencies#10

Merged
diogot merged 1 commit intomainfrom
updates
Jan 22, 2026
Merged

Add version management infrastructure and update dependencies#10
diogot merged 1 commit intomainfrom
updates

Conversation

@diogot
Copy link
Owner

@diogot diogot commented Jan 22, 2026

Summary

  • Add VERSION file as single source of truth for version management
  • Add BuildVersionPlugin SPM plugin to inject version at build time
  • Add --version/-v flag to ejson CLI
  • Update swift-sodium dependency from 0.9.1 to 0.10.0
  • Modernize CI/CD workflows with caching, concurrency, and manual release dispatch

Changes

Version Management

  • VERSION file (1.2.2) - single source of truth
  • Plugins/BuildVersionPlugin/plugin.swift - injects version at build time
  • Sources/ejson/main.swift - added --version/-v flags

CI/CD

  • .github/workflows/ci.yml - added SPM caching, concurrency, version validation warning
  • .github/workflows/release.yml - changed from tag-triggered to manual dispatch, added changelog generation
  • .github/actions/validate-version/action.yml - shared version validation logic

Dependencies

  • Updated swift-sodium from 0.9.1 to 0.10.0

Documentation

  • README.md - updated download URLs to use /releases/latest/, added version management docs
  • RELEASING.md - rewritten for new manual release workflow
  • CLAUDE.md - added version bump reminder

Test plan

  • swift build succeeds and generates GeneratedVersion.swift
  • swift run ejson --version prints 1.2.2
  • swift test - all 30 tests pass

🤖 Generated with Claude Code

- Add VERSION file (1.2.2) as single source of truth
- Add BuildVersionPlugin to inject version at build time
- Add --version/-v flag to ejson CLI
- Update swift-sodium dependency to 0.10.0
- Add .swiftpm to .gitignore

CI/CD improvements:
- Add SPM caching and concurrency to CI workflow
- Add validate-version action for version validation
- Change release workflow from tag-triggered to manual dispatch
- Add changelog generation to release notes
- Create version-less archives for GitHub latest URL

Documentation:
- Update README with version management and latest download URLs
- Rewrite RELEASING.md for new workflow
- Add version bump reminder to CLAUDE.md

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@diogot diogot merged commit a4a14e1 into main Jan 22, 2026
2 checks passed
@diogot diogot deleted the updates branch January 22, 2026 21:14
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