@malloydata/cli 0.0.52-next.2026.3.24.d1b4712 → 0.0.52-next.2026.3.25.547b0d1

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.js CHANGED
@@ -4399,7 +4399,7 @@ Use 'malloy connections describe <type>' to see properties.`);return}e.includes(
4399
4399
  ${sUn(t)}`)}async function lUn(t){let e=Dtr(t);e||Qo(`A connection named ${t} could not be found`);let n=await new QD.MalloyConfig(JSON.stringify({connections:{[t]:e}})).connections.lookupConnection(t);try{await n.test(),m0("Connection test successful")}catch(i){Qo(`Connection test unsuccessful: ${_f(i)}`)}}function AUn(t){let e=Kc.connectionMap?.[t];e||Qo(`Could not find a connection named ${t}`);let r=(0,QD.getConnectionProperties)(e.is),n=new Set(r?.filter(s=>s.type==="password"||s.type==="secret").map(s=>s.name)??[]),i={name:t};for(let[s,o]of Object.entries(e))i[s]=n.has(s)&&o?"****":o;m0(JSON.stringify(i,null,4))}function dUn(){let t=Kc.connectionMap??{},e=Object.keys(t);if(e.length>0)for(let r of e)m0(`${r}:
4400
4400
  type: ${t[r].is}`);else m0("No connections found")}function pUn(t){let e=Kc.connectionMap;e&&e[t]?(delete e[t],Kc.connectionMap=e,Het(),m0(`${t} removed from connections`)):Qo(`Could not find a connection named ${t}`)}var fUn=Et(require("path"));var hUn=Et(require("fs"));function gUn(){m0(hUn.default.readFileSync(fUn.default.join(__dirname,"third_party_notices.txt")).toString())}async function EUn(t,e,r){await ett(t,e,r,!0)}var KCe=Et(require("fs")),n9=Et(require("path")),CUn=Et(require("url")),f0=Et(Ttr()),IUn=Et(qc());function mUn(t){let e=[],r=new Set;function n(i){if(!r.has(i.sourceID)){for(let s of i.dependsOn)n(s);r.add(i.sourceID),e.push(i)}}for(let i of t)n(i);return e}async function Q6o(t,e,r,n){let i=e.dialect.quoteTablePath(r);await t.runSQL(`DROP TABLE IF EXISTS ${i}`),await t.runSQL(`CREATE TABLE ${i} AS ${n}`)}function z6o(t){let e=[];for(let r of t){let n=n9.default.resolve(r),i;try{i=KCe.default.statSync(n)}catch{Qo(`Path not found: ${r}`)}i.isDirectory()?yUn(n,e):n.endsWith(".malloy")?e.push(n):Qo(`Not a .malloy file: ${r}`)}return e}function yUn(t,e){for(let r of KCe.default.readdirSync(t,{withFileTypes:!0})){let n=n9.default.join(t,r.name);r.isDirectory()?yUn(n,e):r.name.endsWith(".malloy")&&e.push(n)}}async function bUn(t,e){let r=z6o(t.length>0?t:["."]);if(r.length===0){m0("No .malloy files found.");return}let n=Kc.manifest,i=n.buildManifest,s=!KCe.default.existsSync(Ctr()),o={},a=0,c=0,u=0;for(let A of r){let p=CUn.default.pathToFileURL(A),f=n9.default.relative(process.cwd(),A),h=new IUn.Runtime({config:Kc,urlReader:K5,connections:vD(p)}),E;try{E=await h.loadModel(p).getModel()}catch(C){m0(`
4401
4401
  ${f0.default.bold(f)}`),m0(` ${f0.default.red("\u2717")} ${f0.default.red(`failed to compile: ${C instanceof Error?C.message:C}`)}`),u++;continue}let m;try{m=E.getBuildPlan()}catch{continue}if(!(m.tagParseLog.length===0&&m.graphs.length===0)){m0(`
4402
- ${f0.default.bold(f)}`);for(let C of m.tagParseLog)m0(` ${f0.default.red("\u2717")} ${f0.default.red(`tag parse error: ${C.message}`)}`),u++;if(m.graphs.length!==0)for(let C of m.graphs){let y=C.connectionName;if(!(y in o)){let w=vD(p),P;try{P=await w.lookupConnection(y)}catch(Z){m0(` ${f0.default.red("\u2717")} ${f0.default.red(`connection "${y}" not found: ${Z instanceof Error?Z.message:Z}`)}`),u++;continue}o[y]=P.getDigest()}let B=C.nodes.flatMap(w=>w.flatMap(P=>mUn([P]))),R=new Set,M=B.filter(w=>R.has(w.sourceID)?!1:(R.add(w.sourceID),!0));for(let w of M){let P=m.sources[w.sourceID];if(!P)continue;let te=P.tagParse({prefix:/^#@ /}).tag.text("name");if(!te){m0(` ${f0.default.red("\u2717")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.red("#@ persist requires a name (e.g. #@ persist name=my_table)")}`),u++;continue}let re=`${y}:${te}`,b=e.refresh.has(re),k=P.getSQL({buildManifest:i,connectionDigests:o}),Q=P.makeBuildId(o[y],k);if(i.entries[Q]&&!b){n.touch(Q),m0(` ${f0.default.green("\u2713")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.dim("up to date")}`),c++;continue}if(e.dryRun){let v=b?"refresh":"new";m0(` ${f0.default.yellow("\u25CB")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.yellow(`would build (${v})`)} \u2192 ${te}`),a++;continue}let I=Date.now();try{let N=await vD(p).lookupConnection(y);await Q6o(N,P,te,k);let K=((Date.now()-I)/1e3).toFixed(1);n.update(Q,{tableName:te}),m0(` ${f0.default.green("\u2713")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.green("built")} ${f0.default.dim(`(${K}s)`)} \u2192 ${te}`),a++}catch(v){m0(` ${f0.default.red("\u2717")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.red(`build failed: ${v instanceof Error?v.message:v}`)}`),u++}}}}}if(!e.dryRun&&(a>0||c>0)){s&&(n.strict=!0);let A=Ctr();q0e(n9.default.dirname(A),`Could not create manifest directory at ${n9.default.dirname(A)}`),KCe.default.writeFileSync(A,JSON.stringify(n.activeEntries,null,2)),m0(`
4402
+ ${f0.default.bold(f)}`);for(let C of m.tagParseLog)m0(` ${f0.default.red("\u2717")} ${f0.default.red(`tag parse error: ${C.message}`)}`),u++;if(m.graphs.length!==0)for(let C of m.graphs){let y=C.connectionName;if(!(y in o)){let w=vD(p),P;try{P=await w.lookupConnection(y)}catch(Z){m0(` ${f0.default.red("\u2717")} ${f0.default.red(`connection "${y}" not found: ${Z instanceof Error?Z.message:Z}`)}`),u++;continue}o[y]=P.getDigest()}let B=C.nodes.flatMap(w=>w.flatMap(P=>mUn([P]))),R=new Set,M=B.filter(w=>R.has(w.sourceID)?!1:(R.add(w.sourceID),!0));for(let w of M){let P=m.sources[w.sourceID];if(!P)continue;let te=P.tagParse({prefix:/^#@ /}).tag.text("name");if(!te){m0(` ${f0.default.red("\u2717")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.red("#@ persist requires a name (e.g. #@ persist name=my_table)")}`),u++;continue}let re=`${y}:${te}`,b=e.refresh.has(re),k=P.getSQL({buildManifest:i,connectionDigests:o}),Q=P.makeBuildId(o[y],P.getSQL());if(i.entries[Q]&&!b){n.touch(Q),m0(` ${f0.default.green("\u2713")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.dim("up to date")}`),c++;continue}if(e.dryRun){let v=b?"refresh":"new";m0(` ${f0.default.yellow("\u25CB")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.yellow(`would build (${v})`)} \u2192 ${te}`),a++;continue}let I=Date.now();try{let N=await vD(p).lookupConnection(y);await Q6o(N,P,te,k);let K=((Date.now()-I)/1e3).toFixed(1);n.update(Q,{tableName:te}),m0(` ${f0.default.green("\u2713")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.green("built")} ${f0.default.dim(`(${K}s)`)} \u2192 ${te}`),a++}catch(v){m0(` ${f0.default.red("\u2717")} ${P.name} ${f0.default.dim(`(${y})`)} \u2014 ${f0.default.red(`build failed: ${v instanceof Error?v.message:v}`)}`),u++}}}}}if(!e.dryRun&&(a>0||c>0)){s&&(n.strict=!0);let A=Ctr();q0e(n9.default.dirname(A),`Could not create manifest directory at ${n9.default.dirname(A)}`),KCe.default.writeFileSync(A,JSON.stringify(n.activeEntries,null,2)),m0(`
4403
4403
  Manifest written: ${f0.default.dim(n9.default.relative(process.cwd(),A))}`)}let l=[];a>0&&l.push(f0.default.green(`${a} ${e.dryRun?"to build":"built"}`)),c>0&&l.push(f0.default.dim(`${c} up to date`)),u>0&&l.push(f0.default.red(`${u} errors`)),l.length>0&&m0(`
4404
4404
  ${e.dryRun?"Dry run":"Build"} complete: ${l.join(", ")}`),u>0&&process.env.NODE_ENV!=="test"&&process.exit(1)}async function _Un(t,e){let r=new Set(e.refresh??[]);await bUn(t,{refresh:r,dryRun:e.dryRun===!0})}var L6o=`compile a Malloy file (.malloy or .malloysql)
4405
4405
 
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- process.MALLOY_CLI_VERSION="0.0.52-next.2026.3.24.d1b4712";
2
+ process.MALLOY_CLI_VERSION="0.0.52-next.2026.3.25.547b0d1";
3
3
  require('./cli.js')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@malloydata/cli",
3
- "version": "0.0.52-next.2026.3.24.d1b4712",
3
+ "version": "0.0.52-next.2026.3.25.547b0d1",
4
4
  "description": "Malloy CLI",
5
5
  "bin": {
6
6
  "malloy-cli": "dist/index.js",