Skip to content

Instantly share code, notes, and snippets.

@shilman
Last active November 5, 2018 06:31
Show Gist options
  • Save shilman/0b5a4011f8a105a36b657a79736733df to your computer and use it in GitHub Desktop.
Save shilman/0b5a4011f8a105a36b657a79736733df to your computer and use it in GitHub Desktop.
Storybook Release Proposal v4

Storybook Release Proposal v4

Fourth iteration of the Storybook release process (v1, v2, v3), updated to reflect learnings from the 4.0 release.

What we're doing now

  • We respect semver for all releases to the best of our ability
  • release/x.y (e.g. release/3.4) branch is released as a patch every week (e.g. 3.4.X)
  • master is released on the alpha tag every week (e.g. 4.0.0-alpha.X)
  • All major/minor releases get a blog post (e.g. 3.2)

Proposed changes

  • Release much more often, follow semver but don't worry about batching up changes -- focus on steady improvement.
  • Two branches: master and next. master contains the current stable release. next is the default branch, and contains the next release.
  • Workflow between next and master is identical to the previous workflow between master and release/X.Y (cherry-pick patches as needed). The existing setup is confusing, and we hope that the new setup is slightly less confusing.
  • Release from next to the next NPM tag every week. Will use suffixes like alpha/beta/rc to denote status, e.g. 4.1.0-alpha.0 would be released next tag.
  • Release from master to the latest NPM tag every week and/or coordinating with a release post for minor releases.
  • Set minor release dates as soon as we have feature clarity and manage to those dates:
    • Date should be a Monday so if we slip we don't get pushed into the weekend
    • T-3wk:
      • Draft announcement and socialize
      • Announce dates in #maintenance so people can reat
    • T-1wk:
      • If you want your feature in the release, it should already be released on next by this time
      • Create release branch and only cherrypick bugfixes
      • Set up launch plan

As a contributor

  • Issue all PRs against the next branch.
  • We'll cherry-pick bugfix and documentation PRs into master as appropriate.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment