socket 1.1.102 → 1.1.103

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.
@@ -0,0 +1,31 @@
1
+ import type { RepoProbe, ValidationResult } from './bazel-repo-discovery.mts';
2
+ export type PypiHubInfo = {
3
+ hubName: string;
4
+ source: 'MODULE.bazel' | 'WORKSPACE' | 'WORKSPACE.bazel' | '.bzl' | 'visible-repos' | 'default-seed' | 'bazel-mod-show-extension';
5
+ workspaceMode: 'bzlmod' | 'legacy' | 'unknown';
6
+ pythonVersion?: string | undefined;
7
+ requirementsLockLabel?: string | undefined;
8
+ requirementsLockPath?: string | undefined;
9
+ probeStdout: string;
10
+ visibleRepoNames?: string[] | undefined;
11
+ };
12
+ export type PypiHubCandidate = Omit<PypiHubInfo, 'probeStdout' | 'visibleRepoNames'>;
13
+ export declare function parseBazelModPipExtensionCandidates(stdout: string, verbose?: boolean): PypiHubCandidate[];
14
+ // Step 1: parse candidate pip hub names from Bzlmod MODULE.bazel and legacy
15
+ // WORKSPACE / .bzl entry points.
16
+ //
17
+ // Precedence: Bzlmod (MODULE.bazel pip.parse) hits are pushed first, then
18
+ // legacy (pip_parse / pip_install / pip_repository) hits. dedupCapped keeps
19
+ // the first occurrence, so during migration scenarios where both
20
+ // MODULE.bazel and WORKSPACE define a hub with the same name, the Bzlmod
21
+ // entry wins implicitly. Pass verbose=true to surface dropped duplicates.
22
+ export declare function parsePypiHubCandidates(cwd: string, verbose?: boolean): PypiHubCandidate[];
23
+ // Step 2: validate a candidate by running the probe and confirming
24
+ // `:pkg` labels or alias rules appear in stdout. Does NOT require
25
+ // `pypi_name=` (that marker lives on spoke repos).
26
+ export declare function validatePypiHub(hubName: string, probe: RepoProbe, verbose?: boolean): Promise<ValidationResult>;
27
+ // Composition: parse, then validate each candidate; return validated subset
28
+ // as a Map keyed by hub name with the validated PypiHubInfo.
29
+ // Always seeds with the default 'pypi' hub name first.
30
+ export declare function discoverPypiHubs(cwd: string, probe: RepoProbe, nativeCandidates?: string[], verbose?: boolean, bazelCommandCandidates?: PypiHubCandidate[]): Promise<Map<string, PypiHubInfo>>;
31
+ //# sourceMappingURL=bazel-pypi-discovery.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bazel-pypi-discovery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-pypi-discovery.mts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAwC7E,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EACF,cAAc,GACd,WAAW,GACX,iBAAiB,GACjB,MAAM,GACN,eAAe,GACf,cAAc,GACd,0BAA0B,CAAA;IAC9B,aAAa,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;IAC9C,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAClC,qBAAqB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACzC,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,WAAW,EACX,aAAa,GAAG,kBAAkB,CACnC,CAAA;AAED,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,OAAO,GAChB,gBAAgB,EAAE,CAoCpB;AA8GD,4EAA4E;AAC5E,iCAAiC;AACjC,EAAE;AACF,0EAA0E;AAC1E,4EAA4E;AAC5E,iEAAiE;AACjE,yEAAyE;AACzE,0EAA0E;AAC1E,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,OAAO,GAChB,gBAAgB,EAAE,CAoGpB;AAED,mEAAmE;AACnE,kEAAkE;AAClE,mDAAmD;AACnD,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,CAAC,CA8B3B;AAOD,4EAA4E;AAC5E,6DAA6D;AAC7D,uDAAuD;AACvD,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,EAChB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAC3B,OAAO,CAAC,EAAE,OAAO,EACjB,sBAAsB,CAAC,EAAE,gBAAgB,EAAE,GAC1C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAyDnC"}
@@ -0,0 +1,46 @@
1
+ export type ExtractedPypiPackage = {
2
+ name: string;
3
+ version: string;
4
+ bazelName: string;
5
+ source?: 'lockfile' | 'spoke-tag' | undefined;
6
+ originalLine?: string | undefined;
7
+ };
8
+ export type ReachedPypiLabel = {
9
+ hubName: string;
10
+ originalLabel: string;
11
+ bazelName: string;
12
+ normalizedName: string;
13
+ apparentLabel: string;
14
+ spokeLabel?: string | undefined;
15
+ };
16
+ // Normalize a PyPI package name per PEP 503:
17
+ // lowercase, then collapse `.`, `_`, and `-` runs to a single `-`.
18
+ export declare function normalizePypiName(name: string): string;
19
+ // Convert a Bazel underscore_name to a PyPI hyphenated-name.
20
+ export declare function bazelNameToPypiName(bazelName: string): string;
21
+ // Resolves a Bazel label or workspace-relative path to a filesystem path.
22
+ // Returns undefined for labels that cannot be resolved locally.
23
+ export declare function resolveRequirementsLockPath(label: string | undefined, cwd: string): string | undefined;
24
+ // Parse a `requirements_lock.txt`-style file into a map keyed by normalized
25
+ // PyPI name. This intentionally ignores unpinned PEP 508 requirement forms
26
+ // because the Bazel extractor must emit exact package versions.
27
+ export declare function parseRequirementsLock(text: string): Map<string, ExtractedPypiPackage>;
28
+ // Read and parse a requirements lockfile from a resolved path, capping file
29
+ // size. Returns undefined when the file is missing, oversized, or unreadable.
30
+ export declare function readRequirementsLockFile(resolvedPath: string | undefined): Map<string, ExtractedPypiPackage> | undefined;
31
+ export declare function parsePypiTagsFromBuildOutput(text: string): ExtractedPypiPackage | null;
32
+ export declare function parseAliasActualFromBuildOutput(text: string): string | undefined;
33
+ // Extract hub package labels from `bazel query` output that match
34
+ // `@<hub>//<name>:pkg` patterns (both line-start and embedded in
35
+ // `--output=build` deps arrays).
36
+ export declare function filterReachedPypiPackages(queryOutput: string, hubName: string): ReachedPypiLabel[];
37
+ // Collect name==version pairs for the reached closure, resolving versions
38
+ // from the lockfile fast path or spoke-tag fallback. Enforces version
39
+ // conflict detection and deterministic output.
40
+ export declare function collectPypiPackages(reached: ReachedPypiLabel[], lockfile: Map<string, ExtractedPypiPackage> | undefined, spokeTagLookup: Map<string, ExtractedPypiPackage> | undefined): Array<{
41
+ name: string;
42
+ version: string;
43
+ source: string;
44
+ label: string;
45
+ }>;
46
+ //# sourceMappingURL=bazel-pypi-parser.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bazel-pypi-parser.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-pypi-parser.mts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,SAAS,CAAA;IAC7C,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAChC,CAAA;AAED,6CAA6C;AAC7C,mEAAmE;AACnE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAMtD;AAED,6DAA6D;AAC7D,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAQD,0EAA0E;AAC1E,gEAAgE;AAChE,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,GAAG,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CAsDpB;AAsCD,4EAA4E;AAC5E,2EAA2E;AAC3E,gEAAgE;AAChE,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,GACX,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAkDnC;AAED,4EAA4E;AAC5E,8EAA8E;AAC9E,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,SAAS,CAkB/C;AAOD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,MAAM,GACX,oBAAoB,GAAG,IAAI,CAiB7B;AAED,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAGpB;AAED,kEAAkE;AAClE,iEAAiE;AACjE,iCAAiC;AACjC,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,gBAAgB,EAAE,CA2BpB;AAED,0EAA0E;AAC1E,sEAAsE;AACtE,+CAA+C;AAC/C,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gBAAgB,EAAE,EAC3B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,SAAS,EACvD,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,SAAS,GAC5D,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAqDzE"}
@@ -25,17 +25,31 @@ export declare function splitBazelFlags(flags: string | undefined): string[];
25
25
  * and fails on non-zero exit. Rejected spawn calls are normalized into a
