Guide/guides

Release & Compatibility Policy

This document defines the minimum release contract for production use.

Release & Compatibility Policy

This document defines the minimum release contract for production use.

Versioning (SemVer)

Guren uses Semantic Versioning for stable releases:

  • MAJOR: incompatible API or behavioral changes
  • MINOR: backward-compatible features
  • PATCH: backward-compatible bug fixes and security updates

From 1.0, breaking changes ship only in major releases; minors and patches are backward compatible. Every breaking change must be documented in migration notes.

Runtime Compatibility Matrix

Runtime Supported Notes
Bun 1.4.2 Primary Development, tests, CLI and self-hosted production; pinned in CI and release workflows
Bun 1.4.4 Trial Non-blocking CI lane soaking the next patch before it becomes primary; not the release baseline
Bun 1.3.14 Best-effort No longer tested in CI; guren doctor warns below Bun 1.4.0
Node.js Deployment adapters AWS Lambda and Vercel builds use their adapter's supported runtime; development and CLI still require Bun
Cloudflare Workers Deployment adapter Requires the Cloudflare plugin and its generated compatibility settings

If the matrix changes, update this guide and the Support Matrix in the same PR, and add a changeset that states the change so it reaches the release notes.

Backward Compatibility Rules

  • Public exports in @guren/* are considered API surface.
  • Removing or changing public types/behavior requires:
    • a migration section in the release notes
    • a deprecation path when feasible
    • tests covering old/new behavior boundaries

Release Cadence & Notes

  • Every release must include changelog/release notes.
  • Notes must include at least:
    • Added / Changed / Fixed
    • Breaking changes (if any)
    • Migration steps
    • Runtime compatibility changes

Upgrade Documentation Requirement

Each minor release must have an upgrade entry in docs/en/guides/upgrading.md and docs/ja/guides/upgrading.md.