Skip to content

Creating a new release

Ashley Kolodziej edited this page Sep 22, 2022 · 9 revisions

All development should occur in the develop branch. When you're ready to create a new release, follow these instructions starting from the develop branch.

1. Create a release branch

From the develop branch, create a new release branch labeled release/VERSIONNUMBERHERE. An example would be release/2.0.0. Add the new version to package.json, run grunt version, and add a section in CHANGELOG.md describing changes introduced by this release.

The following files should show changes:

  • CHANGELOG.md
  • package.json

Stage all changes and commit using "Version bump to x.x.x" as the commit message.

2. Push your release branch and open a pull request to main to merge

You'll need to get a final set of eyes for review before closing the pull request and finalizing the release. Once you do, go ahead and merge.

3. Create the tag and release

Head to the releases page (https://github.com/bu-ist/responsive-foundation/releases/). Draft a new release, and add your release number and choose master as the target branch. Describe the release and add items from CHANGELOG.md in the description.

4. Merge main into develop and push

Pull to update main now in Tower. Then, in the left panel under "Branches" checkout the develop branch and then click and drag main on top of develop to merge. Make sure that "Always generate a merge commit" is checked. Push these changes.

5. Update the framework and child starter theme

The main branch of Responsive Framework should always point to the latest stable tag of Foundation.

Follow the instructions in the Framework wiki to create a new Framework release.

Also be sure to update the Responsive Child Starter theme that new themes always start with the latest version of Foundation. (No special release workflow there; just update package.json to reference the new tag, run npm install, commit and push).

6. Communication

Paste the release link in Slack (#id-product-updates) with a summary of notes (e.g. https://github.com/bu-ist/responsive-foundation/releases/tag/1.0.1).