@cdxgen/cdxgen 13.3.0 → 13.4.0
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 +9 -6
- package/bin/cdxgen.js +90 -26
- package/bin/evinse.js +18 -1
- package/bin/repl.js +86 -0
- package/bin/sign.js +45 -15
- package/bin/tracebom.js +5 -1
- package/bin/validate.js +84 -18
- package/bin/verify.js +155 -86
- package/data/helpers/init.gradle +46 -21
- package/data/remediations.json +61 -0
- package/data/rules/dependency-sources.yaml +67 -0
- package/data/rules/scala-evidence.yaml +115 -0
- package/lib/audit/index.js +38 -6
- package/lib/cli/index.js +113 -54
- package/lib/cli/jsBom.js +50 -29
- package/lib/cli/jvmBom.js +665 -138
- package/lib/cli/managedBom.js +320 -200
- package/lib/cli/nativeBom.js +139 -30
- package/lib/core/activity.js +12 -0
- package/lib/core/env.js +17 -9
- package/lib/core/fs.js +3 -2
- package/lib/core/httpClient.js +159 -24
- package/lib/core/pluginRun.js +184 -0
- package/lib/core/processTree.js +100 -0
- package/lib/core/runState.js +39 -0
- package/lib/core/toml.js +72 -0
- package/lib/ecosystems/asarutils.js +4 -2
- package/lib/ecosystems/bunutils.js +5 -7
- package/lib/ecosystems/cargoCache.js +231 -8
- package/lib/ecosystems/cmakeResolver.js +10 -21
- package/lib/ecosystems/cppBuildContext.js +631 -0
- package/lib/ecosystems/cppEvidence.js +337 -22
- package/lib/ecosystems/cppIncludeResolver.js +294 -0
- package/lib/ecosystems/denoutils.js +93 -66
- package/lib/ecosystems/ecosystems.js +1967 -788
- package/lib/ecosystems/golem.js +28 -12
- package/lib/ecosystems/gradleutils.js +314 -30
- package/lib/ecosystems/jsEvidence.js +85 -24
- package/lib/ecosystems/kosi.js +21 -4
- package/lib/ecosystems/npmutils.js +64 -0
- package/lib/ecosystems/parsers-dotnet.js +567 -151
- package/lib/ecosystems/parsers-elm.js +46 -28
- package/lib/ecosystems/parsers-gleam.js +3 -4
- package/lib/ecosystems/parsers-go.js +324 -61
- package/lib/ecosystems/parsers-js.js +92 -26
- package/lib/ecosystems/parsers-julia.js +2 -3
- package/lib/ecosystems/parsers-jvm.js +204 -12
- package/lib/ecosystems/parsers-misc.js +182 -55
- package/lib/ecosystems/parsers-python.js +141 -10
- package/lib/ecosystems/parsers-rust.js +4 -4
- package/lib/ecosystems/parsers-terraform.js +1573 -19
- package/lib/ecosystems/pythonutils.js +102 -6
- package/lib/ecosystems/remote/huggingface.js +3 -0
- package/lib/ecosystems/rubyutils.js +67 -17
- package/lib/ecosystems/rusi.js +22 -9
- package/lib/ecosystems/sbtutils.js +243 -187
- package/lib/ecosystems/scalacliutils.js +342 -0
- package/lib/ecosystems/scalasem.js +2618 -0
- package/lib/ecosystems/terraformRegistry.js +288 -0
- package/lib/ecosystems/utils.js +2 -0
- package/lib/ecosystems/vendoredCode.js +156 -0
- package/lib/evinser/evinser.js +578 -69
- package/lib/helpers/agenticToolutils.js +2 -2
- package/lib/helpers/bomSigner.js +576 -128
- package/lib/inventory/aiCollector.js +4 -1
- package/lib/inventory/analyzer.js +110 -127
- package/lib/inventory/atomUtils.js +171 -48
- package/lib/inventory/auditCategories.js +7 -0
- package/lib/inventory/buildToolRateLimit.js +144 -0
- package/lib/inventory/cacheCommands.js +2 -1
- package/lib/inventory/cmakeBuildDirs.js +254 -0
- package/lib/inventory/deps.js +501 -124
- package/lib/inventory/dosai.js +248 -44
- package/lib/inventory/dosaiParsers.js +310 -15
- package/lib/inventory/dynamic.js +52 -6
- package/lib/inventory/evidenceUtils.js +154 -109
- package/lib/inventory/fetchBatch.js +574 -38
- package/lib/inventory/fetchDiskCache.js +597 -0
- package/lib/inventory/forgeEnricher.js +14 -5
- package/lib/inventory/jvmLocalRepos.js +917 -0
- package/lib/inventory/mcpConfigParser.js +2 -3
- package/lib/inventory/parentSelection.js +146 -0
- package/lib/inventory/rustFormulationParser.js +3 -4
- package/lib/inventory/scalaCoords.js +153 -0
- package/lib/inventory/source.js +8 -8
- package/lib/inventory/spdx.js +101 -0
- package/lib/inventory/traceRunner.js +88 -7
- package/lib/inventory/tracedCrypto.js +294 -0
- package/lib/managers/docker.js +33 -32
- package/lib/managers/oci.js +24 -2
- package/lib/parsers/cmakeCache.js +69 -0
- package/lib/parsers/cmakeLists.js +16 -2
- package/lib/parsers/cmakePresets.js +400 -0
- package/lib/parsers/compileCommands.js +557 -0
- package/lib/parsers/strictJson.js +322 -0
- package/lib/parsers/terraformConfig.js +1073 -0
- package/lib/parsers/terraformSource.js +652 -0
- package/lib/server/server.js +23 -0
- package/lib/stages/postgen/introspection/markers.js +1 -1
- package/lib/stages/postgen/postgen.js +15 -1
- package/lib/stages/postgen/specVersionCompat.js +32 -0
- package/lib/validator/index.js +25 -10
- package/lib/validator/reporters/json.js +1 -0
- package/package.json +21 -21
- package/types/lib/audit/index.d.ts.map +1 -1
- package/types/lib/cli/index.d.ts.map +1 -1
- package/types/lib/cli/jsBom.d.ts.map +1 -1
- package/types/lib/cli/jvmBom.d.ts +24 -1
- package/types/lib/cli/jvmBom.d.ts.map +1 -1
- package/types/lib/cli/managedBom.d.ts +7 -4
- package/types/lib/cli/managedBom.d.ts.map +1 -1
- package/types/lib/cli/nativeBom.d.ts +3 -1
- package/types/lib/cli/nativeBom.d.ts.map +1 -1
- package/types/lib/core/activity.d.ts.map +1 -1
- package/types/lib/core/env.d.ts +9 -0
- package/types/lib/core/env.d.ts.map +1 -1
- package/types/lib/core/fs.d.ts.map +1 -1
- package/types/lib/core/httpClient.d.ts +13 -8
- package/types/lib/core/httpClient.d.ts.map +1 -1
- package/types/lib/core/pluginRun.d.ts +97 -0
- package/types/lib/core/pluginRun.d.ts.map +1 -0
- package/types/lib/core/processTree.d.ts +36 -0
- package/types/lib/core/processTree.d.ts.map +1 -0
- package/types/lib/core/runState.d.ts +29 -0
- package/types/lib/core/runState.d.ts.map +1 -0
- package/types/lib/core/toml.d.ts +20 -0
- package/types/lib/core/toml.d.ts.map +1 -0
- package/types/lib/ecosystems/asarutils.d.ts.map +1 -1
- package/types/lib/ecosystems/bunutils.d.ts.map +1 -1
- package/types/lib/ecosystems/cargoCache.d.ts +12 -0
- package/types/lib/ecosystems/cargoCache.d.ts.map +1 -1
- package/types/lib/ecosystems/cmakeResolver.d.ts +5 -3
- package/types/lib/ecosystems/cmakeResolver.d.ts.map +1 -1
- package/types/lib/ecosystems/cppBuildContext.d.ts +55 -0
- package/types/lib/ecosystems/cppBuildContext.d.ts.map +1 -0
- package/types/lib/ecosystems/cppEvidence.d.ts +18 -2
- package/types/lib/ecosystems/cppEvidence.d.ts.map +1 -1
- package/types/lib/ecosystems/cppIncludeResolver.d.ts +92 -0
- package/types/lib/ecosystems/cppIncludeResolver.d.ts.map +1 -0
- package/types/lib/ecosystems/denoutils.d.ts +9 -3
- package/types/lib/ecosystems/denoutils.d.ts.map +1 -1
- package/types/lib/ecosystems/ecosystems.d.ts +62 -13
- package/types/lib/ecosystems/ecosystems.d.ts.map +1 -1
- package/types/lib/ecosystems/golem.d.ts.map +1 -1
- package/types/lib/ecosystems/gradleutils.d.ts +50 -0
- package/types/lib/ecosystems/gradleutils.d.ts.map +1 -1
- package/types/lib/ecosystems/jsEvidence.d.ts.map +1 -1
- package/types/lib/ecosystems/kosi.d.ts.map +1 -1
- package/types/lib/ecosystems/npmutils.d.ts +15 -0
- package/types/lib/ecosystems/npmutils.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-dotnet.d.ts +118 -4
- package/types/lib/ecosystems/parsers-dotnet.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-elm.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-gleam.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-go.d.ts +44 -2
- package/types/lib/ecosystems/parsers-go.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-js.d.ts +6 -1
- package/types/lib/ecosystems/parsers-js.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-julia.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-jvm.d.ts +46 -1
- package/types/lib/ecosystems/parsers-jvm.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-misc.d.ts +3 -1
- package/types/lib/ecosystems/parsers-misc.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-python.d.ts +53 -3
- package/types/lib/ecosystems/parsers-python.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-terraform.d.ts +38 -21
- package/types/lib/ecosystems/parsers-terraform.d.ts.map +1 -1
- package/types/lib/ecosystems/pythonutils.d.ts +27 -2
- package/types/lib/ecosystems/pythonutils.d.ts.map +1 -1
- package/types/lib/ecosystems/remote/huggingface.d.ts.map +1 -1
- package/types/lib/ecosystems/rubyutils.d.ts +21 -1
- package/types/lib/ecosystems/rubyutils.d.ts.map +1 -1
- package/types/lib/ecosystems/rusi.d.ts.map +1 -1
- package/types/lib/ecosystems/sbtutils.d.ts +88 -2
- package/types/lib/ecosystems/sbtutils.d.ts.map +1 -1
- package/types/lib/ecosystems/scalacliutils.d.ts +56 -0
- package/types/lib/ecosystems/scalacliutils.d.ts.map +1 -0
- package/types/lib/ecosystems/scalasem.d.ts +311 -0
- package/types/lib/ecosystems/scalasem.d.ts.map +1 -0
- package/types/lib/ecosystems/terraformRegistry.d.ts +9 -0
- package/types/lib/ecosystems/terraformRegistry.d.ts.map +1 -0
- package/types/lib/ecosystems/utils.d.ts +2 -2
- package/types/lib/ecosystems/utils.d.ts.map +1 -1
- package/types/lib/ecosystems/vendoredCode.d.ts +32 -0
- package/types/lib/ecosystems/vendoredCode.d.ts.map +1 -0
- package/types/lib/evinser/evinser.d.ts +75 -8
- package/types/lib/evinser/evinser.d.ts.map +1 -1
- package/types/lib/helpers/bomSigner.d.ts +80 -4
- package/types/lib/helpers/bomSigner.d.ts.map +1 -1
- package/types/lib/inventory/aiCollector.d.ts.map +1 -1
- package/types/lib/inventory/analyzer.d.ts.map +1 -1
- package/types/lib/inventory/atomUtils.d.ts +82 -10
- package/types/lib/inventory/atomUtils.d.ts.map +1 -1
- package/types/lib/inventory/auditCategories.d.ts +3 -0
- package/types/lib/inventory/auditCategories.d.ts.map +1 -1
- package/types/lib/inventory/buildToolRateLimit.d.ts +38 -0
- package/types/lib/inventory/buildToolRateLimit.d.ts.map +1 -0
- package/types/lib/inventory/cacheCommands.d.ts +2 -1
- package/types/lib/inventory/cacheCommands.d.ts.map +1 -1
- package/types/lib/inventory/cmakeBuildDirs.d.ts +58 -0
- package/types/lib/inventory/cmakeBuildDirs.d.ts.map +1 -0
- package/types/lib/inventory/deps.d.ts +59 -1
- package/types/lib/inventory/deps.d.ts.map +1 -1
- package/types/lib/inventory/dosai.d.ts +57 -8
- package/types/lib/inventory/dosai.d.ts.map +1 -1
- package/types/lib/inventory/dosaiParsers.d.ts +53 -7
- package/types/lib/inventory/dosaiParsers.d.ts.map +1 -1
- package/types/lib/inventory/dynamic.d.ts +10 -0
- package/types/lib/inventory/dynamic.d.ts.map +1 -1
- package/types/lib/inventory/evidenceUtils.d.ts +19 -4
- package/types/lib/inventory/evidenceUtils.d.ts.map +1 -1
- package/types/lib/inventory/fetchBatch.d.ts +83 -14
- package/types/lib/inventory/fetchBatch.d.ts.map +1 -1
- package/types/lib/inventory/fetchDiskCache.d.ts +169 -0
- package/types/lib/inventory/fetchDiskCache.d.ts.map +1 -0
- package/types/lib/inventory/forgeEnricher.d.ts.map +1 -1
- package/types/lib/inventory/jvmLocalRepos.d.ts +178 -0
- package/types/lib/inventory/jvmLocalRepos.d.ts.map +1 -0
- package/types/lib/inventory/mcpConfigParser.d.ts.map +1 -1
- package/types/lib/inventory/parentSelection.d.ts +34 -0
- package/types/lib/inventory/parentSelection.d.ts.map +1 -0
- package/types/lib/inventory/rustFormulationParser.d.ts.map +1 -1
- package/types/lib/inventory/scalaCoords.d.ts +80 -0
- package/types/lib/inventory/scalaCoords.d.ts.map +1 -0
- package/types/lib/inventory/source.d.ts.map +1 -1
- package/types/lib/inventory/spdx.d.ts +9 -0
- package/types/lib/inventory/spdx.d.ts.map +1 -1
- package/types/lib/inventory/traceRunner.d.ts +12 -0
- package/types/lib/inventory/traceRunner.d.ts.map +1 -1
- package/types/lib/inventory/tracedCrypto.d.ts +42 -0
- package/types/lib/inventory/tracedCrypto.d.ts.map +1 -0
- package/types/lib/managers/docker.d.ts.map +1 -1
- package/types/lib/managers/oci.d.ts +3 -1
- package/types/lib/managers/oci.d.ts.map +1 -1
- package/types/lib/parsers/cmakeCache.d.ts +16 -0
- package/types/lib/parsers/cmakeCache.d.ts.map +1 -1
- package/types/lib/parsers/cmakeLists.d.ts +2 -1
- package/types/lib/parsers/cmakeLists.d.ts.map +1 -1
- package/types/lib/parsers/cmakePresets.d.ts +78 -0
- package/types/lib/parsers/cmakePresets.d.ts.map +1 -0
- package/types/lib/parsers/compileCommands.d.ts +115 -0
- package/types/lib/parsers/compileCommands.d.ts.map +1 -0
- package/types/lib/parsers/strictJson.d.ts +46 -0
- package/types/lib/parsers/strictJson.d.ts.map +1 -0
- package/types/lib/parsers/terraformConfig.d.ts +70 -0
- package/types/lib/parsers/terraformConfig.d.ts.map +1 -0
- package/types/lib/parsers/terraformSource.d.ts +66 -0
- package/types/lib/parsers/terraformSource.d.ts.map +1 -0
- package/types/lib/server/server.d.ts.map +1 -1
- package/types/lib/stages/postgen/postgen.d.ts.map +1 -1
- package/types/lib/stages/postgen/specVersionCompat.d.ts.map +1 -1
- package/types/lib/validator/index.d.ts +8 -0
- package/types/lib/validator/index.d.ts.map +1 -1
- package/types/lib/validator/reporters/json.d.ts.map +1 -1
- package/lib/third-party/arborist/snapshots/calc-dep-flags.test.cjs +0 -462
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Helpers for external commands stopped by cdxgen's spawn timeout.
|
|
3
|
+
*
|
|
4
|
+
* Layer 0: this module imports nothing outside `lib/core`, so both the atom
|
|
5
|
+
* and the dosai runners (layer 2) can share it.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* A duration for a message: seconds to one decimal below a minute, minutes to
|
|
9
|
+
* one decimal from there.
|
|
10
|
+
*
|
|
11
|
+
* @param {number} ms Duration in milliseconds
|
|
12
|
+
* @returns {string} Human-readable duration
|
|
13
|
+
*/
|
|
14
|
+
export declare function formatDuration(ms: number): string;
|
|
15
|
+
/**
|
|
16
|
+
* Stop the descendants a timed-out run left behind on Windows.
|
|
17
|
+
*
|
|
18
|
+
* The spawn timeout terminates only the process cdxgen spawned, and Windows
|
|
19
|
+
* neither kills nor re-parents its children: a shell's command, a runtime's
|
|
20
|
+
* workers, or the build hosts a .NET analyzer starts keep running while still
|
|
21
|
+
* pointing at the dead process's pid. `taskkill /T` on that pid finds nothing,
|
|
22
|
+
* because the root is already gone. The live descendants are therefore found
|
|
23
|
+
* by parent pid in a process snapshot and stopped, limited to processes
|
|
24
|
+
* created after the run started. The root's own children must also predate
|
|
25
|
+
* its end: once the root is gone its pid can be handed to an unrelated
|
|
26
|
+
* process, whose children would otherwise look like the run's. Elsewhere this
|
|
27
|
+
* does nothing: an orphan is re-parented and can no longer be told apart.
|
|
28
|
+
*
|
|
29
|
+
* @param {number|undefined} rootPid pid of the process cdxgen spawned
|
|
30
|
+
* @param {number} startedAt Epoch milliseconds at which the run started
|
|
31
|
+
* @param {number} [endedAt] Epoch milliseconds at which the spawned process ended
|
|
32
|
+
* @param {string} [toolName] Name of the tool, for the debug message
|
|
33
|
+
* @returns {number[]} The pids that were stopped
|
|
34
|
+
*/
|
|
35
|
+
export declare function reapProcessTree(rootPid: number | undefined, startedAt: number, endedAt?: number, toolName?: string): number[];
|
|
36
|
+
//# sourceMappingURL=processTree.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processTree.d.ts","sourceRoot":"","sources":["../../../lib/core/processTree.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAHtB,MAGsB,GAFpB,MAAM,CAQlB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAPE,MAAM,GAAC,SAOT,EACP,SAAS,EAPA,MAOA,EACT,OAAO,AAPN,CACA,EADQ,MAOW,EACpB,QAAQ,AAPP,CACA,EADQ,MAOY,GANV,MAAM,EAAE,CAuDpB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State that lasts for one run.
|
|
3
|
+
*
|
|
4
|
+
* Registry answers, prefetched documents, recorded misses and local cache
|
|
5
|
+
* lookups are kept in module state, so that a package several lockfiles name
|
|
6
|
+
* costs one lookup. A run is one BOM generation. The CLI exits when it ends, but
|
|
7
|
+
* a long-lived process such as the server performs many, and nothing a run
|
|
8
|
+
* remembered should outlive it: the registries publish new releases, builds
|
|
9
|
+
* download new artifacts, and the memory belongs to the next scan.
|
|
10
|
+
*
|
|
11
|
+
* Every module that keeps such state registers a reset when it loads. The
|
|
12
|
+
* server calls {@link resetRunState} between scans. A module that has not
|
|
13
|
+
* loaded yet holds nothing to reset.
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Register the function that empties a module's per-run state.
|
|
17
|
+
*
|
|
18
|
+
* @param {string} name Unique name, normally the module and what it holds
|
|
19
|
+
* @param {() => void} reset Empties that state
|
|
20
|
+
* @returns {void}
|
|
21
|
+
*/
|
|
22
|
+
export declare function registerRunReset(name: string, reset: () => void): void;
|
|
23
|
+
/**
|
|
24
|
+
* Empty the per-run state of every module that registered one.
|
|
25
|
+
*
|
|
26
|
+
* @returns {void}
|
|
27
|
+
*/
|
|
28
|
+
export declare function resetRunState(): void;
|
|
29
|
+
//# sourceMappingURL=runState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runState.d.ts","sourceRoot":"","sources":["../../../lib/core/runState.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAJ1B,MAI0B,EAAE,KAAK,EAHjC,MAAM,IAG2B,GAF/B,IAAI,CAIhB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAFhB,IAAI,CAMhB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TOML parsing with stable, ordinary objects.
|
|
3
|
+
*
|
|
4
|
+
* smol-toml 1.9 began returning tables and inline tables with a `null`
|
|
5
|
+
* prototype so that a hostile `__proto__` key in a manifest cannot pollute
|
|
6
|
+
* `Object.prototype`. The SBOM data itself is unaffected, but cdxgen hands
|
|
7
|
+
* parsed manifests straight to callers (and `assert.deepStrictEqual` in the
|
|
8
|
+
* test suite), which compare by prototype and would see every table as a
|
|
9
|
+
* different kind of value. Re-wrapping the parse result with the standard
|
|
10
|
+
* prototype keeps the pre-1.9 contract: plain objects all the way down,
|
|
11
|
+
* `__proto__` keys included as ordinary own properties.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Parse a TOML document into plain objects.
|
|
15
|
+
*
|
|
16
|
+
* @param {string} text TOML source
|
|
17
|
+
* @returns {Object} parsed document whose tables use `Object.prototype`
|
|
18
|
+
*/
|
|
19
|
+
export declare function parseToml(text: string): Object;
|
|
20
|
+
//# sourceMappingURL=toml.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toml.d.ts","sourceRoot":"","sources":["../../../lib/core/toml.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAoDH;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAHnB,MAGmB,GAFjB,MAAM,CAIlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asarutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/asarutils.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"asarutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/asarutils.js"],"names":[],"mappings":"AA8PA;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAHlC,MAGkC,GAFhC,OAAO,CA6BnB;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAJ1C,MAI0C,GAHxC,MAAM,CAwDlB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAJhC,MAIgC,GAH9B,MAAM,CA2ClB;AAgYD;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EANE,MAAM,QAMR,EACP,YAAY,EANH,MAMG,EACZ,WAAW,EANF,MAME,GALA,MAAM,QAAM,CAqDxB;AA0YD;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EARvC,MAQuC,EAAE,OAAO,AAPxD,CAKA,EAJA;IAAyB,eAAe,AAAxC,CAEA,EAFQ,MAAM,CAEd;IAAyB,WAAW,AAApC,CAEA,EAFQ,MAAM,CAEd;CAE6D,GAFnD,OAAO,CAAC,MAAM,CAAC,CAyM3B;AAuGD;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAH3C,MAG2C,GAFzC,OAAO,CAAC,MAAM,GAAC,SAAS,CAAC,CA+BrC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAF/B,MAE+B,QAYzC;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,eAAe,EALN,MAKM,EACf,mBAAmB,EALV,OAKU,GAJR,KAAK,CAAC,MAAM,CAAC,CA0BzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bunutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/bunutils.js"],"names":[],"mappings":"AAgCA;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EALlC,MAKkC,GAJhC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAwB1D;AA2ED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,YAAY,CAAC,WAAW,EALnC,MAKmC,EAAE,OAAO,AAJpD,CACA,EADQ,MAIiD,GAH/C,OAAO,CAAC;IAAC,OAAO,QAAQ;IAAC,gBAAgB,QAAO;CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"bunutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/bunutils.js"],"names":[],"mappings":"AAgCA;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EALlC,MAKkC,GAJhC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAwB1D;AA2ED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,YAAY,CAAC,WAAW,EALnC,MAKmC,EAAE,OAAO,AAJpD,CACA,EADQ,MAIiD,GAH/C,OAAO,CAAC;IAAC,OAAO,QAAQ;IAAC,gBAAgB,QAAO;CAAC,CAAC,CAwZ9D"}
|
|
@@ -72,4 +72,16 @@ export declare function getCargoRegistryDir(): string;
|
|
|
72
72
|
* local source has this crate.
|
|
73
73
|
*/
|
|
74
74
|
export declare function readCargoCacheMetadata(name: string, version: string): CargoCacheMetadata | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* The manifest values of a `.crate` archive, read without extracting it.
|
|
77
|
+
*
|
|
78
|
+
* @param {string} crateFile Path to the `.crate` archive
|
|
79
|
+
* @param {string} name Crate name, for the archive's inner directory
|
|
80
|
+
* @param {string} version Crate version
|
|
81
|
+
* @returns {Promise<{values: Object, source: string}|undefined>}
|
|
82
|
+
*/
|
|
83
|
+
export declare function readCrateArchiveValues(crateFile: string, name: string, version: string): Promise<{
|
|
84
|
+
values: Object;
|
|
85
|
+
source: string;
|
|
86
|
+
} | undefined>;
|
|
75
87
|
//# sourceMappingURL=cargoCache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cargoCache.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cargoCache.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cargoCache.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cargoCache.js"],"names":[],"mappings":"AAyCG,YAAkB,kBAAkB,GACpC;;;;IAAoB,WAAW,AAA/B,CACA,EADW,MAAM,CACjB;;;;IAAoB,OAAO,AAA3B,CACA,EADW,MAAM,CACjB;;;;IAAoB,UAAU,AAA9B,CACA,EADW,MAAM,CACjB;;;;IAAoB,QAAQ,AAA5B,CACA,EADW,MAAM,CACjB;;;;IAAoB,WAAW,AAA/B,CACA,EADW,MAAM,CACjB;;;;IAAoB,QAAQ,AAA5B,CACA,EADW,MAAM,CACjB;;;;IAAoB,QAAQ,AAA5B,CACA,EADW,MAAM,CACjB;;;;IAAqB,MAAM,AAA3B,CACA,EADW,OAAO,CAClB;;;;IAAoB,WAAW,AAA/B,CACA,EADW,MAAM,CACjB;;;;IAAoB,aAAa,AAAjC,CACA,EADW,MAAM,CACjB;;;;IAAqB,OAAO,EAAjB,MAAM,EAAE,CACrB;CAAA,CAAA;AAUD;;;;;GAKG;AACH,wBAAgB,oBAAoB,IAFvB,IAAI,CAKhB;AAID;;;;GAIG;AACH,wBAAgB,yBAAyB,IAF5B,OAAO,CAOnB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAFtB,MAAM,CAOlB;AAmCD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EALtC,MAKsC,EAAE,OAAO,EAJ/C,MAI+C,GAH7C,kBAAkB,GAAC,SAAS,CAmCxC;AAoGD;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,SAAS,EAL3C,MAK2C,EAAE,IAAI,EAJjD,MAIiD,EAAE,OAAO,EAH1D,MAG0D,GAFxD,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,GAAC,SAAS,CAAC,CA0C/D"}
|
|
@@ -22,9 +22,11 @@ declare function toRepoRelative(absPath: string, scanRoot: string): string | nul
|
|
|
22
22
|
/**
|
|
23
23
|
* Detect the build directory that holds a `CMakeCache.txt`.
|
|
24
24
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
25
|
+
* An explicit `--cmake-cache <path>` option (passed via `options.cmakeCache`)
|
|
26
|
+
* takes precedence and skips autodetection. Otherwise the project's build
|
|
27
|
+
* directories are searched in order: those its CMake presets configure, then
|
|
28
|
+
* the conventional `build`, `out`, `builddir` and `cmake-build-` directories
|
|
29
|
+
* (see `cmakeBuildDirCandidates`).
|
|
28
30
|
*
|
|
29
31
|
* @param {string} path Project scan root
|
|
30
32
|
* @param {Object} options CLI options; `options.cmakeCache` is an explicit override
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cmakeResolver.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cmakeResolver.js"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"cmakeResolver.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cmakeResolver.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a C/C++ project is built: its CMake configure presets, the compilers
|
|
3
|
+
* its compilation database or configured build tree names, the
|
|
4
|
+
* security-hardening options it is compiled and linked with, and which of the
|
|
5
|
+
* headers it includes are its own.
|
|
6
|
+
*
|
|
7
|
+
* The presets and compilers become formulation components, the hardening
|
|
8
|
+
* options properties of the project component, and the project's own include
|
|
9
|
+
* directories let the include analysis tell first-party headers from
|
|
10
|
+
* dependencies.
|
|
11
|
+
*
|
|
12
|
+
* Layer 3: this module reads the build tree and may run a compiler (only
|
|
13
|
+
* `--version`, only outside secure mode, only a GCC, Clang, MSVC, Intel,
|
|
14
|
+
* NVIDIA or EDG driver found on the PATH or named by an absolute path outside
|
|
15
|
+
* the project).
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* The empty build context, for scans that are not of a source tree.
|
|
19
|
+
*
|
|
20
|
+
* @returns {Object}
|
|
21
|
+
*/
|
|
22
|
+
export declare function emptyCppBuildContext(): Object;
|
|
23
|
+
/**
|
|
24
|
+
* The executable a driver names, when it may be run: an absolute path, or a
|
|
25
|
+
* command found on the PATH, that is a file outside the project. A relative
|
|
26
|
+
* path, or anything inside the project tree, is never run, since a
|
|
27
|
+
* compilation database can come with the code it describes.
|
|
28
|
+
*/
|
|
29
|
+
export declare function trustedCompilerPath(driver: any, root: any): any;
|
|
30
|
+
/**
|
|
31
|
+
* Resolve the build context of a C/C++ project.
|
|
32
|
+
*
|
|
33
|
+
* @param {string} path Project scan root
|
|
34
|
+
* @param {Object} options CLI options
|
|
35
|
+
* @param {Object} [cmakeContext] The CMake context (`boundaries` lists the
|
|
36
|
+
* source directories of fetched and submodule dependencies)
|
|
37
|
+
* @param {string[]} [vendoredDirs] Directories of code the project carries
|
|
38
|
+
* under another license; their headers are not the project's own
|
|
39
|
+
* @returns {{
|
|
40
|
+
* formulationComponents: Object[],
|
|
41
|
+
* parentProperties: Object[],
|
|
42
|
+
* firstPartyIncludeDirs: string[],
|
|
43
|
+
* compileDatabase: string|undefined,
|
|
44
|
+
* isFirstPartyHeader: function(string): boolean,
|
|
45
|
+
* }}
|
|
46
|
+
*/
|
|
47
|
+
export declare function resolveCppBuildContext(path: string, options?: Object, cmakeContext?: Object, vendoredDirs?: string[]): {
|
|
48
|
+
formulationComponents: Object[];
|
|
49
|
+
parentProperties: Object[];
|
|
50
|
+
firstPartyIncludeDirs: string[];
|
|
51
|
+
compileDatabase: string | undefined;
|
|
52
|
+
isFirstPartyHeader: Function;
|
|
53
|
+
(string: any): boolean;
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=cppBuildContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cppBuildContext.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cppBuildContext.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAqEH;;;;GAIG;AACH,wBAAgB,oBAAoB,IAFvB,MAAM,CAIlB;AAgKD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,KAAA,EAAE,IAAI,KAAA,OA0C/C;AA0KD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAfK,MAeL,EACJ,OAAO,GAfE,MAeG,EACZ,YAAY,AAfX,CAEA,EAFQ,MAee,EACxB,YAAY,AAdX,CAEA,EAFQ,MAAM,EAcE,GAZN;IACR,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,eAAe,EAAE,MAAM,GAAC,SAAS,CAAC;IAClC,kBAAkB,WAAU;IAAA,CAAC,MAAM,KAAA,GAAG,OAAO,CAAC;CAC/C,CAkJH"}
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a directory holds C or C++ sources for atom to parse.
|
|
3
|
+
*
|
|
4
|
+
* The search skips the directories the manifest searches skip, such as
|
|
5
|
+
* node_modules and dot directories, and honours the exclude patterns, so the
|
|
6
|
+
* sources of a native npm addon do not count.
|
|
7
|
+
*
|
|
8
|
+
* @param {string} src directory
|
|
9
|
+
* @param {Object} options CLI options
|
|
10
|
+
* @returns {boolean} true when the directory holds at least one C or C++ file
|
|
11
|
+
*/
|
|
12
|
+
export declare function hasCppSources(src: string, options?: Object): boolean;
|
|
1
13
|
/**
|
|
2
14
|
* Method to find c/c++ modules by collecting usages with atom
|
|
3
15
|
*
|
|
@@ -5,8 +17,12 @@
|
|
|
5
17
|
* @param {object} options Command line options
|
|
6
18
|
* @param {array} osPkgsList Array of OS pacakges represented as components
|
|
7
19
|
* @param {array} epkgList Existing packages list
|
|
20
|
+
* @param {function(string): boolean} [isFirstPartyHeader] Whether an
|
|
21
|
+
* included header is the project's own (found under the project root or
|
|
22
|
+
* one of its own include directories, outside any dependency's sources);
|
|
23
|
+
* such a header is not a component
|
|
8
24
|
*/
|
|
9
|
-
export declare function getCppModules(src: string, options: object, osPkgsList: array, epkgList: array): {
|
|
25
|
+
export declare function getCppModules(src: string, options: object, osPkgsList: array, epkgList: array, isFirstPartyHeader?: Function): {
|
|
10
26
|
parentComponent: Object | {
|
|
11
27
|
name: any;
|
|
12
28
|
version: any;
|
|
@@ -26,7 +42,7 @@ export declare function getCppModules(src: string, options: object, osPkgsList:
|
|
|
26
42
|
version: string;
|
|
27
43
|
type: string;
|
|
28
44
|
} | undefined;
|
|
29
|
-
pkgList:
|
|
45
|
+
pkgList: any[];
|
|
30
46
|
dependenciesList: {
|
|
31
47
|
ref: any;
|
|
32
48
|
dependsOn: any[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cppEvidence.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cppEvidence.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cppEvidence.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cppEvidence.js"],"names":[],"mappings":"AA0MA;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAJtB,MAIsB,EAAE,OAAO,GAH/B,MAGoC,GAFlC,OAAO,CAOnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAVM,MAUN,EACH,OAAO,EAVE,MAUF,EACP,UAAU,EAVD,KAUC,EACV,QAAQ,EAVC,KAUD,EACR,kBAAkB,WAAY;;;;;;;;;;;;;;;;;;;;;;;;;EAqc/B"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which package provides a C/C++ header, from the file the include resolved
|
|
3
|
+
* to. atom 4 and later name that file in each include's usages slice
|
|
4
|
+
* (`resolvedPath`); with it, a header is attributed exactly instead of by its
|
|
5
|
+
* name: to the project itself, to a dependency whose sources CMake fetched or
|
|
6
|
+
* a submodule checked out, to code the project vendors, to a port vcpkg
|
|
7
|
+
* installed, to a package in the Conan cache, or to the operating-system
|
|
8
|
+
* package that owns the file.
|
|
9
|
+
*
|
|
10
|
+
* Layer 3: reads the vcpkg installed tree and the Conan cache, and asks the
|
|
11
|
+
* OS package manager about a file (`dpkg-query -S`, `rpm -qf`, `apk info -W`,
|
|
12
|
+
* or the Homebrew Cellar path).
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* The include slices of an atom C/C++ usages report: for each header as
|
|
16
|
+
* written, the files it resolved to, whether it was written as a system
|
|
17
|
+
* include, and the functions the including files call that it declares.
|
|
18
|
+
* Slices from atom releases that do not name the resolved file contribute no
|
|
19
|
+
* paths and no symbols.
|
|
20
|
+
*
|
|
21
|
+
* @param {Object} sliceData Parsed atom usages report
|
|
22
|
+
* @returns {Map<string, {paths: Set<string>, system: boolean, symbols: Set<string>}>}
|
|
23
|
+
*/
|
|
24
|
+
export declare function parseCIncludeSlices(sliceData: Object): Map<string, {
|
|
25
|
+
paths: Set<string>;
|
|
26
|
+
system: boolean;
|
|
27
|
+
symbols: Set<string>;
|
|
28
|
+
}>;
|
|
29
|
+
/**
|
|
30
|
+
* Index the ports vcpkg installed into the given `vcpkg_installed`
|
|
31
|
+
* directories: every file a port installed, by absolute path. vcpkg lists a
|
|
32
|
+
* port's files in `vcpkg/info/<port>_<version>_<triplet>.list`, one path per
|
|
33
|
+
* line relative to the installed directory.
|
|
34
|
+
*
|
|
35
|
+
* @param {string[]} installedDirs `vcpkg_installed` directories
|
|
36
|
+
* @returns {Map<string, {port: string, version: string, triplet: string}>}
|
|
37
|
+
*/
|
|
38
|
+
export declare function readVcpkgInstalledIndex(installedDirs: string[]): Map<string, {
|
|
39
|
+
port: string;
|
|
40
|
+
version: string;
|
|
41
|
+
triplet: string;
|
|
42
|
+
}>;
|
|
43
|
+
/**
|
|
44
|
+
* The package folders of a Conan 2 cache, from its database
|
|
45
|
+
* (`<home>/p/cache.sqlite3`, table `packages`).
|
|
46
|
+
*
|
|
47
|
+
* @param {string} conanHome Conan 2 home (`CONAN_HOME`, or `~/.conan2`)
|
|
48
|
+
* @returns {Array<{dir: string, name: string, version: string}>}
|
|
49
|
+
*/
|
|
50
|
+
export declare function conan2Packages(conanHome: string): Array<{
|
|
51
|
+
dir: string;
|
|
52
|
+
name: string;
|
|
53
|
+
version: string;
|
|
54
|
+
}>;
|
|
55
|
+
/**
|
|
56
|
+
* The Conan package a file belongs to: in a Conan 1 cache
|
|
57
|
+
* (`<home>/.conan/data/<name>/<version>/<user>/<channel>/package/<id>/...`)
|
|
58
|
+
* from its path, in a Conan 2 cache from the cache's database.
|
|
59
|
+
*
|
|
60
|
+
* @param {string} file Absolute path
|
|
61
|
+
* @param {Object[]} conan2 Conan 2 package folders (see `conan2Packages`)
|
|
62
|
+
* @returns {{name: string, version: string}|undefined}
|
|
63
|
+
*/
|
|
64
|
+
export declare function conanPackageOf(file: string, conan2: Object[]): {
|
|
65
|
+
name: string;
|
|
66
|
+
version: string;
|
|
67
|
+
} | undefined;
|
|
68
|
+
/**
|
|
69
|
+
* Build the function that attributes a header from the files it resolved
|
|
70
|
+
* to.
|
|
71
|
+
*
|
|
72
|
+
* @param {Object} context
|
|
73
|
+
* @param {string} context.src Project scan root
|
|
74
|
+
* @param {Object[]} [context.components] Components already known: CMake
|
|
75
|
+
* dependencies (`cdx:cmake:sourceDir`) and vendored code
|
|
76
|
+
* (`cdx:vendored:path`) claim the headers under their directories
|
|
77
|
+
* @param {string[]} [context.buildDirs] Build directories, searched for
|
|
78
|
+
* `vcpkg_installed`
|
|
79
|
+
* @param {function(string): boolean} [context.isFirstPartyHeader] Whether a
|
|
80
|
+
* file is the project's own
|
|
81
|
+
* @returns {function(Iterable<string>): Object|undefined} Given the resolved
|
|
82
|
+
* files, `{kind: "first-party"}`, `{kind: "component", component}`,
|
|
83
|
+
* `{kind: "vcpkg", port, version, triplet}`, `{kind: "conan", name,
|
|
84
|
+
* version}`, `{kind: "os", pkgInfo}`, or `undefined` when no file says.
|
|
85
|
+
* Its `vcpkgPorts()` lists the ports vcpkg installed.
|
|
86
|
+
*/
|
|
87
|
+
export declare function createIncludeAttributor(context: {
|
|
88
|
+
src: string;
|
|
89
|
+
components?: Object[];
|
|
90
|
+
buildDirs?: string[];
|
|
91
|
+
}): Function;
|
|
92
|
+
//# sourceMappingURL=cppIncludeResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cppIncludeResolver.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/cppIncludeResolver.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAHlC,MAGkC,GAFhC,GAAG,CAAC,MAAM,EAAE;IAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAC,CAAC,CA+BpF;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAH1C,MAAM,EAGoC,GAFxC,GAAG,CAAC,MAAM,EAAE;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAAC,CAsCzE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAH7B,MAG6B,GAF3B,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAAC,CAuC/D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAJxB,MAIwB,EAAE,MAAM,EAHhC,MAAM,EAG0B,GAF9B;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,GAAC,SAAS,CAgBrD;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAd5C;IAAwB,GAAG,EAAnB,MAAM,CACd;IAA2B,UAAU,AAArC,CAGA,EAHQ,MAAM,EAAE,CAGhB;IAA2B,SAAS,AAApC,CAEA,EAFQ,MAAM,EAAE,CAEhB;CAQ4C,YAuF9C"}
|
|
@@ -28,9 +28,15 @@ export declare function findDenoJson(dir: string): string | undefined;
|
|
|
28
28
|
/**
|
|
29
29
|
* Fetch JSR registry metadata for deno/jsr package components.
|
|
30
30
|
*
|
|
31
|
-
* For each component carrying a `cdx:deno:jsrKey` property, fetches the
|
|
32
|
-
* and package endpoints from the JSR API
|
|
33
|
-
*
|
|
31
|
+
* For each component carrying a `cdx:deno:jsrKey` property, fetches the
|
|
32
|
+
* version and package endpoints from the JSR API and fills in license,
|
|
33
|
+
* description, and the GitHub source link. A document is requested only for
|
|
34
|
+
* a component that still misses a field that document supplies: the version
|
|
35
|
+
* document carries the license, the package document the description and the
|
|
36
|
+
* repository link, so whatever the lockfile and the installed-manifest
|
|
37
|
+
* mining filled is never asked for again. Neither document carries
|
|
38
|
+
* provenance, so a provenance fetch, as under --bom-audit, asks for nothing
|
|
39
|
+
* more.
|
|
34
40
|
*
|
|
35
41
|
* @param {Array<object>} pkgList Package components potentially enriched with `cdx:deno:jsrKey`.
|
|
36
42
|
* @returns {Promise<Array<object>>} The enriched package list (same reference as pkgList).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"denoutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/denoutils.js"],"names":[],"mappings":"AA8DA;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAHpB,MAGoB,GAFlB,MAAM,CAuDlB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAH/B,MAG+B,GAF7B,MAAM,GAAC,SAAS,CAuB5B;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAHrB,MAGqB,GAFnB,MAAM,GAAC,SAAS,CAY5B;
|
|
1
|
+
{"version":3,"file":"denoutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/denoutils.js"],"names":[],"mappings":"AA8DA;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAHpB,MAGoB,GAFlB,MAAM,CAuDlB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAH/B,MAG+B,GAF7B,MAAM,GAAC,SAAS,CAuB5B;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAHrB,MAGqB,GAFnB,MAAM,GAAC,SAAS,CAY5B;AA2TD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAHjC,KAAK,CAAC,MAAM,CAGqB,GAF/B,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CA4ElC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,aAAa,CAAC,QAAQ,EALjC,MAKiC,EAAE,OAAO,AAJlD,CACA,EADQ,MAI+C,GAH7C,OAAO,CAAC;IAAC,OAAO,QAAQ;IAAC,gBAAgB,QAAO;CAAC,CAAC,CAge9D"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export declare let metadata_cache: {};
|
|
2
1
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
2
|
+
* No longer used. Registry answers are kept per ecosystem and for one run; this
|
|
3
|
+
* object stays exported for callers that imported it.
|
|
4
|
+
*
|
|
5
|
+
* @deprecated
|
|
6
6
|
*/
|
|
7
|
-
export declare
|
|
7
|
+
export declare const metadata_cache: {};
|
|
8
8
|
/**
|
|
9
9
|
* Fetches license information for a list of Swift packages by querying the
|
|
10
10
|
* GitHub repository license API for packages hosted on github.com.
|
|
@@ -16,9 +16,27 @@ export declare function getSwiftPackageMetadata(pkgList: Object[]): Promise<Obje
|
|
|
16
16
|
/**
|
|
17
17
|
* Method to retrieve metadata for npm packages by querying npmjs
|
|
18
18
|
*
|
|
19
|
+
* Packages a public registry cannot hold are skipped: the project itself,
|
|
20
|
+
* workspace and link members, file and git sources, and scopes served by
|
|
21
|
+
* another registry. See {@link npmLookupRegistry}. A package whose licence,
|
|
22
|
+
* description and repository the project or lockfile already supplied is left
|
|
23
|
+
* alone as well: the registry answers only what is still missing, and never
|
|
24
|
+
* overwrites a licence that is already set. The registry's licence is read
|
|
25
|
+
* with its legacy `licenses` field, and only a package for which neither the
|
|
26
|
+
* package nor the registry names one falls back to its repository's licence.
|
|
27
|
+
*
|
|
19
28
|
* @param {Array} pkgList Package list
|
|
29
|
+
* @param {string} [registryUrl] Registry to query instead of NPM_URL
|
|
30
|
+
* @param {Object} [options] Options
|
|
31
|
+
* @param {Object} [options.npmrcConfig] Merged .npmrc configuration, used to
|
|
32
|
+
* resolve a scope's own registry
|
|
33
|
+
* @param {boolean} [options.secureMode] Whether secure mode is on. Defaults to
|
|
34
|
+
* the process-wide setting.
|
|
20
35
|
*/
|
|
21
|
-
export declare function getNpmMetadata(pkgList: any[], registryUrl
|
|
36
|
+
export declare function getNpmMetadata(pkgList: any[], registryUrl?: string, options?: {
|
|
37
|
+
npmrcConfig?: Object;
|
|
38
|
+
secureMode?: boolean;
|
|
39
|
+
}): Promise<any[]>;
|
|
22
40
|
/**
|
|
23
41
|
* Method to locate local Gradle, Maven, or Coursier cache files for a given maven coordinate.
|
|
24
42
|
*
|
|
@@ -29,15 +47,25 @@ export declare function getNpmMetadata(pkgList: any[], registryUrl: any): Promis
|
|
|
29
47
|
*/
|
|
30
48
|
export declare function findLocalMvnArtifact(group: string, name: string, version: string): Object | null;
|
|
31
49
|
/**
|
|
32
|
-
* Method to retrieve metadata for maven packages
|
|
50
|
+
* Method to retrieve metadata for maven packages, from the local caches first
|
|
51
|
+
* and from Maven Central only for what remains.
|
|
52
|
+
*
|
|
53
|
+
* Every package is first enriched from data on disk. Only when license
|
|
54
|
+
* fetching is enabled (FETCH_LICENSE) or `force` is set are the packages
|
|
55
|
+
* still without a licence looked up remotely, and then only those a public
|
|
56
|
+
* repository can hold.
|
|
33
57
|
*
|
|
34
58
|
* @param {Array} pkgList Package list
|
|
35
59
|
* @param {Object} jarNSMapping Jar Namespace mapping object
|
|
36
60
|
* @param {Boolean} force Force fetching of license
|
|
61
|
+
* @param {{skipPurls?: Set<string>}} [context] Purls or bom-refs of the
|
|
62
|
+
* project's own modules, which are never looked up remotely.
|
|
37
63
|
*
|
|
38
64
|
* @returns {Array} Updated package list
|
|
39
65
|
*/
|
|
40
|
-
export declare function getMvnMetadata(pkgList: any[], jarNSMapping?: Object, force?: boolean
|
|
66
|
+
export declare function getMvnMetadata(pkgList: any[], jarNSMapping?: Object, force?: boolean, context?: {
|
|
67
|
+
skipPurls?: Set<string>;
|
|
68
|
+
}): any[];
|
|
41
69
|
/**
|
|
42
70
|
* Method to compose URL of pom.xml
|
|
43
71
|
*
|
|
@@ -50,7 +78,10 @@ export declare function getMvnMetadata(pkgList: any[], jarNSMapping?: Object, fo
|
|
|
50
78
|
*/
|
|
51
79
|
export declare function composePomXmlUrl({ urlPrefix, group, name, version }: string): string;
|
|
52
80
|
/**
|
|
53
|
-
* Method to fetch pom.xml data and parse it to JSON
|
|
81
|
+
* Method to fetch pom.xml data and parse it to JSON, merged with its parents.
|
|
82
|
+
*
|
|
83
|
+
* Each level is read from the local caches first. When a parent cannot be
|
|
84
|
+
* found, the child and any nearer parents are still returned.
|
|
54
85
|
*
|
|
55
86
|
* @param {String} urlPrefix
|
|
56
87
|
* @param {String} group
|
|
@@ -61,7 +92,7 @@ export declare function composePomXmlUrl({ urlPrefix, group, name, version }: st
|
|
|
61
92
|
*/
|
|
62
93
|
export declare function fetchPomXmlAsJson({ urlPrefix, group, name, version }: string): Object | undefined;
|
|
63
94
|
/**
|
|
64
|
-
* Method to fetch pom.xml data
|
|
95
|
+
* Method to fetch pom.xml data, from the local caches when present.
|
|
65
96
|
*
|
|
66
97
|
* @param {String} urlPrefix
|
|
67
98
|
* @param {String} group
|
|
@@ -231,8 +262,9 @@ export declare function getGoPkgLicense(repoMetadata: Object): Promise<any>;
|
|
|
231
262
|
*
|
|
232
263
|
* @param {String} group Package group
|
|
233
264
|
* @param {String} name Package name
|
|
265
|
+
* @param {String} [version] Package version, part of the page URL
|
|
234
266
|
*/
|
|
235
|
-
export declare function getGoPkgVCSUrl(group: string, name: string): Promise<any>;
|
|
267
|
+
export declare function getGoPkgVCSUrl(group: string, name: string, version?: string): Promise<any>;
|
|
236
268
|
/**
|
|
237
269
|
* Method to retrieve metadata for rust packages by querying crates
|
|
238
270
|
*
|
|
@@ -243,7 +275,13 @@ export declare function getGoPkgVCSUrl(group: string, name: string): Promise<any
|
|
|
243
275
|
*
|
|
244
276
|
* What it does not hold is publisher identity, so a caller that needs the
|
|
245
277
|
* publisher-drift and release-cadence signals — the predictive audit does —
|
|
246
|
-
* passes `preferLocalCache: false` and takes the slower registry path.
|
|
278
|
+
* passes `preferLocalCache: false` and takes the slower registry path. That is
|
|
279
|
+
* also the only caller that needs the crate's owners, so the `/owners` request
|
|
280
|
+
* is made for it alone.
|
|
281
|
+
*
|
|
282
|
+
* Crates a public registry cannot hold are skipped: the project itself, path
|
|
283
|
+
* and git crates, and crates from an alternate registry. See
|
|
284
|
+
* {@link canCratesIoServe}.
|
|
247
285
|
*
|
|
248
286
|
* @param {Array} pkgList Package list
|
|
249
287
|
* @param {Object} [options] Options
|
|
@@ -256,9 +294,20 @@ export declare function getCratesMetadata(pkgList: any[], options?: {
|
|
|
256
294
|
/**
|
|
257
295
|
* Method to retrieve metadata for dart packages by querying pub.dev
|
|
258
296
|
*
|
|
297
|
+
* A hosted package whose lockfile names another registry is looked up there;
|
|
298
|
+
* the score endpoint that carries the licence tag is pub.dev's, so a private
|
|
299
|
+
* registry is asked only for the package document. In secure mode cdxgen does
|
|
300
|
+
* not contact a registry the scanned project names, so such a package is not
|
|
301
|
+
* looked up at all.
|
|
302
|
+
*
|
|
259
303
|
* @param {Array} pkgList Package list
|
|
304
|
+
* @param {Object} [options] Options
|
|
305
|
+
* @param {boolean} [options.secureMode] Whether secure mode is on. Defaults to
|
|
306
|
+
* the process-wide setting.
|
|
260
307
|
*/
|
|
261
|
-
export declare function getDartMetadata(pkgList: any[]
|
|
308
|
+
export declare function getDartMetadata(pkgList: any[], options?: {
|
|
309
|
+
secureMode?: boolean;
|
|
310
|
+
}): Promise<any[]>;
|
|
262
311
|
/**
|
|
263
312
|
* Normalize a Cargo checksum/integrity string into canonical hex-prefixed form.
|
|
264
313
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ecosystems.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/ecosystems.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ecosystems.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/ecosystems.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"golem.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/golem.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"golem.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/golem.js"],"names":[],"mappings":"AAgkDA;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAH/B,MAG+B,GAF7B,OAAO,CAInB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAJ/B,MAI+B,GAH7B,MAAM,GAAC,SAAS,CAY5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EALzB,MAKyB,EAAE,UAAU,EAJrC,MAIqC,EAAE,OAAO,AAHtD,CACA,EADQ,MAGmD,GAFjD,OAAO,CA4DnB;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAJ5B,MAI4B,EAAE,OAAO,AAH7C,CACA,EADQ,MAG0C,GAFxC,MAAM,GAAC,SAAS,CA2B5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,AAL7C,CACA,EADQ,MAK0C,EAAE,UAAU,AAJ9D,CACA,EADQ,KAAK,CAAC,MAAM,CAI+C,GAHzD;IAAC,sBAAsB,2BAAgC;IAAC,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAAC,mBAAmB,0BAA0B;IAAC,cAAc,wBAAwB;IAAC,kBAAkB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAAC,eAAe,wBAAuB;CAAC,CAsFpQ"}
|
|
@@ -25,6 +25,18 @@ export declare function buildGradleCommandArguments(gradleArguments: string[], g
|
|
|
25
25
|
/**
|
|
26
26
|
* Method to split the output produced by Gradle using parallel processing by project
|
|
27
27
|
*
|
|
28
|
+
* Gradle groups console output by task and prints a `> Task :path` header
|
|
29
|
+
* before each group, repeating it whenever a task's output resumes after
|
|
30
|
+
* another task's. Each group is therefore keyed by the project in its own
|
|
31
|
+
* header (`> Task :app:dependencies` belongs to `:app`), never by whatever
|
|
32
|
+
* report header happened to precede it, and the groups of one project are
|
|
33
|
+
* concatenated in order, so reordering or interrupting the task reports cannot
|
|
34
|
+
* move a report to another project or overwrite one (issue 4465). The groups
|
|
35
|
+
* of a root task (`:dependencies`) all take the root project's name from the
|
|
36
|
+
* `Root project '…'` header that only a root task prints, so a continuation
|
|
37
|
+
* group, which carries no report header, stays with the rest of the root
|
|
38
|
+
* report. The groups of other tasks are dropped along with their headers.
|
|
39
|
+
*
|
|
28
40
|
* @param {string} rawOutput Full output produced by Gradle using parallel processing
|
|
29
41
|
* @param {string[]} relevantTasks The list of gradle tasks whose output need to be considered.
|
|
30
42
|
* @returns {map} Map with subProject names as keys and corresponding dependency task outputs as values.
|
|
@@ -173,6 +185,44 @@ _includeCacheDir?: boolean): Promise<Object>;
|
|
|
173
185
|
* @param {Object} [options] CLI options (`installDeps` gates wrapper use)
|
|
174
186
|
*/
|
|
175
187
|
export declare function getMillCommand(srcPath: string, options?: Object): string;
|
|
188
|
+
/**
|
|
189
|
+
* Determine the Mill version of a build.
|
|
190
|
+
*
|
|
191
|
+
* The version is read from the `.mill-version` file, from the
|
|
192
|
+
* `//| mill-version:` header of the build file, or from the launcher itself.
|
|
193
|
+
*
|
|
194
|
+
* @param {string} millRootPath Root of the Mill build
|
|
195
|
+
* @param {string} millCmd Mill command to use for the fallback probe
|
|
196
|
+
* @returns {string|null} The Mill version, or null when it cannot be determined
|
|
197
|
+
*/
|
|
198
|
+
export declare function getMillVersion(millRootPath: string, millCmd: string): string | null;
|
|
199
|
+
/**
|
|
200
|
+
* Find the Mill daemons running under a tree.
|
|
201
|
+
*
|
|
202
|
+
* Daemons record their process id in `out/mill-daemon*` (Mill 1.x) or
|
|
203
|
+
* `out/mill-server*` directories, directly or one level below (Mill 0.12
|
|
204
|
+
* keeps one subdirectory per server). Only processes that are still alive
|
|
205
|
+
* are returned.
|
|
206
|
+
*
|
|
207
|
+
* @param {string} rootPath Tree to search
|
|
208
|
+
* @returns {Map<string, Set<number>>} Live daemon process ids by the root of
|
|
209
|
+
* the build they belong to
|
|
210
|
+
*/
|
|
211
|
+
export declare function findMillDaemons(rootPath: string): Map<string, Set<number>>;
|
|
212
|
+
/**
|
|
213
|
+
* Stop the Mill daemons that started under the scanned tree during the scan.
|
|
214
|
+
*
|
|
215
|
+
* cdxgen's own Mill calls run with --no-server, but a project build cdxgen
|
|
216
|
+
* runs can shell out to Mill without it and leave a daemon behind. Daemons
|
|
217
|
+
* that were already running when the scan started belong to the user, for
|
|
218
|
+
* example to an IDE, and are left alone; every other live daemon is shut
|
|
219
|
+
* down through the launcher of the build it belongs to.
|
|
220
|
+
*
|
|
221
|
+
* @param {string} rootPath Scanned tree
|
|
222
|
+
* @param {Map<string, Set<number>>} [runningBefore] Result of
|
|
223
|
+
* {@link findMillDaemons} taken before the scan
|
|
224
|
+
*/
|
|
225
|
+
export declare function stopMillDaemons(rootPath: string, runningBefore?: Map<string, Set<number>>): void;
|
|
176
226
|
/**
|
|
177
227
|
* Method to return the maven command to use.
|
|
178
228
|
*
|