26
26
  * BazelQueryResult so retry/skip handling can inspect stderr.
27
27
  */
28
- export declare function runBazelQuery(queryStr: string, opts: BazelQueryOptions): Promise<BazelQueryResult>;
28
+ export declare function runBazelQuery(queryStr: string, opts: BazelQueryOptions, output?: string): Promise<BazelQueryResult>;
29
29
  /**
30
30
  * Bzlmod-native visible repository enumeration. This is only a candidate
31
31
  * source; callers must still validate each returned apparent repo name with a
32
- * semantic query for generated JVM Maven rules.
32
+ * semantic query for generated ecosystem rules.
33
33
  */
34
34
  export declare function runBazelModShowVisibleRepos(opts: BazelQueryOptions): Promise<BazelQueryResult>;
35
+ /**
36
+ * Bzlmod-native rules_python pip extension usage inspection. This is the
37
+ * authoritative source for root-module pip.parse metadata when Bazel supports
38
+ * the command; callers keep bounded static parsing as fallback.
39
+ */
40
+ export declare function runBazelModShowPipExtension(opts: BazelQueryOptions): Promise<BazelQueryResult>;
35
41
  /**
36
42
  * Build a `RepoProbe` (compatible with bazel-repo-discovery) bound to opts.
37
43
  * Used by `discoverMavenRepos` to validate candidate Maven repo
38
44
  * names against the running workspace.
39
45
  */
