Skip to content

Latest commit

 

History

History
72 lines (47 loc) · 1.49 KB

PUBLISHING.md

File metadata and controls

72 lines (47 loc) · 1.49 KB

How to publish releases of elm-format

Workstation setup

Mac

brew update
brew tap caskroom/cask
brew cask install keybase
brew install github-release
brew cask install vagrant
brew cask install virtualbox
brew install gpg

Preparation

  1. Create a github issue to draft the release notes.
  2. Edit elm-format-short.cabal to remove -dev from the version and make sure the version number is correct.
  3. Edit CHANGELOG.md to set the correct version number.
  4. Update ElmFormatShort.Version.experimental to Just <survey URL> for experimental versions and Nothing otherwise.
  5. (cd package/npm && npm version "<new version>")
  6. Commit the changes "Bump version to new version"
  7. Create a signed tag for the new version. git tag -s <version> -m <version>
  8. Push the tag.
  9. Wait for CI to successfully build the tag.

Mac

  1. Run time ./package/mac/build-package.sh

Linux

  1. Make sure you have Docker installed and running
  2. Run time ./package/linux/build-in-docker.sh

Windows

  1. See package/win/setup.md

Publishing

  1. Run package/collect_files.sh
  2. Go to the release page for the new tag on github.
  3. Upload the zip, tgz and asc files.
  4. Write the release notes.
  5. Publish the release.
  6. Update README.md

NPM

cd package/npm
npm i
# for experimental releases
# npm publish --tag exp
npm publish

Clean up

  1. Edit elm-format.cabal with the next minor version number and add -dev.
  2. Commit the change to elm-format.cabal.