socket 1.1.118 → 1.1.120
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 +13 -1
- package/README.md +1 -0
- package/dist/cli.js +622 -82
- package/dist/cli.js.map +1 -1
- package/dist/constants.js +4 -4
- package/dist/constants.js.map +1 -1
- package/dist/tsconfig.dts.tsbuildinfo +1 -1
- package/dist/types/commands/manifest/bazel/bazel-cquery.d.mts.map +1 -1
- package/dist/types/commands/manifest/bazel/bazel-query-runner.d.mts.map +1 -1
- package/dist/types/commands/manifest/bazel/bazel-repo-discovery.d.mts +28 -1
- package/dist/types/commands/manifest/bazel/bazel-repo-discovery.d.mts.map +1 -1
- package/dist/types/commands/manifest/bazel/cmd-manifest-bazel.d.mts +5 -0
- package/dist/types/commands/manifest/bazel/cmd-manifest-bazel.d.mts.map +1 -1
- package/dist/types/commands/manifest/bazel/extract_bazel_to_maven.d.mts +43 -3
- package/dist/types/commands/manifest/bazel/extract_bazel_to_maven.d.mts.map +1 -1
- package/dist/types/commands/manifest/generate_auto_manifest.d.mts.map +1 -1
- package/dist/types/commands/scan/cmd-scan-create.d.mts.map +1 -1
- package/dist/types/commands/scan/perform-reachability-analysis.d.mts +2 -0
- package/dist/types/commands/scan/perform-reachability-analysis.d.mts.map +1 -1
- package/dist/types/utils/auto-manifest-config.d.mts +55 -0
- package/dist/types/utils/auto-manifest-config.d.mts.map +1 -0
- package/dist/types/utils/dlx.d.mts +4 -3
- package/dist/types/utils/dlx.d.mts.map +1 -1
- package/dist/types/utils/socket-json.d.mts +1 -0
- package/dist/types/utils/socket-json.d.mts.map +1 -1
- package/dist/utils.js +136 -22
- package/dist/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bazel-cquery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-cquery.mts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,8EAA8E;AAC9E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAA;AAE3E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,MAAM,EAAE,YAAY,CAAA;IACpB,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B,uEAAuE;IACvE,yEAAyE;IACzE,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,uEAAuE;IACvE,yDAAyD;IACzD,kCAAkC;IAClC,gBAAgB,EAAE,MAAM,CAAA;IACxB,mEAAmE;IACnE,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,iBAAiB,CAAA;CACxB,CAAA;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,yBAAyB;AACzB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC3B,CAAA;AAqCD,yEAAyE;AACzE,kDAAkD;AAClD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,GACtB,MAAM,EAAE,CAwBV;AAyED,6EAA6E;AAC7E,mDAAmD;AACnD,wCAAwC;AACxC,+EAA+E;AAC/E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM3D;AAiKD,2DAA2D;AAC3D,+EAA+E;AAC/E,6EAA6E;AAC7E,oEAAoE;AACpE,uEAAuE;AACvE,0CAA0C;AAC1C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,GACvB,iBAAiB,CAmFnB;AAyBD,qEAAqE;AACrE,0EAA0E;AAC1E,oEAAoE;AACpE,0CAA0C;AAC1C,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"bazel-cquery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-cquery.mts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,8EAA8E;AAC9E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAA;AAE3E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,MAAM,EAAE,YAAY,CAAA;IACpB,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B,uEAAuE;IACvE,yEAAyE;IACzE,+DAA+D;IAC/D,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,uEAAuE;IACvE,yDAAyD;IACzD,kCAAkC;IAClC,gBAAgB,EAAE,MAAM,CAAA;IACxB,mEAAmE;IACnE,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,iBAAiB,CAAA;CACxB,CAAA;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,yBAAyB;AACzB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,iBAAiB,EAAE,CAAA;IAC9B,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAC3B,CAAA;AAqCD,yEAAyE;AACzE,kDAAkD;AAClD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,GACtB,MAAM,EAAE,CAwBV;AAyED,6EAA6E;AAC7E,mDAAmD;AACnD,wCAAwC;AACxC,+EAA+E;AAC/E,6EAA6E;AAC7E,6EAA6E;AAC7E,+EAA+E;AAC/E,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM3D;AAiKD,2DAA2D;AAC3D,+EAA+E;AAC/E,6EAA6E;AAC7E,oEAAoE;AACpE,uEAAuE;AACvE,0CAA0C;AAC1C,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,gBAAgB,EAAE,MAAM,GACvB,iBAAiB,CAmFnB;AAyBD,qEAAqE;AACrE,0EAA0E;AAC1E,oEAAoE;AACpE,0CAA0C;AAC1C,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CAwE3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bazel-query-runner.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-query-runner.mts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,0EAA0E;IAC1E,wEAAwE;IACxE,0EAA0E;IAC1E,mEAAmE;IACnE,sEAAsE;IACtE,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAQD,+DAA+D;AAC/D,+EAA6E;AAC7E,2EAA2E;AAC3E,eAAe;AACf,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAKnE;AAED,6EAA6E;AAC7E,2EAAyE;AACzE,sEAAsE;AACtE,0CAA0C;AAC1C,iBAAS,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAY5D;AAED,iBAAS,iCAAiC,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAU5E;AAED,iBAAS,mCAAmC,CAC1C,IAAI,EAAE,iBAAiB,GACtB,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"bazel-query-runner.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-query-runner.mts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,0EAA0E;IAC1E,wEAAwE;IACxE,0EAA0E;IAC1E,mEAAmE;IACnE,sEAAsE;IACtE,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAQD,+DAA+D;AAC/D,+EAA6E;AAC7E,2EAA2E;AAC3E,eAAe;AACf,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAKnE;AAED,6EAA6E;AAC7E,2EAAyE;AACzE,sEAAsE;AACtE,0CAA0C;AAC1C,iBAAS,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAY5D;AAED,iBAAS,iCAAiC,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAU5E;AAED,iBAAS,mCAAmC,CAC1C,IAAI,EAAE,iBAAiB,GACtB,MAAM,EAAE,CAkBV;AAED,iBAAS,iCAAiC,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAc5E;AAED,iBAAS,cAAc,CACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,EACvB,MAAM,SAAU,GACf,MAAM,EAAE,CAeV;AAED,4EAA4E;AAC5E,uEAAuE;AACvE,wDAAwD;AACxD,wEAAwE;AACxE,oDAAoD;AACpD,iBAAS,yBAAyB,CAChC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,GACtB,MAAM,EAAE,CAaV;AA4ED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,CAAC,CAsC3B;AAiCD;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAM3B;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAM3B;AAED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAM3B;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAUrE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAMpE;AAED,6EAA2E;AAC3E,2EAA2E;AAC3E,uBAAuB;AACvB,eAAO,MAAM,qBAAqB;;;;;;;CAOjC,CAAA"}
|
|
@@ -16,12 +16,39 @@ export type ProbeResult = {
|
|
|
16
16
|
stderr: string;
|
|
17
17
|
};
|
|
18
18
|
export type RepoProbe = (repoName: string) => Promise<ProbeResult>;
|
|
19
|
-
|
|
19
|
+
// `indeterminate` means the probe could not be classified: an unrecognized
|
|
20
|
+
// non-zero exit, or the probe threw outright (the Bazel invocation itself
|
|
21
|
+
// failed). It is NOT evidence that the repo is undefined — treating it as
|
|
22
|
+
// `not-defined` would silently under-report a hub that may well hold Maven
|
|
23
|
+
// deps. The orchestrator must propagate it so the run is never reported
|
|
24
|
+
// `complete` when a probe was indeterminate.
|
|
25
|
+
export type ProbeStatus = 'populated' | 'empty' | 'not-defined' | 'indeterminate';
|
|
20
26
|
// Conventional Maven hub names rules_jvm_external sets up under
|
|
21
27
|
// WORKSPACE-mode invocations. Probing each one is cheap (a failed visibility
|
|
22
28
|
// lookup never triggers a `repository_rule` fetch) so the orchestrator can
|
|
23
29
|
// try them all without paying the cost of a real cquery on undefined repos.
|
|
24
30
|
export declare const CONVENTIONAL_MAVEN_REPO_NAMES: readonly string[];
|
|
31
|
+
// Outcome of running `bazel mod show_extension` for the maven extension,
|
|
32
|
+
// distinct from the per-repo `ProbeStatus`:
|
|
33
|
+
// `not-defined` — authoritative: no maven extension in this workspace
|
|
34
|
+
// (clean run with zero kept hubs, OR rules_jvm_external is
|
|
35
|
+
// not in the dependency graph).
|
|
36
|
+
// `indeterminate` — enumeration could not be performed (eval/load failure,
|
|
37
|
+
// binary missing); the run must not be reported complete.
|
|
38
|
+
// `defined` — the report parsed and yielded one or more root hubs;
|
|
39
|
+
// the caller uses the parsed hub list directly.
|
|
40
|
+
export type ShowExtensionStatus = 'defined' | 'indeterminate' | 'not-defined';
|
|
41
|
+
// Classify a `bazel mod show_extension` result. `keptRootHubCount` is the
|
|
42
|
+
// number of root-imported hubs the caller parsed from a code-0 run (see
|
|
43
|
+
// `parseShowExtensionOutput` + the `<root>` importer filter); it disambiguates
|
|
44
|
+
// the code-0 cases without re-parsing here.
|
|
45
|
+
//
|
|
46
|
+
// IMPORTANT (security correctness): a non-zero exit is the DEFAULT outcome for
|
|
47
|
+
// every bzlmod repo that does not use rules_jvm_external, so we must NOT treat
|
|
48
|
+
// non-zero as indeterminate by default. We only escalate to `indeterminate`
|
|
49
|
+
// when stderr looks like a real evaluation/load failure; an argument/resolution
|
|
50
|
+
// error about the missing extension is the legitimate no-Maven case.
|
|
51
|
+
export declare function classifyShowExtensionResult(result: ProbeResult, keptRootHubCount: number): ShowExtensionStatus;
|
|
25
52
|
// Pure parser for `bazel mod show_extension @rules_jvm_external//:extensions.bzl%maven`
|
|
26
53
|
// stdout. Returns the hub repos listed under `Fetched repositories:` — i.e.
|
|
27
54
|
// items annotated with `(imported by ...)` — each carrying the set of modules
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bazel-repo-discovery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-repo-discovery.mts"],"names":[],"mappings":"AAgBA,0EAA0E;AAC1E,uEAAqE;AACrE,8EAA4E;AAC5E,yDAAyD;AACzD,eAAO,MAAM,oBAAoB,WAAW,CAAA;AAE5C,2EAA2E;AAC3E,+EAA6E;AAC7E,kCAAkC;AAClC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAElE,MAAM,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"bazel-repo-discovery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-repo-discovery.mts"],"names":[],"mappings":"AAgBA,0EAA0E;AAC1E,uEAAqE;AACrE,8EAA4E;AAC5E,yDAAyD;AACzD,eAAO,MAAM,oBAAoB,WAAW,CAAA;AAE5C,2EAA2E;AAC3E,+EAA6E;AAC7E,kCAAkC;AAClC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,EAAE,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAElE,2EAA2E;AAC3E,0EAA0E;AAC1E,4EAA0E;AAC1E,2EAA2E;AAC3E,wEAAwE;AACxE,6CAA6C;AAC7C,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,OAAO,GACP,aAAa,GACb,eAAe,CAAA;AAEnB,gEAAgE;AAChE,6EAA6E;AAC7E,2EAA2E;AAC3E,4EAA4E;AAC5E,eAAO,MAAM,6BAA6B,EAAE,SAAS,MAAM,EAM1D,CAAA;AAyED,yEAAyE;AACzE,4CAA4C;AAC5C,4EAA0E;AAC1E,+EAA+E;AAC/E,oDAAoD;AACpD,+EAA6E;AAC7E,8EAA8E;AAC9E,6EAA2E;AAC3E,oEAAoE;AACpE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,eAAe,GAAG,aAAa,CAAA;AAE7E,0EAA0E;AAC1E,wEAAwE;AACxE,+EAA+E;AAC/E,4CAA4C;AAC5C,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,4EAA4E;AAC5E,gFAAgF;AAChF,qEAAqE;AACrE,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,GACvB,mBAAmB,CAgCrB;AAED,wFAAwF;AACxF,8EAA4E;AAC5E,gFAA8E;AAC9E,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAC9E,8EAA8E;AAC9E,yEAAyE;AACzE,8EAA8E;AAC9E,UAAU;AACV,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,EAAE,CA0C5E;AAED,2EAA2E;AAC3E,2DAAyD;AACzD,wEAAwE;AACxE,wEAAwE;AACxE,6CAA6C;AAC7C,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CA6BpE;AAED,0EAA0E;AAC1E,qEAAqE;AACrE,qEAAqE;AACrE,+DAA+D;AAC/D,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,WAAW,CAAC,CAuBtB"}
|
|
@@ -9,6 +9,11 @@ export type EcosystemOutcome = {
|
|
|
9
9
|
ecosystem: 'maven' | 'pypi';
|
|
10
10
|
status: ExtractBazelStatus;
|
|
11
11
|
manifestPaths: string[];
|
|
12
|
+
// Machine-readable completeness signal. True only when the ecosystem's
|
|
13
|
+
// extraction was complete; a `partial` upload sets this false so the CLI
|
|
14
|
+
// surfaces it honestly (exit 0 + prominent warning) rather than as plain
|
|
15
|
+
// success.
|
|
16
|
+
complete: boolean;
|
|
12
17
|
};
|
|
13
18
|
// Pure outcome-matrix evaluator. Exported so dispatcher behavior can be
|
|
14
19
|
// unit-tested without spawning the CLI binary. Throws InputError on
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmd-manifest-bazel.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/cmd-manifest-bazel.mts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,0CAA0C,CAAA;
|
|
1
|
+
{"version":3,"file":"cmd-manifest-bazel.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/cmd-manifest-bazel.mts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,0CAA0C,CAAA;AA6FjD,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,OAAO,GAAG,MAAM,CAAA;IAC3B,MAAM,EAAE,kBAAkB,CAAA;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,uEAAuE;IACvE,yEAAyE;IACzE,yEAAyE;IACzE,WAAW;IACX,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED,wEAAwE;AACxE,oEAAoE;AACpE,uEAAuE;AACvE,WAAW;AACX,EAAE;AACF,uEAAuE;AACvE,+EAA6E;AAC7E,sBAAsB;AACtB,0EAA0E;AAC1E,oEAAoE;AACpE,yBAAyB;AACzB,6EAA6E;AAC7E,4EAA4E;AAC5E,uEAAuE;AACvE,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,EACrC,UAAU,EAAE,OAAO,GAClB,IAAI,CAwDN;AA2BD,iBAAe,GAAG,CAChB,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAClC,UAAU,EAAE,UAAU,EACtB,EAAE,UAAU,EAAE,EAAE,iBAAiB,GAChC,OAAO,CAAC,IAAI,CAAC,CA4Lf"}
|
|
@@ -19,9 +19,11 @@ export type ExtractBazelOptions = {
|
|
|
19
19
|
out: string;
|
|
20
20
|
// Use the auto-manifest sibling directory instead of writing directly to `out`.
|
|
21
21
|
outLayout?: 'flat';
|
|
22
|
-
// Per-repo cquery timeout in milliseconds.
|
|
23
|
-
//
|
|
24
|
-
//
|
|
22
|
+
// Per-repo cquery timeout in milliseconds. When the caller leaves this
|
|
23
|
+
// unset the orchestrator falls back to DEFAULT_PER_REPO_TIMEOUT_MS (the
|
|
24
|
+
// auto-manifest default, kept short so the wider scan is not stalled). The
|
|
25
|
+
// explicit `socket manifest bazel` command wires this to a CLI flag with a
|
|
26
|
+
// longer default.
|
|
25
27
|
perRepoTimeoutMs?: number | undefined;
|
|
26
28
|
verbose: boolean;
|
|
27
29
|
};
|
|
@@ -39,10 +41,48 @@ export type ExtractBazelOptions = {
|
|
|
39
41
|
// (discovery threw, or every discovered hub failed).
|
|
40
42
|
// Always an error for every caller.
|
|
41
43
|
export type ExtractBazelStatus = 'complete' | 'hardFailure' | 'noEcosystem' | 'partial';
|
|
44
|
+
// Per-hub extraction state inside one workspace. Recorded so the CLI can emit
|
|
45
|
+
// a machine-readable completeness signal instead of presenting a partial
|
|
46
|
+
// extraction as complete.
|
|
47
|
+
// - `populated` — the hub yielded >=1 artifact and a manifest was written.
|
|
48
|
+
// - `empty` — the hub is defined but has no Maven targets.
|
|
49
|
+
// - `not-defined` — the probed conventional name does not exist here.
|
|
50
|
+
// - `skipped-lockfile` — a committed maven_install.json already covers this
|
|
51
|
+
// hub, so the CLI deliberately did not re-emit it.
|
|
52
|
+
// - `failed` — the hub's cquery errored, timed out, or its graph was
|
|
53
|
+
// known-incomplete (dropped/pruned edges, --keep_going).
|
|
54
|
+
// - `indeterminate` — discovery could not classify the hub (probe threw or
|
|
55
|
+
// returned an unrecognized error); NOT evidence of absence.
|
|
56
|
+
export type HubState = 'populated' | 'empty' | 'not-defined' | 'skipped-lockfile' | 'failed' | 'indeterminate';
|
|
57
|
+
export type HubOutcome = {
|
|
58
|
+
hub: string;
|
|
59
|
+
state: HubState;
|
|
60
|
+
// Short, machine-stable reason when the hub is `failed`/`indeterminate`.
|
|
61
|
+
reason?: string | undefined;
|
|
62
|
+
};
|
|
63
|
+
// Per-workspace outcome. `load` distinguishes a workspace we could not even
|
|
64
|
+
// read (`failed` — e.g. an unbound-var MODULE.bazel fragment) from one we
|
|
65
|
+
// analyzed (`loaded`). A workspace that failed to load contributes to a
|
|
66
|
+
// hard failure when nothing else was analyzable, and to a partial otherwise.
|
|
67
|
+
export type WorkspaceOutcome = {
|
|
68
|
+
relPath: string;
|
|
69
|
+
load: 'loaded' | 'failed';
|
|
70
|
+
hubs: HubOutcome[];
|
|
71
|
+
// Set when the workspace itself could not be analyzed.
|
|
72
|
+
reason?: string | undefined;
|
|
73
|
+
};
|
|
42
74
|
export type ExtractBazelResult = {
|
|
43
75
|
artifactCount: number;
|
|
44
76
|
manifestPaths: string[];
|
|
45
77
|
status: ExtractBazelStatus;
|
|
78
|
+
// True only when `status === 'complete'`. Surfaced so downstream consumers
|
|
79
|
+
// (and the CLI's emitted summary) get a single machine-readable
|
|
80
|
+
// completeness flag without re-deriving it from `status`.
|
|
81
|
+
complete: boolean;
|
|
82
|
+
// Per-workspace / per-hub analyzability breakdown backing the completeness
|
|
83
|
+
// signal. Empty for `noEcosystem` and early `hardFailure` (toolchain setup
|
|
84
|
+
// failed before any workspace was inspected).
|
|
85
|
+
workspaceOutcomes: WorkspaceOutcome[];
|
|
46
86
|
};
|
|
47
87
|
// Default directory-prune policy for the Bazel workspace walk. The
|
|
48
88
|
// orchestrator applies this unconditionally so neither caller (the explicit
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract_bazel_to_maven.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/extract_bazel_to_maven.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"extract_bazel_to_maven.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/extract_bazel_to_maven.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate_auto_manifest.d.mts","sourceRoot":"","sources":["../../../../src/commands/manifest/generate_auto_manifest.mts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,MAAM,0BAA0B,GAAG;IACvC,cAAc,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,wBAAsB,oBAAoB,CAAC,EACzC,GAAG,EACH,QAAQ,EACR,UAAU,EACV,OAAO,EACR,EAAE;IACD,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;CACjB,GAAG,OAAO,CAAC,0BAA0B,CAAC,
|
|
1
|
+
{"version":3,"file":"generate_auto_manifest.d.mts","sourceRoot":"","sources":["../../../../src/commands/manifest/generate_auto_manifest.mts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,MAAM,MAAM,0BAA0B,GAAG;IACvC,cAAc,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,wBAAsB,oBAAoB,CAAC,EACzC,GAAG,EACH,QAAQ,EACR,UAAU,EACV,OAAO,EACR,EAAE;IACD,QAAQ,EAAE,oBAAoB,CAAA;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;CACjB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAwJtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmd-scan-create.d.mts","sourceRoot":"","sources":["../../../../src/commands/scan/cmd-scan-create.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cmd-scan-create.d.mts","sourceRoot":"","sources":["../../../../src/commands/scan/cmd-scan-create.mts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,uCAAuC,CAAA;AAE9C,eAAO,MAAM,QAAQ,WAAW,CAAA;AAmHhC,eAAO,MAAM,aAAa;;;;CAIzB,CAAA;AAED,iBAAe,GAAG,CAChB,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAClC,UAAU,EAAE,UAAU,EACtB,EAAE,UAAU,EAAE,EAAE,iBAAiB,GAChC,OAAO,CAAC,IAAI,CAAC,CA8ef"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { CResult } from '../../types.mts';
|
|
2
|
+
import type { AutoManifestConfig } from '../../utils/auto-manifest-config.mts';
|
|
2
3
|
import type { PURL_Type } from '../../utils/ecosystem.mts';
|
|
3
4
|
import type { Spinner } from '@socketsecurity/registry/lib/spinner';
|
|
4
5
|
export type ReachabilityOptions = {
|
|
6
|
+
autoManifestConfig?: AutoManifestConfig | undefined;
|
|
5
7
|
excludePaths: string[];
|
|
6
8
|
reachAnalysisMemoryLimit: number;
|
|
7
9
|
reachAnalysisTimeout: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"perform-reachability-analysis.d.mts","sourceRoot":"","sources":["../../../../src/commands/scan/perform-reachability-analysis.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"perform-reachability-analysis.d.mts","sourceRoot":"","sources":["../../../../src/commands/scan/perform-reachability-analysis.mts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAC9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAA;AAEnE,MAAM,MAAM,mBAAmB,GAAG;IAChC,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,SAAS,CAAA;IACnD,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,wBAAwB,EAAE,MAAM,CAAA;IAChC,oBAAoB,EAAE,MAAM,CAAA;IAC5B,gBAAgB,EAAE,MAAM,CAAA;IACxB,6BAA6B,EAAE,OAAO,CAAA;IACtC,4BAA4B,EAAE,OAAO,CAAA;IACrC,+BAA+B,EAAE,OAAO,CAAA;IACxC,4BAA4B,EAAE,OAAO,CAAA;IACrC,UAAU,EAAE,OAAO,CAAA;IACnB,4BAA4B,EAAE,OAAO,CAAA;IACrC,8BAA8B,EAAE,OAAO,CAAA;IACvC,qBAAqB,EAAE,OAAO,CAAA;IAC9B,eAAe,EAAE,SAAS,EAAE,CAAA;IAC5B,4BAA4B,EAAE,OAAO,CAAA;IACrC,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,aAAa,EAAE,OAAO,CAAA;IACtB,cAAc,EAAE,OAAO,CAAA;IACvB,6BAA6B,EAAE,OAAO,CAAA;IACtC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;IACnC,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,kBAAkB,EAAE,MAAM,CAAA;IAC1B,uBAAuB,EAAE,MAAM,GAAG,SAAS,CAAA;CAC5C,CAAA;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,CAAC,EAAE,2BAA2B,GAAG,SAAS,GAChD,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAsQ9C"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { SocketJson } from './socket-json.mts';
|
|
2
|
+
// Per-ecosystem build-tool options handed off to the Coana CLI — used both when
|
|
3
|
+
// generating manifests (`coana manifest <ecosystem>`) and, in socket mode, for
|
|
4
|
+
// reach-time dependency resolution (`coana run`). This mirrors the Coana-side
|
|
5
|
+
// `--auto-manifest-config` shape: socket-cli owns mapping `socket.json` onto it,
|
|
6
|
+
// so Coana stays uncoupled from `socket.json`'s schema. Keeping the
|
|
7
|
+
// per-ecosystem options namespaced (rather than as flat CLI flags) avoids the
|
|
8
|
+
// ambiguity of a bare `--bin`/`--include-configs` when a repo has more than one
|
|
9
|
+
// build tool.
|
|
10
|
+
export type BuildToolOptions = {
|
|
11
|
+
// Build-tool executable override (e.g. `./gradlew`, `atlas-mvn`).
|
|
12
|
+
bin?: string | undefined;
|
|
13
|
+
// Comma-separated config-name globs to skip.
|
|
14
|
+
excludeConfigs?: string | undefined;
|
|
15
|
+
// `socket.json`'s per-ecosystem `ignoreUnresolved` (warn vs fail on unresolved
|
|
16
|
+
// dependencies), forwarded verbatim. NOTE: this is NOT the reach-time
|
|
17
|
+
// fail-closed switch — that's the run-wide `failOnBuildToolError` below.
|
|
18
|
+
ignoreUnresolved?: boolean | undefined;
|
|
19
|
+
// Comma-separated config-name globs to resolve.
|
|
20
|
+
includeConfigs?: string | undefined;
|
|
21
|
+
// Extra build-tool options, pre-split into argv. Coana maps these straight to
|
|
22
|
+
// the tool's opts (no splitting on its side). Mapped from `socket.json`'s
|
|
23
|
+
// `gradleOpts`/`sbtOpts` string.
|
|
24
|
+
opts?: string[] | undefined;
|
|
25
|
+
};
|
|
26
|
+
// The Coana hand-off config. `failOnBuildToolError` is run-wide (top level)
|
|
27
|
+
// because `--auto-manifest` is a single CLI mode, not a per-package-manager
|
|
28
|
+
// setting. The per-ecosystem entries are present only for ecosystems configured
|
|
29
|
+
// (and not disabled) in `socket.json`; absent ecosystems fall to Coana's own
|
|
30
|
+
// defaults.
|
|
31
|
+
export type AutoManifestConfig = {
|
|
32
|
+
// Run-wide fail-closed switch. When true, Coana treats a build-tool step
|
|
33
|
+
// failure as fatal rather than tolerating it. socket-cli sets it true under
|
|
34
|
+
// `--auto-manifest`; left unset on plain `--reach` (permissive — Coana's
|
|
35
|
+
// default best-effort behaviour).
|
|
36
|
+
failOnBuildToolError?: boolean | undefined;
|
|
37
|
+
gradle?: BuildToolOptions | undefined;
|
|
38
|
+
sbt?: BuildToolOptions | undefined;
|
|
39
|
+
};
|
|
40
|
+
// Maps `socket.json`'s `defaults.manifest.<ecosystem>` build-tool options onto
|
|
41
|
+
// the Coana hand-off config.
|
|
42
|
+
//
|
|
43
|
+
// `autoManifest` reflects whether the run is `--auto-manifest` (fail-closed:
|
|
44
|
+
// `failOnBuildToolError=true`) vs plain `--reach` (permissive:
|
|
45
|
+
// `failOnBuildToolError` left unset so Coana's default applies). Per-ecosystem
|
|
46
|
+
// options are forwarded verbatim from `socket.json`; disabled ecosystems are
|
|
47
|
+
// omitted so they fall back to Coana's defaults.
|
|
48
|
+
export declare function buildAutoManifestConfig(sockJson: SocketJson, { autoManifest }: {
|
|
49
|
+
autoManifest: boolean;
|
|
50
|
+
}): AutoManifestConfig;
|
|
51
|
+
// True when there's nothing to hand to Coana: no per-ecosystem options and the
|
|
52
|
+
// run mode is left at Coana's permissive default. When true, the
|
|
53
|
+
// `--auto-manifest-config` option should be omitted entirely.
|
|
54
|
+
export declare function isAutoManifestConfigEmpty(config: AutoManifestConfig): boolean;
|
|
55
|
+
//# sourceMappingURL=auto-manifest-config.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-manifest-config.d.mts","sourceRoot":"","sources":["../../../src/utils/auto-manifest-config.mts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAEnD,kFAAgF;AAChF,+EAA+E;AAC/E,8EAA8E;AAC9E,iFAAiF;AACjF,oEAAoE;AACpE,8EAA8E;AAC9E,gFAAgF;AAChF,cAAc;AACd,MAAM,MAAM,gBAAgB,GAAG;IAC7B,kEAAkE;IAClE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACxB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,+EAA+E;IAC/E,sEAAsE;IACtE,2EAAyE;IACzE,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,gDAAgD;IAChD,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,8EAA8E;IAC9E,0EAA0E;IAC1E,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;CAC5B,CAAA;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,gFAAgF;AAChF,6EAA6E;AAC7E,YAAY;AACZ,MAAM,MAAM,kBAAkB,GAAG;IAC/B,yEAAyE;IACzE,4EAA4E;IAC5E,2EAAyE;IACzE,kCAAkC;IAClC,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC1C,MAAM,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAA;IACrC,GAAG,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAA;CACnC,CAAA;AAgBD,+EAA+E;AAC/E,6BAA6B;AAC7B,EAAE;AACF,6EAA6E;AAC7E,+DAA+D;AAC/D,+EAA+E;AAC/E,6EAA6E;AAC7E,iDAAiD;AACjD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,UAAU,EACpB,EAAE,YAAY,EAAE,EAAE;IAAE,YAAY,EAAE,OAAO,CAAA;CAAE,GAC1C,kBAAkB,CAiCpB;AAED,+EAA+E;AAC/E,iEAAiE;AACjE,8DAA8D;AAC9D,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAI7E"}
|
|
@@ -29,9 +29,10 @@ export type CoanaDlxOptions = DlxOptions & {
|
|
|
29
29
|
*
|
|
30
30
|
* If the dlx path fails (e.g. broken `npx` on the host), falls back to
|
|
31
31
|
* `npm install`-ing @coana-tech/cli into a temp directory and invoking it
|
|
32
|
-
* directly via `node`. The
|
|
33
|
-
*
|
|
34
|
-
*
|
|
32
|
+
* directly via `node`. The launcher strategy can be overridden with
|
|
33
|
+
* SOCKET_CLI_COANA_LAUNCHER: 'auto' (the default) tries dlx with the
|
|
34
|
+
* npm-install fallback, 'npm-install' skips dlx entirely, and 'npx' never
|
|
35
|
+
* falls back.
|
|
35
36
|
*/
|
|
36
37
|
export declare function spawnCoanaDlx(args: string[] | readonly string[], orgSlug?: string, options?: CoanaDlxOptions | undefined, spawnExtra?: SpawnExtra | undefined): Promise<CResult<string>>;
|
|
37
38
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dlx.d.mts","sourceRoot":"","sources":["../../../src/utils/dlx.mts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"dlx.d.mts","sourceRoot":"","sources":["../../../src/utils/dlx.mts"],"names":[],"mappings":"AA0CA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,KAAK,EACV,UAAU,EAEX,MAAM,oCAAoC,CAAA;AAM3C,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG;IAC1C,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC3B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IAC3C,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAQD;;;;GAIG;AACH,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,cAAc,EAC3B,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAClC,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,EAChC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,GAClC,OAAO,CAAC,eAAe,CAAC,CAwG1B;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG;IACzC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAClC,CAAA;AAkND;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAClC,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,eAAe,GAAG,SAAS,EACrC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,GAClC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CA2J1B;AAsHD;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAClC,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,EAChC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,GAClC,OAAO,CAAC,eAAe,CAAC,CAU1B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,EAClC,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,EAChC,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,GAClC,OAAO,CAAC,eAAe,CAAC,CAU1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-json.d.mts","sourceRoot":"","sources":["../../../src/utils/socket-json.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"socket-json.d.mts","sourceRoot":"","sources":["../../../src/utils/socket-json.mts"],"names":[],"mappings":"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"}
|
package/dist/utils.js
CHANGED
|
@@ -4771,6 +4771,81 @@ function* walkNestedMap(map, keys = []) {
|
|
|
4771
4771
|
}
|
|
4772
4772
|
}
|
|
4773
4773
|
|
|
4774
|
+
// Per-ecosystem build-tool options handed off to the Coana CLI — used both when
|
|
4775
|
+
// generating manifests (`coana manifest <ecosystem>`) and, in socket mode, for
|
|
4776
|
+
// reach-time dependency resolution (`coana run`). This mirrors the Coana-side
|
|
4777
|
+
// `--auto-manifest-config` shape: socket-cli owns mapping `socket.json` onto it,
|
|
4778
|
+
// so Coana stays uncoupled from `socket.json`'s schema. Keeping the
|
|
4779
|
+
// per-ecosystem options namespaced (rather than as flat CLI flags) avoids the
|
|
4780
|
+
// ambiguity of a bare `--bin`/`--include-configs` when a repo has more than one
|
|
4781
|
+
// build tool.
|
|
4782
|
+
|
|
4783
|
+
// The Coana hand-off config. `failOnBuildToolError` is run-wide (top level)
|
|
4784
|
+
// because `--auto-manifest` is a single CLI mode, not a per-package-manager
|
|
4785
|
+
// setting. The per-ecosystem entries are present only for ecosystems configured
|
|
4786
|
+
// (and not disabled) in `socket.json`; absent ecosystems fall to Coana's own
|
|
4787
|
+
// defaults.
|
|
4788
|
+
|
|
4789
|
+
// Splits a `socket.json` opts string (`gradleOpts`/`sbtOpts`) into argv, matching
|
|
4790
|
+
// how the standalone `socket manifest` path splits it. Returns undefined when
|
|
4791
|
+
// there's nothing to pass so the field is omitted from the config.
|
|
4792
|
+
function parseOpts(value) {
|
|
4793
|
+
if (!value) {
|
|
4794
|
+
return undefined;
|
|
4795
|
+
}
|
|
4796
|
+
const parts = value.split(' ').map(s => s.trim()).filter(Boolean);
|
|
4797
|
+
return parts.length ? parts : undefined;
|
|
4798
|
+
}
|
|
4799
|
+
|
|
4800
|
+
// Maps `socket.json`'s `defaults.manifest.<ecosystem>` build-tool options onto
|
|
4801
|
+
// the Coana hand-off config.
|
|
4802
|
+
//
|
|
4803
|
+
// `autoManifest` reflects whether the run is `--auto-manifest` (fail-closed:
|
|
4804
|
+
// `failOnBuildToolError=true`) vs plain `--reach` (permissive:
|
|
4805
|
+
// `failOnBuildToolError` left unset so Coana's default applies). Per-ecosystem
|
|
4806
|
+
// options are forwarded verbatim from `socket.json`; disabled ecosystems are
|
|
4807
|
+
// omitted so they fall back to Coana's defaults.
|
|
4808
|
+
function buildAutoManifestConfig(sockJson, {
|
|
4809
|
+
autoManifest
|
|
4810
|
+
}) {
|
|
4811
|
+
const manifest = sockJson.defaults?.manifest;
|
|
4812
|
+
const config = {};
|
|
4813
|
+
|
|
4814
|
+
// `--auto-manifest` expects every build-tool command to succeed, so a
|
|
4815
|
+
// build-tool step failure should be fatal rather than tolerated.
|
|
4816
|
+
if (autoManifest) {
|
|
4817
|
+
config.failOnBuildToolError = true;
|
|
4818
|
+
}
|
|
4819
|
+
const gradle = manifest?.gradle;
|
|
4820
|
+
if (gradle && !gradle.disabled) {
|
|
4821
|
+
config.gradle = {
|
|
4822
|
+
bin: gradle.bin,
|
|
4823
|
+
excludeConfigs: gradle.excludeConfigs,
|
|
4824
|
+
ignoreUnresolved: gradle.ignoreUnresolved,
|
|
4825
|
+
includeConfigs: gradle.includeConfigs,
|
|
4826
|
+
opts: parseOpts(gradle.gradleOpts)
|
|
4827
|
+
};
|
|
4828
|
+
}
|
|
4829
|
+
const sbt = manifest?.sbt;
|
|
4830
|
+
if (sbt && !sbt.disabled) {
|
|
4831
|
+
config.sbt = {
|
|
4832
|
+
bin: sbt.bin,
|
|
4833
|
+
excludeConfigs: sbt.excludeConfigs,
|
|
4834
|
+
ignoreUnresolved: sbt.ignoreUnresolved,
|
|
4835
|
+
includeConfigs: sbt.includeConfigs,
|
|
4836
|
+
opts: parseOpts(sbt.sbtOpts)
|
|
4837
|
+
};
|
|
4838
|
+
}
|
|
4839
|
+
return config;
|
|
4840
|
+
}
|
|
4841
|
+
|
|
4842
|
+
// True when there's nothing to hand to Coana: no per-ecosystem options and the
|
|
4843
|
+
// run mode is left at Coana's permissive default. When true, the
|
|
4844
|
+
// `--auto-manifest-config` option should be omitted entirely.
|
|
4845
|
+
function isAutoManifestConfigEmpty(config) {
|
|
4846
|
+
return !config.gradle && !config.sbt && config.failOnBuildToolError === undefined;
|
|
4847
|
+
}
|
|
4848
|
+
|
|
4774
4849
|
/**
|
|
4775
4850
|
* Coana integration utilities for Socket CLI.
|
|
4776
4851
|
* Manages reachability analysis via Coana tech CLI.
|
|
@@ -5324,7 +5399,7 @@ async function spawnCoanaScriptViaNode(scriptPath, args, finalEnv, options, spaw
|
|
|
5324
5399
|
const spawnResult = await spawn.spawn(isBinary ? scriptPath : 'node', spawnArgs, {
|
|
5325
5400
|
cwd: options.cwd,
|
|
5326
5401
|
env: sanitizeEnvForCoanaSubprocess(finalEnv),
|
|
5327
|
-
stdio: spawnExtra?.['stdio']
|
|
5402
|
+
stdio: options.stdio ?? spawnExtra?.['stdio'] ?? 'inherit'
|
|
5328
5403
|
});
|
|
5329
5404
|
return {
|
|
5330
5405
|
ok: true,
|
|
@@ -5400,6 +5475,38 @@ async function spawnCoanaViaNpmInstall(args, version, finalEnv, options, spawnEx
|
|
|
5400
5475
|
return buildDlxErrorResult(e);
|
|
5401
5476
|
}
|
|
5402
5477
|
}
|
|
5478
|
+
/**
|
|
5479
|
+
* Resolve how the Coana engine should be launched.
|
|
5480
|
+
*
|
|
5481
|
+
* SOCKET_CLI_COANA_LAUNCHER wins when set:
|
|
5482
|
+
* - 'auto' (default): try dlx first, fall back to `npm install` + `node` on
|
|
5483
|
+
* launcher-level failures.
|
|
5484
|
+
* - 'npm-install': skip dlx entirely; always `npm install` + `node`.
|
|
5485
|
+
* - 'npx': dlx only; never fall back.
|
|
5486
|
+
* Unrecognized values warn and behave as 'auto'.
|
|
5487
|
+
*
|
|
5488
|
+
* The legacy boolean variables SOCKET_CLI_COANA_FORCE_NPM_INSTALL
|
|
5489
|
+
* ('npm-install') and SOCKET_CLI_COANA_DISABLE_NPM_FALLBACK ('npx') are still
|
|
5490
|
+
* honored when the new variable is unset, but are intentionally undocumented.
|
|
5491
|
+
*/
|
|
5492
|
+
function getCoanaLauncherMode() {
|
|
5493
|
+
const rawMode = process.env['SOCKET_CLI_COANA_LAUNCHER'];
|
|
5494
|
+
const mode = rawMode?.trim().toLowerCase();
|
|
5495
|
+
if (mode) {
|
|
5496
|
+
if (mode === 'auto' || mode === 'npm-install' || mode === 'npx') {
|
|
5497
|
+
return mode;
|
|
5498
|
+
}
|
|
5499
|
+
logger.logger.warn(`Ignoring unrecognized SOCKET_CLI_COANA_LAUNCHER value "${rawMode}"; expected "auto", "npm-install", or "npx".`);
|
|
5500
|
+
return 'auto';
|
|
5501
|
+
}
|
|
5502
|
+
if (process.env['SOCKET_CLI_COANA_FORCE_NPM_INSTALL']) {
|
|
5503
|
+
return 'npm-install';
|
|
5504
|
+
}
|
|
5505
|
+
if (process.env['SOCKET_CLI_COANA_DISABLE_NPM_FALLBACK']) {
|
|
5506
|
+
return 'npx';
|
|
5507
|
+
}
|
|
5508
|
+
return 'auto';
|
|
5509
|
+
}
|
|
5403
5510
|
|
|
5404
5511
|
/**
|
|
5405
5512
|
* Helper to spawn coana with dlx.
|
|
@@ -5411,9 +5518,10 @@ async function spawnCoanaViaNpmInstall(args, version, finalEnv, options, spawnEx
|
|
|
5411
5518
|
*
|
|
5412
5519
|
* If the dlx path fails (e.g. broken `npx` on the host), falls back to
|
|
5413
5520
|
* `npm install`-ing @coana-tech/cli into a temp directory and invoking it
|
|
5414
|
-
* directly via `node`. The
|
|
5415
|
-
*
|
|
5416
|
-
*
|
|
5521
|
+
* directly via `node`. The launcher strategy can be overridden with
|
|
5522
|
+
* SOCKET_CLI_COANA_LAUNCHER: 'auto' (the default) tries dlx with the
|
|
5523
|
+
* npm-install fallback, 'npm-install' skips dlx entirely, and 'npx' never
|
|
5524
|
+
* falls back.
|
|
5417
5525
|
*/
|
|
5418
5526
|
async function spawnCoanaDlx(args, orgSlug, options, spawnExtra) {
|
|
5419
5527
|
const {
|
|
@@ -5455,37 +5563,40 @@ async function spawnCoanaDlx(args, orgSlug, options, spawnExtra) {
|
|
|
5455
5563
|
...spawnEnv
|
|
5456
5564
|
};
|
|
5457
5565
|
const resolvedVersion = coanaVersion || constants.default.ENV.INLINED_SOCKET_CLI_COANA_TECH_CLI_VERSION;
|
|
5566
|
+
|
|
5567
|
+
// `shadowNpmBase` (the dlx launcher) configures the child's stdio from its
|
|
5568
|
+
// `options` arg, NOT from the registry-spawn `extra` arg — the latter only
|
|
5569
|
+
// attaches metadata to the result. Callers that requested streaming via
|
|
5570
|
+
// `spawnExtra` (the 4th arg), e.g. `{ stdio: 'inherit' }` from
|
|
5571
|
+
// `socket manifest gradle`, were therefore silently ignored on this path:
|
|
5572
|
+
// Coana ran piped and its output — including the real failure reason — never
|
|
5573
|
+
// reached the user, leaving only an unhelpful "command failed". Resolve the
|
|
5574
|
+
// requested stdio from either argument and honor it on every launch path:
|
|
5575
|
+
// dlx, local-path, and npm-install (e.g. `socket fix --silence` requests
|
|
5576
|
+
// `stdio: 'pipe'` via options).
|
|
5577
|
+
const requestedStdio = spawnExtra?.['stdio'] ?? require$$11.getOwn(dlxOptions, 'stdio');
|
|
5458
5578
|
const localCoanaPath = process.env['SOCKET_CLI_COANA_LOCAL_PATH'];
|
|
5459
5579
|
// Use local Coana CLI if path is provided.
|
|
5460
5580
|
if (localCoanaPath) {
|
|
5461
5581
|
try {
|
|
5462
5582
|
return await spawnCoanaScriptViaNode(localCoanaPath, args, finalEnv, {
|
|
5463
|
-
cwd: dlxOptions.cwd
|
|
5583
|
+
cwd: dlxOptions.cwd,
|
|
5584
|
+
stdio: requestedStdio
|
|
5464
5585
|
}, spawnExtra);
|
|
5465
5586
|
} catch (e) {
|
|
5466
5587
|
return buildDlxErrorResult(e);
|
|
5467
5588
|
}
|
|
5468
5589
|
}
|
|
5590
|
+
const launcherMode = getCoanaLauncherMode();
|
|
5469
5591
|
|
|
5470
5592
|
// Allow forcing the npm-install path for debugging or for environments
|
|
5471
5593
|
// where dlx is known-broken.
|
|
5472
|
-
if (
|
|
5594
|
+
if (launcherMode === 'npm-install') {
|
|
5473
5595
|
return await spawnCoanaViaNpmInstall(args, resolvedVersion, finalEnv, {
|
|
5474
|
-
cwd: dlxOptions.cwd
|
|
5596
|
+
cwd: dlxOptions.cwd,
|
|
5597
|
+
stdio: requestedStdio
|
|
5475
5598
|
}, spawnExtra);
|
|
5476
5599
|
}
|
|
5477
|
-
|
|
5478
|
-
// `shadowNpmBase` (the dlx launcher) configures the child's stdio from its
|
|
5479
|
-
// `options` arg, NOT from the registry-spawn `extra` arg — the latter only
|
|
5480
|
-
// attaches metadata to the result. Callers that requested streaming via
|
|
5481
|
-
// `spawnExtra` (the 4th arg), e.g. `{ stdio: 'inherit' }` from
|
|
5482
|
-
// `socket manifest gradle`, were therefore silently ignored on this path:
|
|
5483
|
-
// Coana ran piped and its output — including the real failure reason — never
|
|
5484
|
-
// reached the user, leaving only an unhelpful "command failed". Promote the
|
|
5485
|
-
// requested stdio into the dlx options so it is honored here too.
|
|
5486
|
-
// `spawnCoanaScriptViaNode` already reads `spawnExtra.stdio` for the
|
|
5487
|
-
// local-path and npm-install branches, so this aligns all three paths.
|
|
5488
|
-
const requestedStdio = spawnExtra?.['stdio'] ?? require$$11.getOwn(dlxOptions, 'stdio');
|
|
5489
5600
|
try {
|
|
5490
5601
|
// Use npm/dlx version.
|
|
5491
5602
|
const result = await spawnDlx({
|
|
@@ -5518,7 +5629,7 @@ async function spawnCoanaDlx(args, orgSlug, options, spawnExtra) {
|
|
|
5518
5629
|
};
|
|
5519
5630
|
} catch (e) {
|
|
5520
5631
|
const dlxError = buildDlxErrorResult(e);
|
|
5521
|
-
if (
|
|
5632
|
+
if (launcherMode === 'npx') {
|
|
5522
5633
|
return dlxError;
|
|
5523
5634
|
}
|
|
5524
5635
|
|
|
@@ -5530,7 +5641,8 @@ async function spawnCoanaDlx(args, orgSlug, options, spawnExtra) {
|
|
|
5530
5641
|
}
|
|
5531
5642
|
logger.logger.warn('Coana dlx invocation failed; retrying via `npm install` + `node`.');
|
|
5532
5643
|
const fallbackResult = await spawnCoanaViaNpmInstall(args, resolvedVersion, finalEnv, {
|
|
5533
|
-
cwd: dlxOptions.cwd
|
|
5644
|
+
cwd: dlxOptions.cwd,
|
|
5645
|
+
stdio: requestedStdio
|
|
5534
5646
|
}, spawnExtra);
|
|
5535
5647
|
if (fallbackResult.ok) {
|
|
5536
5648
|
return fallbackResult;
|
|
@@ -8224,6 +8336,7 @@ exports.IGNORED_DIRS = IGNORED_DIRS;
|
|
|
8224
8336
|
exports.InputError = InputError;
|
|
8225
8337
|
exports.RangeStyles = RangeStyles;
|
|
8226
8338
|
exports.apiFetch = apiFetch;
|
|
8339
|
+
exports.buildAutoManifestConfig = buildAutoManifestConfig;
|
|
8227
8340
|
exports.cacheFetch = cacheFetch;
|
|
8228
8341
|
exports.captureException = captureException;
|
|
8229
8342
|
exports.checkCommandInput = checkCommandInput;
|
|
@@ -8303,6 +8416,7 @@ exports.installNpxLinks = installNpxLinks;
|
|
|
8303
8416
|
exports.installPnpmLinks = installPnpmLinks;
|
|
8304
8417
|
exports.installYarnLinks = installYarnLinks;
|
|
8305
8418
|
exports.isAddCommand = isAddCommand;
|
|
8419
|
+
exports.isAutoManifestConfigEmpty = isAutoManifestConfigEmpty;
|
|
8306
8420
|
exports.isConfigFromFlag = isConfigFromFlag;
|
|
8307
8421
|
exports.isHelpFlag = isHelpFlag;
|
|
8308
8422
|
exports.isPnpmLockfileScanCommand = isPnpmLockfileScanCommand;
|
|
@@ -8355,5 +8469,5 @@ exports.updateConfigValue = updateConfigValue;
|
|
|
8355
8469
|
exports.walkNestedMap = walkNestedMap;
|
|
8356
8470
|
exports.webLink = webLink;
|
|
8357
8471
|
exports.writeSocketJson = writeSocketJson;
|
|
8358
|
-
//# debugId=
|
|
8472
|
+
//# debugId=5462673f-121b-4108-83b8-d1cdf9afc7e
|
|
8359
8473
|
//# sourceMappingURL=utils.js.map
|