Skip to content

Instantly share code, notes, and snippets.

@KSXGitHub
Created August 3, 2019 07:41
Show Gist options
  • Save KSXGitHub/79860e35615fdcf94897e88cddb2eaa8 to your computer and use it in GitHub Desktop.
Save KSXGitHub/79860e35615fdcf94897e88cddb2eaa8 to your computer and use it in GitHub Desktop.
const fs = require('fs')
const path = require('path')
const semver = require('/home/khai/lib/node_modules/semver')
const pkgdir = path.join(__dirname, 'packages')
for (const pkgname of fs.readdirSync(pkgdir)) {
const dirname = path.join(pkgdir, pkgname)
const stats = fs.statSync(dirname)
if (!stats.isDirectory()) continue
const manifest = path.join(dirname, 'package.json')
const content = JSON.parse(fs.readFileSync(manifest, 'utf8'))
const oldVersion = content.version
const { major, minor, patch, prerelease } = semver.parse(oldVersion)
if (prerelease.length) continue
const newVersion = [major, minor, patch + 1].join('.')
content.version = newVersion
fs.writeFileSync(manifest, JSON.stringify(content, undefined, 2) + '\n')
console.log(oldVersion, '→', newVersion, '|', pkgname)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment