@storm-software/bun-tools 0.0.42 → 0.0.44

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/CHANGELOG.md CHANGED
@@ -2,6 +2,22 @@
2
2
 
3
3
  # Changelog for Storm Ops - Bun Tools
4
4
 
5
+ ## [0.0.44](https://github.com/storm-software/storm-ops/releases/tag/bun-tools%400.0.44) (08/09/2026)
6
+
7
+ ### Updated Dependencies
8
+
9
+ - Updated **config** to **v1.138.67**
10
+ - Updated **config-tools** to **v1.190.131**
11
+ - Updated **npm-tools** to **v0.6.251**
12
+ - Updated **package-constants** to **v0.1.143**
13
+ - Updated **testing-tools** to **v1.119.283**
14
+
15
+ ## [0.0.43](https://github.com/storm-software/storm-ops/releases/tag/bun-tools%400.0.43) (08/09/2026)
16
+
17
+ ### Updated Dependencies
18
+
19
+ - Updated **npm-tools** to **v0.6.250**
20
+
5
21
  ## [0.0.42](https://github.com/storm-software/storm-ops/releases/tag/bun-tools%400.0.42) (08/08/2026)
6
22
 
7
23
  ### Updated Dependencies
package/bin/bun.cjs CHANGED
@@ -2233,7 +2233,7 @@ var import_commander = require("commander");
2233
2233
  // package.json
