@enke.dev/bumper 0.0.3 → 0.0.4
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/dist/cli.mjs +23 -2
- package/package.json +1 -1
package/dist/cli.mjs
CHANGED
|
@@ -2298,7 +2298,7 @@ async function fetchLatestLts() {
|
|
|
2298
2298
|
}
|
|
2299
2299
|
const version = latest.version.replace(/^v/, "");
|
|
2300
2300
|
const major = Number(version.split(".")[0]);
|
|
2301
|
-
return { version, major };
|
|
2301
|
+
return { version, major, ...latest.npm ? { npm: latest.npm } : {} };
|
|
2302
2302
|
}
|
|
2303
2303
|
async function ensureNodeLts(ctx) {
|
|
2304
2304
|
ctx.nodeLts ??= await fetchLatestLts();
|
|
@@ -2530,7 +2530,7 @@ async function resolveLatest(names, tool, cwd, lookups) {
|
|
|
2530
2530
|
async function bumpPackageManagerField(ctx, root, lookups) {
|
|
2531
2531
|
const match = root?.packageManager?.match(/^([a-z]+)@(.+)$/);
|
|
2532
2532
|
const name = match?.[1];
|
|
2533
|
-
if (!root || !name) {
|
|
2533
|
+
if (!root || !name || name === "npm") {
|
|
2534
2534
|
return;
|
|
2535
2535
|
}
|
|
2536
2536
|
const version = await lookups.latestVersion(name, viewTool(ctx.packageManager), ctx.cwd);
|
|
@@ -2644,6 +2644,26 @@ var bunPackageManager = {
|
|
|
2644
2644
|
};
|
|
2645
2645
|
|
|
2646
2646
|
// src/modules/package-managers/npm/npm.package-manager.ts
|
|
2647
|
+
async function alignNpmToNodeLts(ctx) {
|
|
2648
|
+
const root = await readPackageJson(ctx.cwd);
|
|
2649
|
+
if (!root?.packageManager?.startsWith("npm@")) {
|
|
2650
|
+
return;
|
|
2651
|
+
}
|
|
2652
|
+
const { npm } = await ensureNodeLts(ctx);
|
|
2653
|
+
if (!npm) {
|
|
2654
|
+
return;
|
|
2655
|
+
}
|
|
2656
|
+
const next = `npm@${npm}`;
|
|
2657
|
+
if (next === root.packageManager) {
|
|
2658
|
+
return;
|
|
2659
|
+
}
|
|
2660
|
+
if (ctx.dryRun) {
|
|
2661
|
+
planLine(`set packageManager to ${next} (bundled with Node LTS)`);
|
|
2662
|
+
return;
|
|
2663
|
+
}
|
|
2664
|
+
root.packageManager = next;
|
|
2665
|
+
await writePackageJson(ctx.cwd, root);
|
|
2666
|
+
}
|
|
2647
2667
|
var npmPackageManager = {
|
|
2648
2668
|
kind: "package-manager" /* PackageManager */,
|
|
2649
2669
|
id: "npm",
|
|
@@ -2653,6 +2673,7 @@ var npmPackageManager = {
|
|
|
2653
2673
|
},
|
|
2654
2674
|
async update(ctx) {
|
|
2655
2675
|
await upgradeAllWorkspaces(ctx);
|
|
2676
|
+
await alignNpmToNodeLts(ctx);
|
|
2656
2677
|
await cleanInstall(ctx, ["npm", "install"]);
|
|
2657
2678
|
}
|
|
2658
2679
|
};
|