Skip to content

Commit 780e447

Browse files
committed
chore: add cwd arg to version script
1 parent 351b607 commit 780e447

File tree

2 files changed

+17
-15
lines changed

2 files changed

+17
-15
lines changed

bin/_version

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,48 +2,50 @@
22
const path = require('path')
33
const getVersion = require('../scripts/getVersion')
44

5+
const [,, cwd] = process.argv
6+
57
const depFields = [
68
'dependencies',
79
'peerDependencies',
810
'devDependencies',
911
'optionalDependencies',
1012
]
1113

12-
let newVersion
14+
let currentVersion
1315

1416
if (!module.parent) {
1517
const semver = require('semver')
1618
const fs = require('fs')
1719
const glob = require('glob')
1820

1921
const [,, versionChange, prereleaseId] = process.argv
20-
const oldVersion = getVersion()
22+
const previousVersion = getVersion(cwd)
2123

2224
if (versionChange) {
2325
if (/^(major|minor|patch|premajor|preminor|prepatch|prerelease)$/.test(versionChange)) {
24-
newVersion = semver.inc(oldVersion, versionChange, prereleaseId)
26+
currentVersion = semver.inc(previousVersion, versionChange, prereleaseId)
2527
}
2628
else {
27-
newVersion = semver.clean(versionChange)
29+
currentVersion = semver.clean(versionChange)
2830

29-
if (newVersion === null) {
30-
throw Error(`Invalid version change "${oldVersion}" -> "${versionChange}"`)
31+
if (currentVersion === null) {
32+
throw Error(`Invalid version change "${previousVersion}" -> "${versionChange}"`)
3133
}
3234
}
3335

3436
const versionTable = []
3537

36-
for (const file of ['package.json', ...glob.sync('{@interactjs/*,interactjs}/package.json')]) {
38+
for (const file of ['package.json', ...glob.sync('{@interactjs/*,interactjs}/package.json', { cwd })]) {
3739
const pkg = require(path.resolve(file))
3840

39-
versionTable.push({ package: pkg.name, old: pkg.version, new: newVersion })
41+
versionTable.push({ package: pkg.name, old: pkg.version, new: currentVersion })
4042

41-
pkg.version = newVersion
43+
pkg.version = currentVersion
4244

4345
for (const deps of depFields.map(f => pkg[f]).filter(Boolean)) {
4446
for (const name of Object.keys(deps).filter(n => /@?interactjs\//.test(n))) {
45-
if (deps[name] === oldVersion) {
46-
deps[name] = newVersion
47+
if (deps[name] === previousVersion) {
48+
deps[name] = currentVersion
4749
} else {
4850
console.warn(`${file}: not updating "${name}" from "${deps[name]}"`)
4951
}
@@ -57,8 +59,8 @@ if (!module.parent) {
5759
}
5860
// if this was run with no arguments, get the current version
5961
else {
60-
newVersion = oldVersion
62+
currentVersion = previousVersion
6163
}
6264

63-
console.log(newVersion)
65+
console.log(currentVersion)
6466
}

scripts/getVersion.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const path = require('path')
22

3-
module.exports = () => {
4-
const rootPkg = require(path.resolve('package.json'))
3+
module.exports = (cwd = process.cwd()) => {
4+
const rootPkg = require(path.resolve(cwd, 'package.json'))
55

66
return rootPkg.version
77
}

0 commit comments

Comments
 (0)