@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.
Files changed (2) hide show
  1. package/dist/cli.mjs +23 -2
  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
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@enke.dev/bumper",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "license": "MIT",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org",