40
46
  export declare function buildProbeFor(opts: BazelQueryOptions): RepoProbe;
47
+ /**
48
+ * Build a `RepoProbe` for validating pip hub candidates.
49
+ * Queries the hub for package targets (e.g. `@<hub>//...`) and returns
50
+ * stdout so the caller can check for `:pkg` labels or alias rules.
51
+ * Does NOT require `pypi_name=` tags in the hub output, because those
52
+ * tags live on spoke repos, not the hub alias layer.
53
+ */
54
+ export declare function buildPypiProbeFor(opts: BazelQueryOptions): RepoProbe;
41
55
  //# sourceMappingURL=bazel-query-runner.d.mts.map
@@ -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,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;AAMD,+DAA+D;AAC/D,+EAA6E;AAC7E,2EAA2E;AAC3E,eAAe;AACf,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAKnE;AAmED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CA4B3B;AAED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAgB3B;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAMhE"}
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,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;AA8ID;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,EACvB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,CAAC,CAsC3B;AAED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CA0B3B;AAED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,gBAAgB,CAAC,CA0B3B;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAMhE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAMpE"}
@@ -1,6 +1,6 @@
1
- // Parse `bazel mod show_repo --all_visible_repos --output=streamed_jsonproto`
2
- // output. Bazel's JSON proto field casing may vary by formatter; accept both
3
- // lowerCamel and snake_case, and tolerate wrapper objects around Repository.
1
+ // Parse `bazel mod dump_repo_mapping "" --output=json` output. Also accept the
2
+ // older streamed jsonproto shape in case older Bazel versions or fixtures still
3
+ // return repository records with apparentName fields.
4
4
  export declare function parseVisibleRepoCandidates(output: string): string[];
5
5
  // Step 1: parse candidate Maven repo names from Bzlmod and legacy entry points.
6
6
  export declare function parseMavenRepoCandidates(cwd: string, verbose?: boolean): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"bazel-repo-discovery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-repo-discovery.mts"],"names":[],"mappings":"AAoHA,8EAA8E;AAC9E,6EAA6E;AAC7E,6EAA6E;AAC7E,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAsBnE;AAED,gFAAgF;AAChF,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,EAAE,CA8DV;AAED,MAAM,MAAM,SAAS,GAAG,CACtB,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAE9C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,OAAO,CAAA;IACd,yEAAuE;IACvE,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,mEAAmE;AACnE,6EAA6E;AAC7E,uEAAuE;AACvE,uEAAuE;AACvE,oDAAoD;AACpD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,CAAC,CA8B3B;AAOD,4EAA4E;AAC5E,wEAAwE;AACxE,yEAAyE;AACzE,2EAA2E;AAC3E,4EAA4E;AAC5E,uDAAuD;AACvD,EAAE;AACF,kEAAkE;AAClE,0EAA0E;AAC1E,2EAA2E;AAC3E,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,EAChB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAC3B,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA4C9B"}