2234
2234
  var package_default = {
2235
2235
  name: "@storm-software/bun-tools",
2236
- version: "0.0.42",
2236
+ version: "0.0.44",
2237
2237
  private: false,
2238
2238
  description: "A set of [Bun](https://bun.sh/) plugins and utilities for managing workspace packages/dependencies.",
2239
2239
  repository: {
@@ -2381,7 +2381,7 @@ var import_node_child_process3 = require("child_process");
2381
2381
  var import_semver = require("semver");
2382
2382
  var import_strip_ansi = __toESM(require("strip-ansi"), 1);
2383
2383
  var BENIGN_PACKAGE_MANAGER_STDERR_LINE = /^(npm warn|\[[\d.]+ms\]|\[sys\]|\[warn\] request took)/i;
2384
- var BENIGN_PACKAGE_MANAGER_ENV_LINE = /^\[[\d.]+ms\].*(?:\.env(?:\.local)?|\"\.env)/i;
2384
+ var BENIGN_PACKAGE_MANAGER_ENV_LINE = /^\[[\d.]+ms\].*(?:\.env(?:\.local)?|"\.env)/i;
2385
2385
  function isBenignPackageManagerOutput(line) {
2386
2386
  const trimmed = line.trim();
2387
2387
  if (!trimmed) {
package/bin/bun.js CHANGED
@@ -2211,7 +2211,7 @@ import { Command } from "commander";
2211
2211
  // package.json
2212
2212
  var package_default = {
2213
2213
  name: "@storm-software/bun-tools",
2214
- version: "0.0.42",
2214
+ version: "0.0.44",
2215
2215
  private: false,
2216
2216
  description: "A set of [Bun](https://bun.sh/) plugins and utilities for managing workspace packages/dependencies.",
2217
2217
  repository: {
@@ -2359,7 +2359,7 @@ import { exec as exec3 } from "node:child_process";
2359
2359
  import { valid } from "semver";
2360
2360
  import stripAnsi from "strip-ansi";
2361
2361
  var BENIGN_PACKAGE_MANAGER_STDERR_LINE = /^(npm warn|\[[\d.]+ms\]|\[sys\]|\[warn\] request took)/i;
2362
- var BENIGN_PACKAGE_MANAGER_ENV_LINE = /^\[[\d.]+ms\].*(?:\.env(?:\.local)?|\"\.env)/i;
2362
+ var BENIGN_PACKAGE_MANAGER_ENV_LINE = /^\[[\d.]+ms\].*(?:\.env(?:\.local)?|"\.env)/i;
2363
2363
  function isBenignPackageManagerOutput(line) {
2364
2364
  const trimmed = line.trim();
2365
2365
  if (!trimmed) {
@@ -1,3 +1,3 @@
1
- import {a as a$1}from'./chunk-7QKHH2VM.js';import {i,a,j,e,k as k$1,l,g,c,b as b$1,f}from'./chunk-6RUWDFGG.js';import {exec}from'node:child_process';import {valid,coerce,gt}from'semver';import d from'strip-ansi';var k="https://registry.npmjs.org";var F="latest";var $=F;async function B(t="npm"){return new Promise((r,o)=>{exec(`${t} config get registry`,(e,a,f)=>e&&!e.message.toLowerCase().trim().startsWith("npm warn")?o(e):f&&!f.toLowerCase().trim().startsWith("npm warn")?o(f):r(a.trim()));})}async function b(){if(process.env.STORM_REGISTRY_NPM)return process.env.STORM_REGISTRY_NPM;let t=await f();return t?.registry?.npm?t?.registry?.npm:k}var H=/^(npm warn|\[[\d.]+ms\]|\[sys\]|\[warn\] request took)/i,q=/^\[[\d.]+ms\].*(?:\.env(?:\.local)?|\"\.env)/i;function Y(t){let r=t.trim();return r?[r,d(r)].some(e=>!e||H.test(e)||q.test(e)||/ms\].*\.env/i.test(e)?true:/\[[\d.]+ms\].*\.env/i.test(r)):true}function K(t){return t.split(/\r?\n/).map(r=>d(r).trim()).filter(r=>r.length>0).filter(r=>!Y(r)).join(`
1
+ import {a as a$1}from'./chunk-7QKHH2VM.js';import {i,a,j,e,k as k$1,l,g,c,b as b$1,f}from'./chunk-6RUWDFGG.js';import {exec}from'node:child_process';import {valid,coerce,gt}from'semver';import d from'strip-ansi';var k="https://registry.npmjs.org";var F="latest";var $=F;async function B(t="npm"){return new Promise((r,o)=>{exec(`${t} config get registry`,(e,a,f)=>e&&!e.message.toLowerCase().trim().startsWith("npm warn")?o(e):f&&!f.toLowerCase().trim().startsWith("npm warn")?o(f):r(a.trim()));})}async function b(){if(process.env.STORM_REGISTRY_NPM)return process.env.STORM_REGISTRY_NPM;let t=await f();return t?.registry?.npm?t?.registry?.npm:k}var H=/^(npm warn|\[[\d.]+ms\]|\[sys\]|\[warn\] request took)/i,q=/^\[[\d.]+ms\].*(?:\.env(?:\.local)?|"\.env)/i;function Y(t){let r=t.trim();return r?[r,d(r)].some(e=>!e||H.test(e)||q.test(e)||/ms\].*\.env/i.test(e)?true:/\[[\d.]+ms\].*\.env/i.test(r)):true}function K(t){return t.split(/\r?\n/).map(r=>d(r).trim()).filter(r=>r.length>0).filter(r=>!Y(r)).join(`
2
2
  `).trim()}function X(t){let r=d(t).split(/\r?\n/).map(o=>o.trim()).filter(Boolean);for(let o=r.length-1;o>=0;o-=1){let e=r[o];if(e&&valid(e,true))return e}return d(t).trim()}async function I(t,r=$,o={}){let e=o.executable||"npm",a=o.retries??3,f=o.timeout??1e4,l=o.registry||await B(e),g;for(let n=0;n<=a;n++)try{let c=new AbortController,s=setTimeout(()=>{c.abort();},f),i=await Promise.resolve(new Promise((S,_)=>{exec(`${e} view ${t} version --registry=${l}`,{signal:c.signal,maxBuffer:1024*1024*10},(w,J,O)=>{let T=O?K(O):"",x=X(J);if(valid(x,!0))return S(x);let P=w?.message?d(w.message).trim():"";return w&&P&&!P.toLowerCase().startsWith("npm warn")&&!Y(P)?_(T?new Error(T,{cause:w}):w):T?_(new Error(T)):w?_(w):S(x)});}));if(!valid(i,!0))throw clearTimeout(s),new Error(d(i).startsWith("[WARN] Request took")?`A timeout occurred while fetching the version for package "${t}" with tag "${r}".`:`Invalid version "${i}" fetched for package "${t}" with tag "${r}"`);return clearTimeout(s),i}catch(c){if(g=c,n<a){let s=Math.pow(2,n)*100;await new Promise(i=>setTimeout(i,s));}}throw g}async function Q(t=e(process.cwd())){let r=await i(t);if(!r){a(`No package.json file found in workspace root: ${t}`,{logLevel:"all"});return}let o=j(r);if(o)return Object.fromEntries(Object.entries(o).map(([e,a])=>[e,a.replaceAll('"',"").replaceAll("'","")]));console.warn(`No catalog found in package.json file located in workspace root: ${t}
3
3
  File content: ${JSON.stringify(r,null,2)}`);}async function Z(t=e(process.cwd())){let r=await Q(t);if(!r)throw new Error("No catalog entries found in workspace root package.json file");return r}async function z(t,r=e(process.cwd())){let o=await i(r);if(!o)throw new Error("No package.json file found in workspace root");k$1(o,Object.fromEntries(Object.entries(t).filter(([,e])=>e&&(e.startsWith("npm:")||valid(a$1(e),true))).map(([e,a])=>[e,a.replaceAll('"',"").replaceAll("'","")]))),await l(o,r);}async function vt(t,r,o={}){let{tag:e$1=$,prefix:a="^",workspaceRoot:f=e(),verbose:l=false}=o,g$1=await g(true,{workspaceRoot:f});l&&c(`Upgrading catalog entry for package "${r}" with tag "${e$1}"`,g$1);let n=await b(),c$1=await I(r,e$1,{executable:"bun pm",registry:n});if(!c$1)throw new Error(`Failed to fetch version for package "${r}" with tag "${e$1}"`);if(!valid(a$1(c$1),true))throw new Error(`Invalid version "${c$1}" fetched for package "${r}" with tag "${e$1}"`);let s=`${a||""}${a$1(c$1)}`,i=false;return t[r]?.startsWith("npm:")?(t[r]=s,b$1(`Writing version ${t[r]} to catalog for "${r}" package`,g$1)):!valid(coerce(t[r]))||coerce(t[r])&&coerce(s)&&gt(coerce(s),coerce(t[r]))?(t[r]=`${a||""}${a$1(s)}`,b$1(`Writing version ${t[r]} to catalog for "${r}" package`,g$1),i=true):l&&b$1(`The current version ${t[r]} for package "${r}" is greater than or equal to the version ${a$1(s)} fetched from the npm registry with tag "${e$1}". No update performed.`,g$1),{catalog:t,updated:i}}async function Gt(t,r={}){let{tag:o=$,prefix:e$1="^",throwIfMissingInCatalog:a$2=false,workspaceRoot:f=e(),verbose:l=false}=r,g$1=await g(true,{workspaceRoot:f}),n=await Z(f);if(!n)throw new Error("No catalog found");if(a$2===true&&!n[t])throw new Error(`Package "${t}" not found in catalog: ${JSON.stringify(n,null,2)}`);l&&c(`Upgrading catalog entry for package "${t}" with tag "${o}"`,g$1);let c$1=await b(),s=await I(t,o,{executable:"bun pm",registry:c$1});if(!s)throw new Error(`Failed to fetch version for package "${t}" with tag "${o}"`);if(!valid(a$1(s),true))throw new Error(`Invalid version "${s}" fetched for package "${t}" with tag "${o}"`);let i=`${e$1||""}${a$1(s)}`;i===n[t]?l&&c(`The version for package "${t}" is already up to date in the catalog: ${i}`,g$1):!valid(a$1(n[t]),true)||coerce(n[t])&&coerce(i)&&gt(coerce(i),coerce(n[t]))?(n[t]=`${e$1||""}${a$1(i)}`,b$1(`Writing version ${n[t]} to catalog for "${t}" package`,g$1),await z(n,f)):l&&a(`The current version "${n[t]}" for package "${t}" is greater than or equal to the version "${i}" fetched from the npm registry with tag "${o}". No update performed.`,g$1);}export{Q as a,Z as b,z as c,vt as d,Gt as e};
@@ -1 +1 @@
1
- 'use strict';var chunkQEDDZEJV_cjs=require('./chunk-QEDDZEJV.cjs'),chunk66TU3CP3_cjs=require('./chunk-66TU3CP3.cjs'),devkit=require('@nx/devkit'),fs=require('fs'),promises=require('fs/promises'),prettier=require('prettier'),J=require('prettier-plugin-packagejson');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var J__default=/*#__PURE__*/_interopDefault(J);async function x(t=process.cwd(),f=chunk66TU3CP3_cjs.e(t)){let g=chunk66TU3CP3_cjs.d(t,"package.json"),l=await promises.readFile(g,"utf8");if(!l)throw new Error("No package.json file found in package root: "+t);let s=await chunkQEDDZEJV_cjs.b(f),c=JSON.parse(l);if(!s){console.warn("No workspace catalog found. Skipping dependencies replacement for now.");return}for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e]==="catalog:"){if(!s)throw new Error(`Dependency ${e} is marked as \`catalog:\`, but no catalog exists in the workspace root's \`package.json\` file.`);let a=s[e];if(!a)throw new Error("Missing workspace catalog version for "+e);o[e]=a;}else if(o[e].startsWith("catalog:"))throw new Error("multiple named catalogs not supported")}}let r;try{r=devkit.readCachedProjectGraph();}catch{await devkit.createProjectGraphAsync(),r=devkit.readCachedProjectGraph();}let i={};r&&await Promise.all(Object.keys(r.nodes).map(async n=>{let o=r.nodes[n];if(o?.data.root){let e=chunk66TU3CP3_cjs.d(f,o.data.root,"package.json");if(fs.existsSync(e)){let a=await promises.readFile(e,"utf8"),p=JSON.parse(a);p.private!==true&&(i[p.name]=p.version);}}}));for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e].startsWith("workspace:"))if(i[e])o[e]=`^${i[e]}`;else throw new Error(`Workspace dependency ${e} not found in workspace packages.`)}}return promises.writeFile(g,await prettier.format(JSON.stringify(c),{parser:"json",proseWrap:"preserve",trailingComma:"none",tabWidth:2,semi:true,singleQuote:false,quoteProps:"as-needed",insertPragma:false,bracketSameLine:true,printWidth:80,bracketSpacing:true,arrowParens:"avoid",endOfLine:"lf",plugins:[J__default.default]}))}exports.a=x;
1
+ 'use strict';var chunkCSMRW24D_cjs=require('./chunk-CSMRW24D.cjs'),chunk66TU3CP3_cjs=require('./chunk-66TU3CP3.cjs'),devkit=require('@nx/devkit'),fs=require('fs'),promises=require('fs/promises'),prettier=require('prettier'),J=require('prettier-plugin-packagejson');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var J__default=/*#__PURE__*/_interopDefault(J);async function x(t=process.cwd(),f=chunk66TU3CP3_cjs.e(t)){let g=chunk66TU3CP3_cjs.d(t,"package.json"),l=await promises.readFile(g,"utf8");if(!l)throw new Error("No package.json file found in package root: "+t);let s=await chunkCSMRW24D_cjs.b(f),c=JSON.parse(l);if(!s){console.warn("No workspace catalog found. Skipping dependencies replacement for now.");return}for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e]==="catalog:"){if(!s)throw new Error(`Dependency ${e} is marked as \`catalog:\`, but no catalog exists in the workspace root's \`package.json\` file.`);let a=s[e];if(!a)throw new Error("Missing workspace catalog version for "+e);o[e]=a;}else if(o[e].startsWith("catalog:"))throw new Error("multiple named catalogs not supported")}}let r;try{r=devkit.readCachedProjectGraph();}catch{await devkit.createProjectGraphAsync(),r=devkit.readCachedProjectGraph();}let i={};r&&await Promise.all(Object.keys(r.nodes).map(async n=>{let o=r.nodes[n];if(o?.data.root){let e=chunk66TU3CP3_cjs.d(f,o.data.root,"package.json");if(fs.existsSync(e)){let a=await promises.readFile(e,"utf8"),p=JSON.parse(a);p.private!==true&&(i[p.name]=p.version);}}}));for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e].startsWith("workspace:"))if(i[e])o[e]=`^${i[e]}`;else throw new Error(`Workspace dependency ${e} not found in workspace packages.`)}}return promises.writeFile(g,await prettier.format(JSON.stringify(c),{parser:"json",proseWrap:"preserve",trailingComma:"none",tabWidth:2,semi:true,singleQuote:false,quoteProps:"as-needed",insertPragma:false,bracketSameLine:true,printWidth:80,bracketSpacing:true,arrowParens:"avoid",endOfLine:"lf",plugins:[J__default.default]}))}exports.a=x;
@@ -1,3 +1,3 @@
1
- 'use strict';var chunkWAL5SD4G_cjs=require('./chunk-WAL5SD4G.cjs'),chunk66TU3CP3_cjs=require('./chunk-66TU3CP3.cjs'),child_process=require('child_process'),semver=require('semver'),d=require('strip-ansi');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var d__default=/*#__PURE__*/_interopDefault(d);var W="https://registry.npmjs.org";var k="latest";var $=k;async function F(t="npm"){return new Promise((r,o)=>{child_process.exec(`${t} config get registry`,(e,a,f)=>e&&!e.message.toLowerCase().trim().startsWith("npm warn")?o(e):f&&!f.toLowerCase().trim().startsWith("npm warn")?o(f):r(a.trim()));})}async function C(){if(process.env.STORM_REGISTRY_NPM)return process.env.STORM_REGISTRY_NPM;let t=await chunk66TU3CP3_cjs.f();return t?.registry?.npm?t?.registry?.npm:W}var N=/^(npm warn|\[[\d.]+ms\]|\[sys\]|\[warn\] request took)/i,H=/^\[[\d.]+ms\].*(?:\.env(?:\.local)?|\"\.env)/i;function B(t){let r=t.trim();return r?[r,d__default.default(r)].some(e=>!e||N.test(e)||H.test(e)||/ms\].*\.env/i.test(e)?true:/\[[\d.]+ms\].*\.env/i.test(r)):true}function q(t){return t.split(/\r?\n/).map(r=>d__default.default(r).trim()).filter(r=>r.length>0).filter(r=>!B(r)).join(`
1
+ 'use strict';var chunkWAL5SD4G_cjs=require('./chunk-WAL5SD4G.cjs'),chunk66TU3CP3_cjs=require('./chunk-66TU3CP3.cjs'),child_process=require('child_process'),semver=require('semver'),d=require('strip-ansi');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var d__default=/*#__PURE__*/_interopDefault(d);var W="https://registry.npmjs.org";var k="latest";var $=k;async function F(t="npm"){return new Promise((r,o)=>{child_process.exec(`${t} config get registry`,(e,a,f)=>e&&!e.message.toLowerCase().trim().startsWith("npm warn")?o(e):f&&!f.toLowerCase().trim().startsWith("npm warn")?o(f):r(a.trim()));})}async function C(){if(process.env.STORM_REGISTRY_NPM)return process.env.STORM_REGISTRY_NPM;let t=await chunk66TU3CP3_cjs.f();return t?.registry?.npm?t?.registry?.npm:W}var N=/^(npm warn|\[[\d.]+ms\]|\[sys\]|\[warn\] request took)/i,H=/^\[[\d.]+ms\].*(?:\.env(?:\.local)?|"\.env)/i;function B(t){let r=t.trim();return r?[r,d__default.default(r)].some(e=>!e||N.test(e)||H.test(e)||/ms\].*\.env/i.test(e)?true:/\[[\d.]+ms\].*\.env/i.test(r)):true}function q(t){return t.split(/\r?\n/).map(r=>d__default.default(r).trim()).filter(r=>r.length>0).filter(r=>!B(r)).join(`
2
2
  `).trim()}function K(t){let r=d__default.default(t).split(/\r?\n/).map(o=>o.trim()).filter(Boolean);for(let o=r.length-1;o>=0;o-=1){let e=r[o];if(e&&semver.valid(e,true))return e}return d__default.default(t).trim()}async function M(t,r=$,o={}){let e=o.executable||"npm",a=o.retries??3,f=o.timeout??1e4,l=o.registry||await F(e),g;for(let n=0;n<=a;n++)try{let c=new AbortController,s=setTimeout(()=>{c.abort();},f),i=await Promise.resolve(new Promise((I,_)=>{child_process.exec(`${e} view ${t} version --registry=${l}`,{signal:c.signal,maxBuffer:1024*1024*10},(w,D,S)=>{let T=S?q(S):"",x=K(D);if(semver.valid(x,!0))return I(x);let P=w?.message?d__default.default(w.message).trim():"";return w&&P&&!P.toLowerCase().startsWith("npm warn")&&!B(P)?_(T?new Error(T,{cause:w}):w):T?_(new Error(T)):w?_(w):I(x)});}));if(!semver.valid(i,!0))throw clearTimeout(s),new Error(d__default.default(i).startsWith("[WARN] Request took")?`A timeout occurred while fetching the version for package "${t}" with tag "${r}".`:`Invalid version "${i}" fetched for package "${t}" with tag "${r}"`);return clearTimeout(s),i}catch(c){if(g=c,n<a){let s=Math.pow(2,n)*100;await new Promise(i=>setTimeout(i,s));}}throw g}async function X(t=chunk66TU3CP3_cjs.e(process.cwd())){let r=await chunk66TU3CP3_cjs.i(t);if(!r){chunk66TU3CP3_cjs.a(`No package.json file found in workspace root: ${t}`,{logLevel:"all"});return}let o=chunk66TU3CP3_cjs.j(r);if(o)return Object.fromEntries(Object.entries(o).map(([e,a])=>[e,a.replaceAll('"',"").replaceAll("'","")]));console.warn(`No catalog found in package.json file located in workspace root: ${t}
3
3
  File content: ${JSON.stringify(r,null,2)}`);}async function Q(t=chunk66TU3CP3_cjs.e(process.cwd())){let r=await X(t);if(!r)throw new Error("No catalog entries found in workspace root package.json file");return r}async function Z(t,r=chunk66TU3CP3_cjs.e(process.cwd())){let o=await chunk66TU3CP3_cjs.i(r);if(!o)throw new Error("No package.json file found in workspace root");chunk66TU3CP3_cjs.k(o,Object.fromEntries(Object.entries(t).filter(([,e])=>e&&(e.startsWith("npm:")||semver.valid(chunkWAL5SD4G_cjs.a(e),true))).map(([e,a])=>[e,a.replaceAll('"',"").replaceAll("'","")]))),await chunk66TU3CP3_cjs.l(o,r);}async function At(t,r,o={}){let{tag:e=$,prefix:a="^",workspaceRoot:f=chunk66TU3CP3_cjs.e(),verbose:l=false}=o,g=await chunk66TU3CP3_cjs.g(true,{workspaceRoot:f});l&&chunk66TU3CP3_cjs.c(`Upgrading catalog entry for package "${r}" with tag "${e}"`,g);let n=await C(),c=await M(r,e,{executable:"bun pm",registry:n});if(!c)throw new Error(`Failed to fetch version for package "${r}" with tag "${e}"`);if(!semver.valid(chunkWAL5SD4G_cjs.a(c),true))throw new Error(`Invalid version "${c}" fetched for package "${r}" with tag "${e}"`);let s=`${a||""}${chunkWAL5SD4G_cjs.a(c)}`,i=false;return t[r]?.startsWith("npm:")?(t[r]=s,chunk66TU3CP3_cjs.b(`Writing version ${t[r]} to catalog for "${r}" package`,g)):!semver.valid(semver.coerce(t[r]))||semver.coerce(t[r])&&semver.coerce(s)&&semver.gt(semver.coerce(s),semver.coerce(t[r]))?(t[r]=`${a||""}${chunkWAL5SD4G_cjs.a(s)}`,chunk66TU3CP3_cjs.b(`Writing version ${t[r]} to catalog for "${r}" package`,g),i=true):l&&chunk66TU3CP3_cjs.b(`The current version ${t[r]} for package "${r}" is greater than or equal to the version ${chunkWAL5SD4G_cjs.a(s)} fetched from the npm registry with tag "${e}". No update performed.`,g),{catalog:t,updated:i}}async function vt(t,r={}){let{tag:o=$,prefix:e="^",throwIfMissingInCatalog:a=false,workspaceRoot:f=chunk66TU3CP3_cjs.e(),verbose:l=false}=r,g=await chunk66TU3CP3_cjs.g(true,{workspaceRoot:f}),n=await Q(f);if(!n)throw new Error("No catalog found");if(a===true&&!n[t])throw new Error(`Package "${t}" not found in catalog: ${JSON.stringify(n,null,2)}`);l&&chunk66TU3CP3_cjs.c(`Upgrading catalog entry for package "${t}" with tag "${o}"`,g);let c=await C(),s=await M(t,o,{executable:"bun pm",registry:c});if(!s)throw new Error(`Failed to fetch version for package "${t}" with tag "${o}"`);if(!semver.valid(chunkWAL5SD4G_cjs.a(s),true))throw new Error(`Invalid version "${s}" fetched for package "${t}" with tag "${o}"`);let i=`${e||""}${chunkWAL5SD4G_cjs.a(s)}`;i===n[t]?l&&chunk66TU3CP3_cjs.c(`The version for package "${t}" is already up to date in the catalog: ${i}`,g):!semver.valid(chunkWAL5SD4G_cjs.a(n[t]),true)||semver.coerce(n[t])&&semver.coerce(i)&&semver.gt(semver.coerce(i),semver.coerce(n[t]))?(n[t]=`${e||""}${chunkWAL5SD4G_cjs.a(i)}`,chunk66TU3CP3_cjs.b(`Writing version ${n[t]} to catalog for "${t}" package`,g),await Z(n,f)):l&&chunk66TU3CP3_cjs.a(`The current version "${n[t]}" for package "${t}" is greater than or equal to the version "${i}" fetched from the npm registry with tag "${o}". No update performed.`,g);}exports.a=X;exports.b=Q;exports.c=Z;exports.d=At;exports.e=vt;
@@ -1 +1 @@
1
- import {b}from'./chunk-YTASAMLT.js';import {d,e}from'./chunk-6RUWDFGG.js';import {readCachedProjectGraph,createProjectGraphAsync}from'@nx/devkit';import {existsSync}from'node:fs';import {readFile,writeFile}from'node:fs/promises';import {format}from'prettier';import J from'prettier-plugin-packagejson';async function F(t=process.cwd(),f=e(t)){let g=d(t,"package.json"),l=await readFile(g,"utf8");if(!l)throw new Error("No package.json file found in package root: "+t);let s=await b(f),c=JSON.parse(l);if(!s){console.warn("No workspace catalog found. Skipping dependencies replacement for now.");return}for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e]==="catalog:"){if(!s)throw new Error(`Dependency ${e} is marked as \`catalog:\`, but no catalog exists in the workspace root's \`package.json\` file.`);let a=s[e];if(!a)throw new Error("Missing workspace catalog version for "+e);o[e]=a;}else if(o[e].startsWith("catalog:"))throw new Error("multiple named catalogs not supported")}}let r;try{r=readCachedProjectGraph();}catch{await createProjectGraphAsync(),r=readCachedProjectGraph();}let i={};r&&await Promise.all(Object.keys(r.nodes).map(async n=>{let o=r.nodes[n];if(o?.data.root){let e=d(f,o.data.root,"package.json");if(existsSync(e)){let a=await readFile(e,"utf8"),p=JSON.parse(a);p.private!==true&&(i[p.name]=p.version);}}}));for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e].startsWith("workspace:"))if(i[e])o[e]=`^${i[e]}`;else throw new Error(`Workspace dependency ${e} not found in workspace packages.`)}}return writeFile(g,await format(JSON.stringify(c),{parser:"json",proseWrap:"preserve",trailingComma:"none",tabWidth:2,semi:true,singleQuote:false,quoteProps:"as-needed",insertPragma:false,bracketSameLine:true,printWidth:80,bracketSpacing:true,arrowParens:"avoid",endOfLine:"lf",plugins:[J]}))}export{F as a};
1
+ import {b}from'./chunk-BK3A4HJ7.js';import {d,e}from'./chunk-6RUWDFGG.js';import {readCachedProjectGraph,createProjectGraphAsync}from'@nx/devkit';import {existsSync}from'node:fs';import {readFile,writeFile}from'node:fs/promises';import {format}from'prettier';import J from'prettier-plugin-packagejson';async function F(t=process.cwd(),f=e(t)){let g=d(t,"package.json"),l=await readFile(g,"utf8");if(!l)throw new Error("No package.json file found in package root: "+t);let s=await b(f),c=JSON.parse(l);if(!s){console.warn("No workspace catalog found. Skipping dependencies replacement for now.");return}for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e]==="catalog:"){if(!s)throw new Error(`Dependency ${e} is marked as \`catalog:\`, but no catalog exists in the workspace root's \`package.json\` file.`);let a=s[e];if(!a)throw new Error("Missing workspace catalog version for "+e);o[e]=a;}else if(o[e].startsWith("catalog:"))throw new Error("multiple named catalogs not supported")}}let r;try{r=readCachedProjectGraph();}catch{await createProjectGraphAsync(),r=readCachedProjectGraph();}let i={};r&&await Promise.all(Object.keys(r.nodes).map(async n=>{let o=r.nodes[n];if(o?.data.root){let e=d(f,o.data.root,"package.json");if(existsSync(e)){let a=await readFile(e,"utf8"),p=JSON.parse(a);p.private!==true&&(i[p.name]=p.version);}}}));for(let n of ["dependencies","devDependencies","peerDependencies"]){let o=c[n];if(o){for(let e of Object.keys(o))if(o[e].startsWith("workspace:"))if(i[e])o[e]=`^${i[e]}`;else throw new Error(`Workspace dependency ${e} not found in workspace packages.`)}}return writeFile(g,await format(JSON.stringify(c),{parser:"json",proseWrap:"preserve",trailingComma:"none",tabWidth:2,semi:true,singleQuote:false,quoteProps:"as-needed",insertPragma:false,bracketSameLine:true,printWidth:80,bracketSpacing:true,arrowParens:"avoid",endOfLine:"lf",plugins:[J]}))}export{F as a};
@@ -1 +1 @@
1
- 'use strict';var chunkQEDDZEJV_cjs=require('../chunk-QEDDZEJV.cjs');require('../chunk-WAL5SD4G.cjs'),require('../chunk-66TU3CP3.cjs');Object.defineProperty(exports,"getCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.b}});Object.defineProperty(exports,"getCatalogSafe",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.a}});Object.defineProperty(exports,"saveCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.e}});Object.defineProperty(exports,"setCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.c}});Object.defineProperty(exports,"upgradeCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.d}});
1
+ 'use strict';var chunkCSMRW24D_cjs=require('../chunk-CSMRW24D.cjs');require('../chunk-WAL5SD4G.cjs'),require('../chunk-66TU3CP3.cjs');Object.defineProperty(exports,"getCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.b}});Object.defineProperty(exports,"getCatalogSafe",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.a}});Object.defineProperty(exports,"saveCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.e}});Object.defineProperty(exports,"setCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.c}});Object.defineProperty(exports,"upgradeCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.d}});
@@ -1 +1 @@
1
- export{b as getCatalog,a as getCatalogSafe,e as saveCatalog,c as setCatalog,d as upgradeCatalog}from'../chunk-YTASAMLT.js';import'../chunk-7QKHH2VM.js';import'../chunk-6RUWDFGG.js';
1
+ export{b as getCatalog,a as getCatalogSafe,e as saveCatalog,c as setCatalog,d as upgradeCatalog}from'../chunk-BK3A4HJ7.js';import'../chunk-7QKHH2VM.js';import'../chunk-6RUWDFGG.js';
@@ -1 +1 @@
1
- 'use strict';require('../chunk-3CHW2FOO.cjs');var chunkEBCTMDFX_cjs=require('../chunk-EBCTMDFX.cjs'),chunkQEDDZEJV_cjs=require('../chunk-QEDDZEJV.cjs');require('../chunk-WAL5SD4G.cjs');var chunkGC3KXELW_cjs=require('../chunk-GC3KXELW.cjs'),chunk66TU3CP3_cjs=require('../chunk-66TU3CP3.cjs');Object.defineProperty(exports,"replaceDepsAliases",{enumerable:true,get:function(){return chunkEBCTMDFX_cjs.a}});Object.defineProperty(exports,"getCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.b}});Object.defineProperty(exports,"getCatalogSafe",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.a}});Object.defineProperty(exports,"saveCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.e}});Object.defineProperty(exports,"setCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.c}});Object.defineProperty(exports,"upgradeCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.d}});Object.defineProperty(exports,"getWorkspaceFilePath",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.a}});Object.defineProperty(exports,"readWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.b}});Object.defineProperty(exports,"writeWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.c}});Object.defineProperty(exports,"getCatalogFromPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.j}});Object.defineProperty(exports,"getRootPackageJsonPath",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.h}});Object.defineProperty(exports,"readRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.i}});Object.defineProperty(exports,"setCatalogInPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.k}});Object.defineProperty(exports,"writeRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.l}});
1
+ 'use strict';require('../chunk-3CHW2FOO.cjs');var chunkCQ5GEVIG_cjs=require('../chunk-CQ5GEVIG.cjs'),chunkCSMRW24D_cjs=require('../chunk-CSMRW24D.cjs');require('../chunk-WAL5SD4G.cjs');var chunkGC3KXELW_cjs=require('../chunk-GC3KXELW.cjs'),chunk66TU3CP3_cjs=require('../chunk-66TU3CP3.cjs');Object.defineProperty(exports,"replaceDepsAliases",{enumerable:true,get:function(){return chunkCQ5GEVIG_cjs.a}});Object.defineProperty(exports,"getCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.b}});Object.defineProperty(exports,"getCatalogSafe",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.a}});Object.defineProperty(exports,"saveCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.e}});Object.defineProperty(exports,"setCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.c}});Object.defineProperty(exports,"upgradeCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.d}});Object.defineProperty(exports,"getWorkspaceFilePath",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.a}});Object.defineProperty(exports,"readWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.b}});Object.defineProperty(exports,"writeWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.c}});Object.defineProperty(exports,"getCatalogFromPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.j}});Object.defineProperty(exports,"getRootPackageJsonPath",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.h}});Object.defineProperty(exports,"readRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.i}});Object.defineProperty(exports,"setCatalogInPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.k}});Object.defineProperty(exports,"writeRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.l}});
@@ -1 +1 @@
1
- import'../chunk-PJBAL7AE.js';export{a as replaceDepsAliases}from'../chunk-4TXVMOZB.js';export{b as getCatalog,a as getCatalogSafe,e as saveCatalog,c as setCatalog,d as upgradeCatalog}from'../chunk-YTASAMLT.js';import'../chunk-7QKHH2VM.js';export{a as getWorkspaceFilePath,b as readWorkspaceFile,c as writeWorkspaceFile}from'../chunk-KWVKMOA5.js';export{j as getCatalogFromPackageJson,h as getRootPackageJsonPath,i as readRootPackageJson,k as setCatalogInPackageJson,l as writeRootPackageJson}from'../chunk-6RUWDFGG.js';
1
+ import'../chunk-PJBAL7AE.js';export{a as replaceDepsAliases}from'../chunk-OCIVPOFS.js';export{b as getCatalog,a as getCatalogSafe,e as saveCatalog,c as setCatalog,d as upgradeCatalog}from'../chunk-BK3A4HJ7.js';import'../chunk-7QKHH2VM.js';export{a as getWorkspaceFilePath,b as readWorkspaceFile,c as writeWorkspaceFile}from'../chunk-KWVKMOA5.js';export{j as getCatalogFromPackageJson,h as getRootPackageJsonPath,i as readRootPackageJson,k as setCatalogInPackageJson,l as writeRootPackageJson}from'../chunk-6RUWDFGG.js';
@@ -1 +1 @@
1
- 'use strict';var chunkEBCTMDFX_cjs=require('../chunk-EBCTMDFX.cjs');require('../chunk-QEDDZEJV.cjs'),require('../chunk-WAL5SD4G.cjs'),require('../chunk-66TU3CP3.cjs');Object.defineProperty(exports,"replaceDepsAliases",{enumerable:true,get:function(){return chunkEBCTMDFX_cjs.a}});
1
+ 'use strict';var chunkCQ5GEVIG_cjs=require('../chunk-CQ5GEVIG.cjs');require('../chunk-CSMRW24D.cjs'),require('../chunk-WAL5SD4G.cjs'),require('../chunk-66TU3CP3.cjs');Object.defineProperty(exports,"replaceDepsAliases",{enumerable:true,get:function(){return chunkCQ5GEVIG_cjs.a}});
@@ -1 +1 @@
1
- export{a as replaceDepsAliases}from'../chunk-4TXVMOZB.js';import'../chunk-YTASAMLT.js';import'../chunk-7QKHH2VM.js';import'../chunk-6RUWDFGG.js';
1
+ export{a as replaceDepsAliases}from'../chunk-OCIVPOFS.js';import'../chunk-BK3A4HJ7.js';import'../chunk-7QKHH2VM.js';import'../chunk-6RUWDFGG.js';
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';require('./chunk-SFZRYJZ2.cjs'),require('./chunk-3CHW2FOO.cjs');var chunkEBCTMDFX_cjs=require('./chunk-EBCTMDFX.cjs'),chunkQEDDZEJV_cjs=require('./chunk-QEDDZEJV.cjs');require('./chunk-WAL5SD4G.cjs');var chunkGC3KXELW_cjs=require('./chunk-GC3KXELW.cjs'),chunk66TU3CP3_cjs=require('./chunk-66TU3CP3.cjs');Object.defineProperty(exports,"replaceDepsAliases",{enumerable:true,get:function(){return chunkEBCTMDFX_cjs.a}});Object.defineProperty(exports,"getCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.b}});Object.defineProperty(exports,"getCatalogSafe",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.a}});Object.defineProperty(exports,"saveCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.e}});Object.defineProperty(exports,"setCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.c}});Object.defineProperty(exports,"upgradeCatalog",{enumerable:true,get:function(){return chunkQEDDZEJV_cjs.d}});Object.defineProperty(exports,"getWorkspaceFilePath",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.a}});Object.defineProperty(exports,"readWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.b}});Object.defineProperty(exports,"writeWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.c}});Object.defineProperty(exports,"getCatalogFromPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.j}});Object.defineProperty(exports,"getRootPackageJsonPath",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.h}});Object.defineProperty(exports,"readRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.i}});Object.defineProperty(exports,"setCatalogInPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.k}});Object.defineProperty(exports,"writeRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.l}});
1
+ 'use strict';require('./chunk-SFZRYJZ2.cjs'),require('./chunk-3CHW2FOO.cjs');var chunkCQ5GEVIG_cjs=require('./chunk-CQ5GEVIG.cjs'),chunkCSMRW24D_cjs=require('./chunk-CSMRW24D.cjs');require('./chunk-WAL5SD4G.cjs');var chunkGC3KXELW_cjs=require('./chunk-GC3KXELW.cjs'),chunk66TU3CP3_cjs=require('./chunk-66TU3CP3.cjs');Object.defineProperty(exports,"replaceDepsAliases",{enumerable:true,get:function(){return chunkCQ5GEVIG_cjs.a}});Object.defineProperty(exports,"getCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.b}});Object.defineProperty(exports,"getCatalogSafe",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.a}});Object.defineProperty(exports,"saveCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.e}});Object.defineProperty(exports,"setCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.c}});Object.defineProperty(exports,"upgradeCatalog",{enumerable:true,get:function(){return chunkCSMRW24D_cjs.d}});Object.defineProperty(exports,"getWorkspaceFilePath",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.a}});Object.defineProperty(exports,"readWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.b}});Object.defineProperty(exports,"writeWorkspaceFile",{enumerable:true,get:function(){return chunkGC3KXELW_cjs.c}});Object.defineProperty(exports,"getCatalogFromPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.j}});Object.defineProperty(exports,"getRootPackageJsonPath",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.h}});Object.defineProperty(exports,"readRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.i}});Object.defineProperty(exports,"setCatalogInPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.k}});Object.defineProperty(exports,"writeRootPackageJson",{enumerable:true,get:function(){return chunk66TU3CP3_cjs.l}});
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import'./chunk-GGNOJ77I.js';import'./chunk-PJBAL7AE.js';export{a as replaceDepsAliases}from'./chunk-4TXVMOZB.js';export{b as getCatalog,a as getCatalogSafe,e as saveCatalog,c as setCatalog,d as upgradeCatalog}from'./chunk-YTASAMLT.js';import'./chunk-7QKHH2VM.js';export{a as getWorkspaceFilePath,b as readWorkspaceFile,c as writeWorkspaceFile}from'./chunk-KWVKMOA5.js';export{j as getCatalogFromPackageJson,h as getRootPackageJsonPath,i as readRootPackageJson,k as setCatalogInPackageJson,l as writeRootPackageJson}from'./chunk-6RUWDFGG.js';
1
+ import'./chunk-GGNOJ77I.js';import'./chunk-PJBAL7AE.js';export{a as replaceDepsAliases}from'./chunk-OCIVPOFS.js';export{b as getCatalog,a as getCatalogSafe,e as saveCatalog,c as setCatalog,d as upgradeCatalog}from'./chunk-BK3A4HJ7.js';import'./chunk-7QKHH2VM.js';export{a as getWorkspaceFilePath,b as readWorkspaceFile,c as writeWorkspaceFile}from'./chunk-KWVKMOA5.js';export{j as getCatalogFromPackageJson,h as getRootPackageJsonPath,i as readRootPackageJson,k as setCatalogInPackageJson,l as writeRootPackageJson}from'./chunk-6RUWDFGG.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@storm-software/bun-tools",
3
- "version": "0.0.42",
3
+ "version": "0.0.44",
4
4
  "private": false,
5
5
  "description": "A set of [Bun](https://bun.sh/) plugins and utilities for managing workspace packages/dependencies.",
6
6
  "repository": {
@@ -73,10 +73,10 @@
73
73
  "storm-bun-esm": "./bin/bun.js"
74
74
  },
75
75
  "dependencies": {
76
- "@storm-software/config": "^1.138.66",
77
- "@storm-software/config-tools": "^1.190.130",
78
- "@storm-software/npm-tools": "^0.6.249",
79
- "@storm-software/package-constants": "^0.1.142",
76
+ "@storm-software/config": "1.138.67",
77
+ "@storm-software/config-tools": "1.190.131",
78
+ "@storm-software/npm-tools": "0.6.251",
79
+ "@storm-software/package-constants": "0.1.143",
80
80
  "chalk": "^4.1.2",
81
81
  "commander": "^12.1.0",
82
82
  "defu": "^6.1.7",
@@ -87,5 +87,5 @@
87
87
  },
88
88
  "devDependencies": { "@types/node": "^25.9.5", "tsup": "8.4.0" },
89
89
  "publishConfig": { "access": "public" },
90
- "gitHead": "aec6740206e81d783bcc058942f25bec92017913"
90
+ "gitHead": "1bb5e5064631770d695317f7f5445e1622e9571a"
91
91
  }