1Major
2Minor
3Patch

Version format

Every release follows MAJOR.MINOR.PATCH as defined by semver.org.

  • Major — Breaking changes to CLI commands, API endpoints, or SpooktacularKit public API. Requires migration steps.
  • Minor — New features, new commands, new API endpoints. Fully backward-compatible. Safe to upgrade.
  • Patch — Bug fixes, performance improvements, documentation updates. Always safe to upgrade immediately.

Pre-1.0 stability

Spooktacular is currently pre-1.0. Minor versions may include breaking changes. We document all breaking changes in release notes.

During the 0.x series, treat minor version bumps as potentially breaking. Pin to a specific version in production environments.

What counts as the public API

The following surfaces are covered by semver stability guarantees (post-1.0):

  • CLI commands: Command names, flags, and output format for machine-parseable output
  • HTTP API: Endpoint paths, request/response schemas, status codes
  • SpooktacularKit: Public types, methods, and protocols
  • VM bundle format: On-disk structure of .spookvm bundles
  • LaunchDaemon plist format: Service configuration schema

The following are not covered by stability guarantees:

  • Internal types (anything not marked public)
  • GUI layout and visual design
  • Human-readable CLI output formatting
  • File paths for internal caches

Pinning versions

For enterprise deployments, pin to a specific version to avoid surprises.

Homebrew
# Pin to a specific version
brew install spooktacular@0.1.0

# Or download a specific release from GitHub
curl -LO https://github.com/Spooky-Labs/spooktacular/releases/download/v0.1.0/Spooktacular.dmg
Swift Package Manager
// Pin to exact version
.package(url: "https://github.com/Spooky-Labs/spooktacular", exact: "0.1.0")

// Or use a range
.package(url: "https://github.com/Spooky-Labs/spooktacular", from: "0.1.0")

macOS compatibility

SpooktacularMinimum macOSRecommendedNotes
0.1.xmacOS 14 SonomamacOS 15 SequoiamacOS 14+ for save/restore state, auto-resize
0.1.xmacOS 15+Required for unattended Setup Assistant
0.1.xmacOS 26Liquid Glass support (optional)

Release process

  • Tags: Every release is tagged as v{MAJOR}.{MINOR}.{PATCH} in Git
  • GitHub Releases: Every tag gets a GitHub Release with compiled binaries and release notes
  • Changelog: Breaking changes are documented in release notes with migration instructions
  • Tests: Every release must pass all 424 tests across 53 test suites

Support policy

As an open-source project, we provide best-effort community support.

  • Latest release: Actively maintained with bug fixes and security patches
  • Previous minor: Critical security fixes only
  • Older releases: No active support; upgrade recommended

Enterprise teams needing guaranteed SLAs should consider contributing to the project or sponsoring development via GitHub Discussions.