Release Channels

Release Channels

Stackie distributes binaries through three release channels. Each channel has a different update cadence and stability guarantee.

Channels at a glance

ChannelWho it’s forStabilityUpdate cadence
stableEnd usersProduction-readyTagged releases
canaryEarly adoptersPre-release featuresManually tagged
edgeDevelopers contributing to StackieUnstableEvery push to dev

stable (default)

The stable channel receives tagged releases that have passed the full test suite. This is the recommended channel for everyday use.

Version format: 1.0.1

canary

The canary channel receives pre-release builds tagged manually before a major release. Canary builds include new features that are complete but not yet through the full release cycle.

Version format: 1.0.1-canary.2455

edge

The edge channel receives a build for every push to the dev branch. Edge builds are development snapshots intended for Stackie contributors.

Warning: Edge builds may contain breaking changes, incomplete features, and forward-only database migrations that prevent switching back to stable or canary without resetting your Stackie database.

Version format: 1.0.1-edge.2457+abc1234

Switching channels

Use stackie config to view or change your current channel:

# View current channel
stackie config get channel

# Switch to canary
stackie config set channel canary

# Switch to edge (requires --confirm)
stackie config set channel edge --confirm

Switching away from edge

If you have been running edge builds, your Stackie database may contain migrations that are not present in stable or canary. Attempting to run an older binary against a newer database schema will be blocked by the schema ceiling check.

To switch away from edge, pass --force and be prepared to reset your database if Stackie refuses to start:

stackie config set channel stable --force

If Stackie refuses to start after the switch, delete the database to let it recreate from scratch:

rm ~/.stackie/stackied.db

Your stack definitions are stored outside ~/.stackie/ and are not affected.

See also

  • Updates — how updates are downloaded and applied
  • Versioning — how to check your current version