aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorDan Finlay <dan@danfinlay.com>2018-03-03 05:55:56 +0800
committerDan Finlay <dan@danfinlay.com>2018-03-03 05:55:56 +0800
commitbf17d7e1153180fe68cc568a6f4ffa8db66010dc (patch)
treed82dbcb2c5588f5f18ca779f42037a60c25b1e4a /docs
parent452c5d0513a14419b71ffd92d253fef661b74300 (diff)
downloadtangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.tar
tangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.tar.gz
tangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.tar.bz2
tangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.tar.lz
tangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.tar.xz
tangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.tar.zst
tangerine-wallet-browser-bf17d7e1153180fe68cc568a6f4ffa8db66010dc.zip
Add version bumping script
One step towards automating our deploy process is automating our version bumping scheme. This PR does that.
Diffstat (limited to 'docs')
-rw-r--r--docs/bumping_version.md33
-rw-r--r--docs/publishing.md6
2 files changed, 36 insertions, 3 deletions
diff --git a/docs/bumping_version.md b/docs/bumping_version.md
new file mode 100644
index 000000000..df38369a2
--- /dev/null
+++ b/docs/bumping_version.md
@@ -0,0 +1,33 @@
+# How to Bump MetaMask's Version Automatically
+
+```
+npm run version:bump patch
+```
+
+MetaMask publishes using a loose [semver](https://semver.org/) interpretation. We divide the three segments of our version into three types of version bump:
+
+## Major
+
+Means a breaking change, either an API removed, or a major user expectation changed.
+
+## Minor
+
+Means a new API or new user feature.
+
+## Patch
+
+Means a fix for a bug, or correcting something that should have been assumed to work a different way.
+
+# Bumping the version
+
+`npm run version:bump $BUMP_TYPE` where `$BUMP_TYPE` is one of `major`, `minor`, or `patch`.
+
+This will increment the version in the `app/manifest.json` and `CHANGELOG.md` files according to our current protocol, where the manifest's version is updated, and any line items currently under the changelog's "master" section are now under the new dated version section.
+
+# Modifying the bump script
+
+The script that is executed lives [here](../development/run-version-bump.js).
+The main functions all live [here](../development/version-bump.js).
+The test for this behavior is at `test/unit/development/version-bump-test.js`.
+
+
diff --git a/docs/publishing.md b/docs/publishing.md
index 00369acf9..3022b7eda 100644
--- a/docs/publishing.md
+++ b/docs/publishing.md
@@ -4,15 +4,15 @@ When publishing a new version of MetaMask, we follow this procedure:
## Incrementing Version & Changelog
- You must be authorized already on the MetaMask plugin.
+Version can be automatically incremented [using our bump script](./bumping-version.md).
-1. Update the version in `app/manifest.json` and the Changelog in `CHANGELOG.md`.
-2. Visit [the chrome developer dashboard](https://chrome.google.com/webstore/developer/dashboard?authuser=2).
+npm run version:bump $BUMP_TYPE` where `$BUMP_TYPE` is one of `major`, `minor`, or `patch`.
## Publishing
1. `npm run dist` to generate the latest build.
2. Publish to chrome store.
+ - Visit [the chrome developer dashboard](https://chrome.google.com/webstore/developer/dashboard?authuser=2).
3. Publish to firefox addon marketplace.
4. Post on Github releases page.
5. `npm run announce`, post that announcement in our public places.