1
+ {"version":3,"file":"bazel-repo-discovery.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/bazel-repo-discovery.mts"],"names":[],"mappings":"AAoIA,+EAA+E;AAC/E,gFAAgF;AAChF,sDAAsD;AACtD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAuBnE;AAED,gFAAgF;AAChF,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,EAAE,CA8DV;AAED,MAAM,MAAM,SAAS,GAAG,CACtB,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAE9C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,OAAO,CAAA;IACd,yEAAuE;IACvE,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,mEAAmE;AACnE,6EAA6E;AAC7E,uEAAuE;AACvE,uEAAuE;AACvE,oDAAoD;AACpD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,SAAS,EAChB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,CAAC,CA8B3B;AAOD,4EAA4E;AAC5E,wEAAwE;AACxE,yEAAyE;AACzE,2EAA2E;AAC3E,4EAA4E;AAC5E,uDAAuD;AACvD,EAAE;AACF,kEAAkE;AAClE,0EAA0E;AAC1E,2EAA2E;AAC3E,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,EAChB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAC3B,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA4C9B"}
@@ -4,6 +4,25 @@ export declare const cmdManifestBazel: {
4
4
  hidden: boolean;
5
5
  run: typeof run;
6
6
  };
7
+ export type EcosystemOutcome = {
8
+ ecosystem: 'maven' | 'pypi';
9
+ ok: boolean;
10
+ noEcosystemFound?: boolean | undefined;
11
+ hardFailure?: boolean;
12
+ manifestPath?: string | undefined;
13
+ };
14
+ // Pure outcome-matrix evaluator. Exported so dispatcher behavior can be
15
+ // unit-tested without spawning the CLI binary. Throws InputError on
16
+ // failures that must propagate to a non-zero CLI exit; returns void on
17
+ // success.
18
+ //
19
+ // - Hard failure: ok === false && !noEcosystemFound. The ecosystem was
20
+ // detected (or the runner crashed), but extraction failed. Always a
21
+ // non-zero exit, even when another ecosystem succeeded.
22
+ // - No-discovery: noEcosystemFound === true. Genuinely absent ecosystem.
23
+ // Auto-detect mode tolerates this when at least one other ecosystem
24
+ // succeeded; explicit mode treats it as an error.
25
+ export declare function evaluateEcosystemOutcomes(outcomes: readonly EcosystemOutcome[], isExplicit: boolean): void;
7
26
  declare function run(argv: string[] | readonly string[], importMeta: ImportMeta, { parentName }: CliCommandContext): Promise<void>;
8
27
  export {};
9
28
  //# sourceMappingURL=cmd-manifest-bazel.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cmd-manifest-bazel.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/cmd-manifest-bazel.mts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,0CAA0C,CAAA;AA8DjD,eAAO,MAAM,gBAAgB;;;;CAI5B,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,CA6Hf"}
