aboutsummaryrefslogtreecommitdiffstats
path: root/development/version-bump.js
diff options
context:
space:
mode:
authorAlexander Tseung <alextsg@gmail.com>2018-03-27 15:20:35 +0800
committerAlexander Tseung <alextsg@gmail.com>2018-03-27 15:20:35 +0800
commit6f367a5a6b4fb8918405f233293dc3f4840b4a3d (patch)
treec60c01300c90204f8634d1f3e9e79b4ecc2fceda /development/version-bump.js
parent72ffa2c3f5abbcb06c8ab5fdf20b9d934c330692 (diff)
parente001c0900b5256c0c8769f0c3eb5d2007f5b18d3 (diff)
downloadtangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.tar
tangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.tar.gz
tangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.tar.bz2
tangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.tar.lz
tangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.tar.xz
tangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.tar.zst
tangerine-wallet-browser-6f367a5a6b4fb8918405f233293dc3f4840b4a3d.zip
Fix merge conflicts
Diffstat (limited to 'development/version-bump.js')
-rw-r--r--development/version-bump.js52
1 files changed, 52 insertions, 0 deletions
diff --git a/development/version-bump.js b/development/version-bump.js
new file mode 100644
index 000000000..bedf87c01
--- /dev/null
+++ b/development/version-bump.js
@@ -0,0 +1,52 @@
+const clone = require('clone')
+
+async function versionBump(bumpType, changelog, oldManifest) {
+ const manifest = clone(oldManifest)
+ const newVersion = newVersionFrom(manifest, bumpType)
+
+ manifest.version = newVersion
+ const date = (new Date()).toDateString()
+
+ const logHeader = `\n## ${newVersion} ${date}`
+ const logLines = changelog.split('\n')
+ for (let i = 0; i < logLines.length; i++) {
+ if (logLines[i].includes('Current Master')) {
+ logLines.splice(i + 1, 0, logHeader)
+ break
+ }
+ }
+
+ return {
+ version: newVersion,
+ manifest: manifest,
+ changelog: logLines.join('\n')
+ }
+}
+
+function newVersionFrom (manifest, bumpType) {
+ const string = manifest.version
+ let segments = string.split('.').map((str) => parseInt(str))
+
+ switch (bumpType) {
+ case 'major':
+ segments[0] += 1
+ segments[1] = 0
+ segments[2] = 0
+ break
+ case 'minor':
+ segments[1] += 1
+ segments[2] = 0
+ break
+ case 'patch':
+ segments[2] += 1
+ break
+ }
+
+ return segments.map(String).join('.')
+}
+
+function bumpManifest (manifest, bumpType) {
+
+}
+
+module.exports = versionBump