deplift 1.2.4 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -5
- package/dist/cjs/index.cjs +17 -7
- package/dist/esm/index.mjs +17 -7
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -15,10 +15,14 @@ npm install -D deplift
|
|
|
15
15
|
```bash
|
|
16
16
|
npx deplift
|
|
17
17
|
|
|
18
|
+
Positionals:
|
|
19
|
+
pkgPath Path to package.json [string]
|
|
20
|
+
|
|
18
21
|
Options:
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
-
|
|
22
|
+
--major Set major version caps: dep=version pairs
|
|
23
|
+
[array] [default: []]
|
|
24
|
+
-d, --dry-run Run without making changes [boolean] [default: false]
|
|
25
|
+
--install Run npm install [boolean] [default: true]
|
|
26
|
+
-v, --version Show version number [boolean]
|
|
27
|
+
-h, --help Show help
|
|
24
28
|
```
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -62,11 +62,15 @@ const parseArgs = async () => {
|
|
|
62
62
|
};
|
|
63
63
|
try {
|
|
64
64
|
pkg = JSON.parse(await promises.readFile(path.resolve(__dirname$1, '../../package.json'), 'utf8'));
|
|
65
|
-
console.log(`[deplift] v${pkg.version}\n`);
|
|
66
65
|
} catch (_unused2) {}
|
|
67
|
-
const argv = await yargs(helpers.hideBin(process.argv)).
|
|
66
|
+
const argv = await yargs(helpers.hideBin(process.argv)).command('$0 [pkgPath]', 'CLI to update deps in monorepos', yargs => {
|
|
67
|
+
yargs.positional('pkgPath', {
|
|
68
|
+
type: 'string',
|
|
69
|
+
describe: 'Path to package.json'
|
|
70
|
+
});
|
|
71
|
+
}).option('major', {
|
|
68
72
|
type: 'array',
|
|
69
|
-
describe: '
|
|
73
|
+
describe: 'Set major version caps: dep=version pairs',
|
|
70
74
|
default: [],
|
|
71
75
|
coerce: pairs => {
|
|
72
76
|
const result = {};
|
|
@@ -77,31 +81,37 @@ const parseArgs = async () => {
|
|
|
77
81
|
}
|
|
78
82
|
const key = pair.slice(0, idx);
|
|
79
83
|
const value = pair.slice(idx + 1);
|
|
80
|
-
|
|
84
|
+
const num = Number(value);
|
|
85
|
+
if (isNaN(num)) throw new Error(`Invalid --major version "${value}" for "${key}", expected a number`);
|
|
86
|
+
result[key] = num;
|
|
81
87
|
}
|
|
82
88
|
return result;
|
|
83
89
|
}
|
|
84
90
|
}).option('dry-run', {
|
|
85
91
|
type: 'boolean',
|
|
92
|
+
alias: 'd',
|
|
86
93
|
describe: 'Run without making changes',
|
|
87
94
|
default: false
|
|
88
95
|
}).option('install', {
|
|
89
96
|
type: 'boolean',
|
|
90
97
|
describe: 'Run npm install',
|
|
91
98
|
default: true
|
|
92
|
-
}).version(pkg.version).
|
|
99
|
+
}).version(pkg.version).help().alias('v', 'version').alias('h', 'help').strict().parse();
|
|
100
|
+
console.log(`[deplift] v${pkg.version}\n`);
|
|
93
101
|
return argv;
|
|
94
102
|
};
|
|
95
103
|
async function main() {
|
|
96
104
|
const {
|
|
97
105
|
dryRun,
|
|
98
106
|
install: runInstall,
|
|
99
|
-
major: majorCaps
|
|
107
|
+
major: majorCaps,
|
|
108
|
+
pkgPath
|
|
100
109
|
} = await parseArgs();
|
|
101
110
|
if (dryRun) console.log('💡 Dry run enabled — no files will be changed or installed.');
|
|
102
111
|
const config = await loadConfig();
|
|
103
112
|
const ignorePatterns = Array.isArray(config.ignore) ? Array.from(new Set([...defaultIgnore, ...config.ignore])) : defaultIgnore;
|
|
104
|
-
const
|
|
113
|
+
const searchPath = pkgPath && (pkgPath.endsWith('/') ? pkgPath : `${pkgPath}/`);
|
|
114
|
+
const packageFiles = await fg.glob(`${searchPath != null ? searchPath : '**/'}package.json`, {
|
|
105
115
|
ignore: ignorePatterns
|
|
106
116
|
});
|
|
107
117
|
if (packageFiles.length === 0) {
|
package/dist/esm/index.mjs
CHANGED
|
@@ -59,11 +59,15 @@ const parseArgs = async () => {
|
|
|
59
59
|
};
|
|
60
60
|
try {
|
|
61
61
|
pkg = JSON.parse(await readFile(resolve(__dirname$1, '../../package.json'), 'utf8'));
|
|
62
|
-
console.log(`[deplift] v${pkg.version}\n`);
|
|
63
62
|
} catch (_unused2) {}
|
|
64
|
-
const argv = await yargs(hideBin(process.argv)).
|
|
63
|
+
const argv = await yargs(hideBin(process.argv)).command('$0 [pkgPath]', 'CLI to update deps in monorepos', yargs => {
|
|
64
|
+
yargs.positional('pkgPath', {
|
|
65
|
+
type: 'string',
|
|
66
|
+
describe: 'Path to package.json'
|
|
67
|
+
});
|
|
68
|
+
}).option('major', {
|
|
65
69
|
type: 'array',
|
|
66
|
-
describe: '
|
|
70
|
+
describe: 'Set major version caps: dep=version pairs',
|
|
67
71
|
default: [],
|
|
68
72
|
coerce: pairs => {
|
|
69
73
|
const result = {};
|
|
@@ -74,31 +78,37 @@ const parseArgs = async () => {
|
|
|
74
78
|
}
|
|
75
79
|
const key = pair.slice(0, idx);
|
|
76
80
|
const value = pair.slice(idx + 1);
|
|
77
|
-
|
|
81
|
+
const num = Number(value);
|
|
82
|
+
if (isNaN(num)) throw new Error(`Invalid --major version "${value}" for "${key}", expected a number`);
|
|
83
|
+
result[key] = num;
|
|
78
84
|
}
|
|
79
85
|
return result;
|
|
80
86
|
}
|
|
81
87
|
}).option('dry-run', {
|
|
82
88
|
type: 'boolean',
|
|
89
|
+
alias: 'd',
|
|
83
90
|
describe: 'Run without making changes',
|
|
84
91
|
default: false
|
|
85
92
|
}).option('install', {
|
|
86
93
|
type: 'boolean',
|
|
87
94
|
describe: 'Run npm install',
|
|
88
95
|
default: true
|
|
89
|
-
}).version(pkg.version).
|
|
96
|
+
}).version(pkg.version).help().alias('v', 'version').alias('h', 'help').strict().parse();
|
|
97
|
+
console.log(`[deplift] v${pkg.version}\n`);
|
|
90
98
|
return argv;
|
|
91
99
|
};
|
|
92
100
|
async function main() {
|
|
93
101
|
const {
|
|
94
102
|
dryRun,
|
|
95
103
|
install: runInstall,
|
|
96
|
-
major: majorCaps
|
|
104
|
+
major: majorCaps,
|
|
105
|
+
pkgPath
|
|
97
106
|
} = await parseArgs();
|
|
98
107
|
if (dryRun) console.log('💡 Dry run enabled — no files will be changed or installed.');
|
|
99
108
|
const config = await loadConfig();
|
|
100
109
|
const ignorePatterns = Array.isArray(config.ignore) ? Array.from(new Set([...defaultIgnore, ...config.ignore])) : defaultIgnore;
|
|
101
|
-
const
|
|
110
|
+
const searchPath = pkgPath && (pkgPath.endsWith('/') ? pkgPath : `${pkgPath}/`);
|
|
111
|
+
const packageFiles = await fg.glob(`${searchPath != null ? searchPath : '**/'}package.json`, {
|
|
102
112
|
ignore: ignorePatterns
|
|
103
113
|
});
|
|
104
114
|
if (packageFiles.length === 0) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "deplift",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "CLI to update deps in monorepos",
|
|
5
5
|
"author": "Zheng Song",
|
|
6
6
|
"license": "MIT",
|
|
@@ -40,11 +40,11 @@
|
|
|
40
40
|
"@babel/preset-typescript": "^7.28.5",
|
|
41
41
|
"@rollup/plugin-babel": "^6.1.0",
|
|
42
42
|
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
43
|
-
"@types/node": "^25.3.
|
|
43
|
+
"@types/node": "^25.3.2",
|
|
44
44
|
"@types/yargs": "^17.0.35",
|
|
45
45
|
"npm-run-all2": "^8.0.4",
|
|
46
46
|
"prettier": "^3.8.1",
|
|
47
|
-
"rollup": "^4.
|
|
47
|
+
"rollup": "^4.59.0",
|
|
48
48
|
"typescript": "^5.9.3"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|