1
+ {"version":3,"file":"cmd-manifest-bazel.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/cmd-manifest-bazel.mts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAEV,iBAAiB,EAClB,MAAM,0CAA0C,CAAA;AA2EjD,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,EAAE,OAAO,GAAG,MAAM,CAAA;IAC3B,EAAE,EAAE,OAAO,CAAA;IACX,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAClC,CAAA;AAED,wEAAwE;AACxE,oEAAoE;AACpE,uEAAuE;AACvE,WAAW;AACX,EAAE;AACF,uEAAuE;AACvE,sEAAsE;AACtE,0DAA0D;AAC1D,yEAAyE;AACzE,sEAAsE;AACtE,oDAAoD;AACpD,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,EACrC,UAAU,EAAE,OAAO,GAClB,IAAI,CAiCN;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,CA+Kf"}
@@ -15,6 +15,7 @@ export type ExtractBazelOptions = {
15
15
  export type ExtractBazelResult = {
16
16
  artifactCount: number;
17
17
  manifestPath?: string | undefined;
18
+ noEcosystemFound?: boolean | undefined;
18
19
  ok: boolean;
19
20
  };
20
21
  type MavenInstallJsonCurrent = {
@@ -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":"AAiCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAGjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,gEAAgE;IAChE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,EAAE,EAAE,OAAO,CAAA;CACZ,CAAA;AAiBD,KAAK,uBAAuB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE;YAAE,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACzE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CACxC,CAAA;AA2DD,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,iBAAiB,EAAE,GAC7B,uBAAuB,CAqEzB;AA6HD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,kBAAkB,CAAC,CA6J7B"}
1
+ {"version":3,"file":"extract_bazel_to_maven.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/extract_bazel_to_maven.mts"],"names":[],"mappings":"AAiCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAGjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,gEAAgE;IAChE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACtC,EAAE,EAAE,OAAO,CAAA;CACZ,CAAA;AAiBD,KAAK,uBAAuB,GAAG;IAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE;YAAE,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACzE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CACxC,CAAA;AA2DD,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,iBAAiB,EAAE,GAC7B,uBAAuB,CAqEzB;AA6HD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,kBAAkB,CAAC,CA8K7B"}
@@ -0,0 +1,20 @@
1
+ export type ExtractBazelToPypiOptions = {
2
+ bazelFlags: string | undefined;
3
+ bazelOutputBase: string | undefined;
4
+ bazelRc: string | undefined;
5
+ bin: string | undefined;
6
+ cwd: string;
7
+ env?: NodeJS.ProcessEnv;
8
+ out: string;
9
+ outLayout?: 'flat' | 'standalone';
10
+ verbose: boolean;
11
+ explicitEcosystem?: boolean;
12
+ };
13
+ export type ExtractBazelToPypiResult = {
14
+ artifactCount: number;
15
+ manifestPath?: string | undefined;
16
+ ok: boolean;
17
+ noEcosystemFound?: boolean;
18
+ };
19
+ export declare function extractBazelToPypi(opts: ExtractBazelToPypiOptions): Promise<ExtractBazelToPypiResult>;
20
+ //# sourceMappingURL=extract_bazel_to_pypi.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract_bazel_to_pypi.d.mts","sourceRoot":"","sources":["../../../../../src/commands/manifest/bazel/extract_bazel_to_pypi.mts"],"names":[],"mappings":"AAyCA,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,eAAe,EAAE,MAAM,GAAG,SAAS,CAAA;IACnC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,MAAM,GAAG,YAAY,CAAA;IACjC,OAAO,EAAE,OAAO,CAAA;IAChB,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,EAAE,EAAE,OAAO,CAAA;IACX,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAmBD,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,wBAAwB,CAAC,CA8NnC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate_auto_manifest.d.mts","sourceRoot":"","sources":["../../../../src/commands/manifest/generate_auto_manifest.mts"],"names":[],"mappings":"AAYA,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,CA6FtC"}
1
+ {"version":3,"file":"generate_auto_manifest.d.mts","sourceRoot":"","sources":["../../../../src/commands/manifest/generate_auto_manifest.mts"],"names":[],"mappings":"AAYA,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,CAgGtC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "socket",
3
- "version": "1.1.102",
3
+ "version": "1.1.103",
4
4
  "description": "CLI for Socket.dev",
5
5
  "homepage": "https://github.com/SocketDev/socket-cli",
6
6
  "license": "MIT AND OFL-1.1",
@@ -96,7 +96,7 @@
96
96
  "@babel/preset-typescript": "7.27.1",
97
97
  "@babel/runtime": "7.28.4",
98
98
  "@biomejs/biome": "2.2.4",
99
- "@coana-tech/cli": "15.3.6",
99
+ "@coana-tech/cli": "15.3.9",
100
100
  "@cyclonedx/cdxgen": "12.1.2",
101
101
  "@dotenvx/dotenvx": "1.49.0",
102
102
  "@eslint/compat": "1.3.2",