Skip to content
Max Kreminski edited this page Dec 4, 2019 · 1 revision

If you're an Ensemble maintainer and you want to make a new release of the library and authoring tool, here's how to do it!

  1. Set the "version" string in the top-level package.json file to make sure it's consistent with the version you intend to be releasing. For instance, if you're releasing version 1.1.8, set this field to "1.1.8". In general, we try to follow Semantic Versioning 2.0.0 guidelines for version numbers.
  2. Run grunt build to update the version string in ensembletool/package.json as well.
  3. Commit your changes to package.json and ensembletool/package.json.
  4. Run grunt release to generate a top-level release/ directory. This may take a while, so be patient! Afterwards, the release/ directory should contain a zipped build of the authoring tool for each of the target platforms, as well as a copy of the standalone ensemble.js library file.
  5. Draft a new release on GitHub. You can also do this by going to the releases page, then clicking the "Draft a new release" button.
  6. Drag in all the files from the release/ directory. These take a little while to upload, so it's generally good to do this first – that way the files will be uploading in the background while you write the release description.
  7. Give your release an appropriate title based on the version string, e.g. v1.1.8 if you're releasing version 1.1.8.
  8. Write a detailed description of all the changes you made in this release. We're fond of bullet points with links to relevant GitHub issues, like in the v1.1.0 release.
  9. Publish your release!
  10. (Optional, but a good practice.) Once you've published your release, bump the "version" string in package.json to "NEXTRELEASE-pre", e.g. "1.1.9-pre" if you just released version 1.1.8. Then run grunt build to update the version in ensembletool/package.json and commit your changes to both files. The -pre suffix here indicates that the repository currently contains changes that haven't been made part of a full release yet, and can be helpful when (for instance) trying to figure out what version of the authoring tool you're currently running.