Skip to content
This repository has been archived by the owner on Dec 21, 2021. It is now read-only.

Releasing AlloyUI

Jonathan Mak edited this page Oct 31, 2017 · 5 revisions

This page documents the steps that need to be taken when releasing a new version of AlloyUI.

Version numbers

We use semver versioning on AlloyUI (MAJOR.MINOR.PATCH).

Note that when releasing master-deprecated, the deprecated suffix is used. So, when releasing a patch for master-deprecated, the counter after the deprecated suffix is the one that should be updated. For example, the next version after 3.0.3-deprecated.1 should be 3.0.3-deprecated.2. The first part of the version string will only change when master is released again, causing the counter to reset to 0. There's no need to release master every time master-deprecated is released though, releases from master-deprecated are much more frequent.

Releasing master

The initial steps are the same for all releases. When releasing master we also need some extra steps though:

  1. Update all HISTORY.md files to be ready for the next version and push the changes. While doing this, store all history entries for the past version, since they'll be used in another step. Diff Example.
  2. Go through all the steps explained in the section named Releasing master or master-deprecated.
  3. Update the github release including all HISTORY.md entries for the last version. Release example
  4. Run gulp release-cdn, which will create the version's CDN zip file.
  5. Connect to AlloyUI's CDN server through an ftp client and copy the build folder from the zip to a new folder on the server named after the version number (for the server credentials talk to Maira).

Releasing master or master-deprecated

  1. Update bower.json, package.json and .alloy.json files with the new version. Diff Example.
  2. Push the changes (either to master or master-deprecated).
  3. Build the project running gulp build.
  4. Create a commit that includes the build folder (you'll need to pass a force flag to git for this to be done, since build is ignored by default, like this: git add build -f). Diff Example.
  5. Create a tag for the next version (the tag name should be the version name).
  6. Push the tag (but DO NOT push the commit with the build files to master nor to master-deprecated).
  7. Publish to NPM by running npm publish for master, or npm publish --tag deprecated for master-deprecated (this will require publishing permissions for NPM, so if you don't have them talk to someone that does, like @mairatma or @jonmak08).
  8. Run gulp release, which will create the version's zip file.
  9. Add the generated zip file to the release in github. Release example.