zyrk 0.6.7 → 0.6.9
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 +20 -3
- package/VERSION +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +45 -1
- package/dist/install/platform.d.ts +4 -0
- package/dist/install/platform.d.ts.map +1 -1
- package/dist/install/platform.js +11 -0
- package/dist/install/run.d.ts.map +1 -1
- package/dist/install/run.js +5 -2
- package/dist/install/workspace-install.d.ts.map +1 -1
- package/dist/install/workspace-install.js +5 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -104,8 +104,10 @@ Offline installs use locked verified sources and fail if an input is missing.
|
|
|
104
104
|
Manifest, lock, and projection changes are journaled for process-crash recovery;
|
|
105
105
|
a failed resolution, verification, or build-policy check keeps the prior graph.
|
|
106
106
|
|
|
107
|
-
Dependency install
|
|
108
|
-
|
|
107
|
+
Dependency `preinstall`, `install`, and `postinstall` scripts (plus implicit
|
|
108
|
+
`binding.gyp` builds) are supported and run during `zyrk install` after you
|
|
109
|
+
approve the exact reviewed candidates. Unreviewed package code stays blocked.
|
|
110
|
+
Review first, trust the selected sources, then install:
|
|
109
111
|
|
|
110
112
|
```bash
|
|
111
113
|
zyrk approve-builds # inspect exact sources and commands; executes no package code
|
|
@@ -125,6 +127,18 @@ hooks never run automatically. A project can request runtime writable packages
|
|
|
125
127
|
with `"zyrk": { "mutablePackages": ["package-name"] }`; this also uses a complete
|
|
126
128
|
private graph.
|
|
127
129
|
|
|
130
|
+
### Run project scripts
|
|
131
|
+
|
|
132
|
+
Use `zyrk run <script>` or the package-manager shortcut `zyrk <script>`; both
|
|
133
|
+
use the same project-script policy, installed-generation checks, and local
|
|
134
|
+
binary path. Arguments after `--` are passed to the script:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
zyrk dev
|
|
138
|
+
zyrk test -- --watch
|
|
139
|
+
zyrk run build
|
|
140
|
+
```
|
|
141
|
+
|
|
128
142
|
Default registry and authentication settings are loaded from user/project
|
|
129
143
|
`.npmrc` for installation, dependency edits, `dlx`, and `create`. Environment
|
|
130
144
|
token placeholders are supported. Credentials are restricted to their configured
|
|
@@ -136,7 +150,10 @@ registry; private names never fall back to a public endpoint. Disabled TLS
|
|
|
136
150
|
verification is rejected before lookup. Git sources and non-workspace local sources remain unsupported;
|
|
137
151
|
they fail explicitly. Optional dependencies incompatible with the selected platform
|
|
138
152
|
are omitted; missing packages, integrity failures, and other optional failures
|
|
139
|
-
remain errors.
|
|
153
|
+
remain errors. Platform-specific optional packages that do not match this machine
|
|
154
|
+
are summarized once after installation; these are normal variants for packages
|
|
155
|
+
supporting multiple operating systems and CPUs. Locks retain exact
|
|
156
|
+
platform-qualified optional variants; each machine
|
|
140
157
|
selects its compatible local closure without rewriting the lock or recording store
|
|
141
158
|
paths. Older platform-pruned locks need an intentional non-frozen refresh; incomplete
|
|
142
159
|
npm locks must be freshly resolved before portable adoption. macOS, Windows, and
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
v0.6.
|
|
1
|
+
v0.6.9
|
package/dist/cli/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAe,SAAS,EAAe,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAoB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAM3C,OAAO,EAAqC,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAEhF,eAAO,MAAM,uBAAuB,IAAI,CAAC;AA6DzC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA0BhD;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA6EF;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,GACnD,SAAS,CAgDX;AAmBD,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,MAAM,EAAE;QAAE,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAC1C,MAAM,EAAE;QAAE,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3D,WAAW,CAAC,EAAE,MAAM,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;CACxC,CAAC;AAEF,gFAAgF;AAChF,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CA+epE"}
|
package/dist/cli/main.js
CHANGED
|
@@ -12,6 +12,7 @@ import { sanitizeDiagnostic, redactSecrets } from "../log.js";
|
|
|
12
12
|
import { installProject } from "../install/run.js";
|
|
13
13
|
import { installRegistry } from "../install/registry.js";
|
|
14
14
|
import { readFileSync } from "node:fs";
|
|
15
|
+
import { readFile } from "node:fs/promises";
|
|
15
16
|
import * as path from "node:path";
|
|
16
17
|
import { fileURLToPath } from "node:url";
|
|
17
18
|
import { runCreate, starterSpecFor } from "../dlx/create.js";
|
|
@@ -22,7 +23,7 @@ import { runStoreCommand } from "../commands/store.js";
|
|
|
22
23
|
import { exitCodeFor, ZyrkError, toZyrkError } from "../errors.js";
|
|
23
24
|
export { ZyrkError };
|
|
24
25
|
import { DEFAULT_REGISTRY, RegistryClient } from "../fetch/registry.js";
|
|
25
|
-
import { resolveStoreRoot } from "../config/paths.js";
|
|
26
|
+
import { findProjectBoundary, resolveStoreRoot } from "../config/paths.js";
|
|
26
27
|
import { Store } from "../store/layout.js";
|
|
27
28
|
import { delegateToNpm, delegatedHelpLines, isDelegatedCommand, } from "./npm-delegate.js";
|
|
28
29
|
import { isGlobalInstallRequest, parseArgs } from "./parse.js";
|
|
@@ -89,6 +90,7 @@ export function helpText(version) {
|
|
|
89
90
|
`zyrk v${version} — one verified store per user, shared across projects through links.`,
|
|
90
91
|
"",
|
|
91
92
|
"Usage: zyrk <command> [args] [--json]",
|
|
93
|
+
" zyrk <script> [args] (shortcut for zyrk run <script> [args])",
|
|
92
94
|
"",
|
|
93
95
|
"Dependency commands:",
|
|
94
96
|
];
|
|
@@ -602,6 +604,48 @@ export async function runCli(options) {
|
|
|
602
604
|
return emit(fail(toZyrkError(error, `zyrk ${parsed.command} failed.`), parsed));
|
|
603
605
|
}
|
|
604
606
|
}
|
|
607
|
+
// Package scripts are accepted as ergonomic aliases for `zyrk run <name>`.
|
|
608
|
+
// Route through the same project runner so policy, generation leases,
|
|
609
|
+
// local-bin PATH and lifecycle environment stay identical.
|
|
610
|
+
if (!parsed.help &&
|
|
611
|
+
!parsed.version &&
|
|
612
|
+
parsed.command !== undefined &&
|
|
613
|
+
!KNOWN_COMMANDS.has(parsed.command) &&
|
|
614
|
+
parsed.argsBeforeCommand.length === 0) {
|
|
615
|
+
const cwd = options.cwd ?? process.cwd();
|
|
616
|
+
const boundary = await findProjectBoundary(cwd);
|
|
617
|
+
if (boundary) {
|
|
618
|
+
let declared = false;
|
|
619
|
+
try {
|
|
620
|
+
const manifest = JSON.parse(await readFile(path.join(boundary, "package.json"), "utf8"));
|
|
621
|
+
if (manifest.scripts !== null &&
|
|
622
|
+
typeof manifest.scripts === "object" &&
|
|
623
|
+
!Array.isArray(manifest.scripts) &&
|
|
624
|
+
typeof manifest.scripts[parsed.command] === "string")
|
|
625
|
+
declared = true;
|
|
626
|
+
}
|
|
627
|
+
catch {
|
|
628
|
+
// Preserve the normal unknown-command diagnostic when no valid
|
|
629
|
+
// project script can be identified.
|
|
630
|
+
}
|
|
631
|
+
if (declared) {
|
|
632
|
+
try {
|
|
633
|
+
return await runProjectCommand({
|
|
634
|
+
command: "run",
|
|
635
|
+
args: [parsed.command, ...parsed.commandArgs],
|
|
636
|
+
cwd,
|
|
637
|
+
env: options.env,
|
|
638
|
+
stdout: options.stdout,
|
|
639
|
+
stderr: options.stderr,
|
|
640
|
+
json: parsed.json,
|
|
641
|
+
});
|
|
642
|
+
}
|
|
643
|
+
catch (error) {
|
|
644
|
+
return emit(fail(toZyrkError(error, `zyrk ${parsed.command} failed.`), parsed));
|
|
645
|
+
}
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
}
|
|
605
649
|
return emit(dispatch(parsed, { version, env: options.env }));
|
|
606
650
|
}
|
|
607
651
|
async function defaultTools(env, version, cwd = process.cwd()) {
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { type RuntimePlatform, type FinalizedGraph } from "../resolve/resolver.ts";
|
|
2
2
|
import type { WorkspaceGraph } from "./workspace-graph.ts";
|
|
3
|
+
/** Summarize expected platform filtering without emitting one warning per variant. */
|
|
4
|
+
export declare function platformOmissionSummary(omissions: readonly {
|
|
5
|
+
name: string;
|
|
6
|
+
}[]): string | undefined;
|
|
3
7
|
export declare function selectPlatformGraph(graph: FinalizedGraph, optionalRoots: ReadonlySet<string>, platform?: RuntimePlatform): FinalizedGraph;
|
|
4
8
|
export declare function selectWorkspacePlatform(graph: WorkspaceGraph, platform?: RuntimePlatform, omitDev?: boolean): WorkspaceGraph;
|
|
5
9
|
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/install/platform.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/install/platform.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,sFAAsF;AACtF,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GACrC,MAAM,GAAG,SAAS,CAQpB;AAsGD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,cAAc,EACrB,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,EAClC,QAAQ,kBAAoB,GAC3B,cAAc,CAqBhB;AACD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,cAAc,EACrB,QAAQ,kBAAoB,EAC5B,OAAO,UAAQ,GACd,cAAc,CA+BhB"}
|
package/dist/install/platform.js
CHANGED
|
@@ -3,6 +3,17 @@ import { satisfies } from "semver";
|
|
|
3
3
|
import { ZyrkError } from "../errors.js";
|
|
4
4
|
import { currentPlatform, } from "../resolve/resolver.js";
|
|
5
5
|
import { lockMismatch } from "./lock.js";
|
|
6
|
+
/** Summarize expected platform filtering without emitting one warning per variant. */
|
|
7
|
+
export function platformOmissionSummary(omissions) {
|
|
8
|
+
if (omissions.length === 0)
|
|
9
|
+
return undefined;
|
|
10
|
+
const packages = new Set(omissions.map((item) => item.name));
|
|
11
|
+
const entries = omissions.length;
|
|
12
|
+
const variants = packages.size;
|
|
13
|
+
const entryLabel = `${entries} platform-specific optional ${entries === 1 ? "dependency" : "dependencies"}`;
|
|
14
|
+
const packageLabel = `${variants} ${variants === 1 ? "package variant" : "package variants"}`;
|
|
15
|
+
return `Skipped ${entryLabel} across ${packageLabel}; this is expected when selecting dependencies for the current platform.`;
|
|
16
|
+
}
|
|
6
17
|
function compatible(node, platform) {
|
|
7
18
|
return ([
|
|
8
19
|
[node.platform?.os, platform.os],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/install/run.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/install/run.ts"],"names":[],"mappings":"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"}
|
package/dist/install/run.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { sourceProgress, reportLinked } from "./progress.js";
|
|
2
|
-
import { selectPlatformGraph } from "./platform.js";
|
|
2
|
+
import { platformOmissionSummary, selectPlatformGraph } from "./platform.js";
|
|
3
3
|
import { findWorkspaceRoot } from "./workspaces.js";
|
|
4
4
|
import { assertSupportedSourcePayload } from "./source-policy.js";
|
|
5
5
|
import { prepareRepair } from "./repair.js";
|
|
@@ -420,7 +420,10 @@ export async function installProject(options) {
|
|
|
420
420
|
name: "package.json",
|
|
421
421
|
contents: `${JSON.stringify(manifest, null, 2)}\n`,
|
|
422
422
|
});
|
|
423
|
-
const warnings =
|
|
423
|
+
const warnings = [];
|
|
424
|
+
const omissionSummary = platformOmissionSummary(activeResolution.omissions ?? []);
|
|
425
|
+
if (omissionSummary)
|
|
426
|
+
warnings.push(omissionSummary);
|
|
424
427
|
for (const stage of ["preinstall", "install", "postinstall"])
|
|
425
428
|
if (manifest.scripts?.[stage])
|
|
426
429
|
warnings.push(`Root ${stage} hook was not run; invoke it explicitly after installation.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-install.d.ts","sourceRoot":"","sources":["../../src/install/workspace-install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workspace-install.d.ts","sourceRoot":"","sources":["../../src/install/workspace-install.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAuH9D,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAqrBxB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { sourceProgress, reportLinked } from "./progress.js";
|
|
2
|
-
import { selectWorkspacePlatform } from "./platform.js";
|
|
2
|
+
import { platformOmissionSummary, selectWorkspacePlatform, } from "./platform.js";
|
|
3
3
|
/** Multi-importer live workspace installation with one publication journal. */
|
|
4
4
|
import { chmod, copyFile, lstat, mkdir, readFile, realpath, rename, rm, symlink, } from "node:fs/promises";
|
|
5
5
|
import { constants } from "node:fs";
|
|
@@ -191,7 +191,10 @@ export async function installWorkspaceProject(options) {
|
|
|
191
191
|
? await readFile(path.join(root, "package-lock.json"), "utf8")
|
|
192
192
|
: JSON.stringify(doc, null, 2) + "\n";
|
|
193
193
|
graph = selectWorkspacePlatform(graph, options.platform, options.omitDev);
|
|
194
|
-
const warnings =
|
|
194
|
+
const warnings = [];
|
|
195
|
+
const omissionSummary = platformOmissionSummary(graph.omissions);
|
|
196
|
+
if (omissionSummary)
|
|
197
|
+
warnings.push(omissionSummary);
|
|
195
198
|
for (const importer of project.importers)
|
|
196
199
|
for (const stage of ["preinstall", "install", "postinstall"])
|
|
197
200
|
if (importer.manifest.scripts?.[stage])
|