Follow successful git branch model
- Make a branch and checkout to it :
git branch release/vx.x.x && git checkout release/vx.x.x
- Clean source :
rm -rf node_modules && npm install && npm run build
. - Regression test && test new features.
- Run aergo node (check genesis.json for test account).
- Import rich account (has enough aergo) and test based on
${PROJECT_HOME}/test/resources/*.lua
files hand by hand (see shouldXXX in *.lua files).
- Update version in package.json.
- Update version in package-lock.json by
npm install
. - Update compatibility, docs
- Atom, Aergo compatibility in
README.md
(check electron version of atom, add rebuild scripts if necessary). - Engines in
package.json
(atom engine). - Change log file :
CHANGELOG.md
. - Rst docs :
${PROJECT_HOME}/docs
, hosted by readthedocs.
- Atom, Aergo compatibility in
- Commit prepare :
git add . && git commit -m "Prepare for vx.x.x && git push origin"
- DO NOT forget to add dist directory. It's entry point for atom package (defined in
package.json::main
).
- DO NOT forget to add dist directory. It's entry point for atom package (defined in
- Publish tag :
git tag vx.x.x && git push origin vx.x.x
- Publish to atom packages repository :
apm publish --tag vx.x.x
- Upload
*.bin
files to release note :npm run archive
&& upload *.bin file to release notes. - Merge release to master branch :
git checkout master && git merge release/vx.x.x && git push origin
- Merge release to develop branch :
git checkout develop && git merge release/vx.x.x && git push origin
- Remove release branch :
git branch -d release/vx.x.x
- Checkout to develop :
git checkout develop