github.com/aretext/aretext@v1.3.0/RELEASING.md (about) 1 Releasing 2 ========= 3 4 Setup 5 ----- 6 7 Configure [gpg](https://www.gnupg.org/) so you can sign release artifacts. 8 9 Major and Minor Releases 10 ------------------------ 11 12 1. Update the version numbers in the [install docs](docs/install.md) and commit to the main branch. 13 14 2. Create a release branch: 15 16 ``` 17 export RELEASE_BRANCH=v$MAJOR.$MINOR.x 18 git checkout -b $RELEASE_BRANCH 19 git push origin $RELEASE_BRANCH 20 ``` 21 22 3. Tag the release and build artifacts: 23 24 ``` 25 ./release.sh VERSION NAME 26 ``` 27 28 - VERSION should have the form "1.2.3" 29 - NAME should be the name of the release ("Zeno", "Frege", "Heraclitus", etc.) 30 31 4. Create the release in the Github UI. 32 33 - Edit the release notes 34 - Upload artifacts from the ./dist directory. 35 36 Patch Releases 37 -------------- 38 39 Patch releases should be used to fix critical bugs (panics, data corruption, security vulnerabilities, etc.). 40 41 1. Update the version numbers in the [install docs](docs/install.md) and commit to the main branch. 42 43 2. Checkout the release branch: 44 45 ``` 46 export RELEASE_BRANCH=v$MAJOR.$MINOR.x 47 git checkout $RELEASE_BRANCH 48 ``` 49 50 3. Cherry-pick commits onto the release branch. 51 52 ``` 53 git cherry-pick $SHA 54 git push origin $RELEASE_BRANCH 55 ``` 56 57 4. Tag and publish the release (same as a major/minor release).