@cdxgen/cdxgen 13.2.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 +33 -14
- package/bin/cdxgen.js +310 -138
- package/bin/evinse.js +22 -0
- package/bin/repl.js +86 -0
- package/bin/sign.js +119 -15
- package/bin/tracebom.js +69 -5
- package/bin/validate.js +107 -19
- package/bin/verify.js +172 -63
- package/data/helpers/init.gradle +46 -21
- package/data/remediations.json +85 -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/bomAssembly.js +105 -15
- package/lib/cli/cliOptions.js +93 -1
- package/lib/cli/index.js +156 -58
- package/lib/cli/jsBom.js +99 -53
- package/lib/cli/jvmBom.js +708 -147
- package/lib/cli/managedBom.js +415 -224
- package/lib/cli/nativeBom.js +264 -44
- package/lib/core/activity.js +12 -0
- package/lib/core/env.js +22 -15
- package/lib/core/fs.js +176 -7
- package/lib/core/httpClient.js +159 -24
- package/lib/core/metadataProperties.js +97 -0
- package/lib/core/pluginRun.js +184 -0
- package/lib/core/processTree.js +100 -0
- package/lib/core/projectConfig.js +31 -4
- 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 +274 -108
- package/lib/ecosystems/cargoCache.js +231 -8
- package/lib/ecosystems/caxa.js +434 -2
- package/lib/ecosystems/cmakeResolver.js +76 -21
- package/lib/ecosystems/cppBuildContext.js +631 -0
- package/lib/ecosystems/cppEvidence.js +399 -51
- package/lib/ecosystems/cppIncludeResolver.js +294 -0
- package/lib/ecosystems/denoutils.js +93 -66
- package/lib/ecosystems/ecosystems.js +1983 -793
- package/lib/ecosystems/golem.js +28 -12
- package/lib/ecosystems/gradleutils.js +356 -37
- package/lib/ecosystems/jsEvidence.js +104 -44
- package/lib/ecosystems/kosi.js +31 -7
- package/lib/ecosystems/npmutils.js +174 -9
- package/lib/ecosystems/parsers-dotnet.js +616 -159
- package/lib/ecosystems/parsers-elm.js +46 -28
- package/lib/ecosystems/parsers-gleam.js +3 -4
- package/lib/ecosystems/parsers-go.js +371 -70
- package/lib/ecosystems/parsers-js.js +263 -76
- package/lib/ecosystems/parsers-julia.js +2 -3
- package/lib/ecosystems/parsers-jvm.js +204 -12
- package/lib/ecosystems/parsers-misc.js +929 -216
- package/lib/ecosystems/parsers-python.js +167 -24
- package/lib/ecosystems/parsers-rust.js +28 -22
- 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 +1492 -182
- package/lib/ecosystems/rusi.js +54 -10
- 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 +1008 -191
- package/lib/evinser/swiftsem.js +1914 -302
- package/lib/helpers/agenticToolutils.js +2 -2
- package/lib/helpers/bomSigner.js +1101 -222
- package/lib/inventory/aiCollector.js +4 -1
- package/lib/inventory/analyzer.js +110 -127
- package/lib/inventory/atomUtils.js +703 -43
- package/lib/inventory/auditCategories.js +7 -0
- package/lib/inventory/buildToolRateLimit.js +144 -0
- package/lib/inventory/cacheCommands.js +2 -1
- package/lib/inventory/cdxrs.js +103 -12
- package/lib/inventory/cmakeBuildDirs.js +254 -0
- package/lib/inventory/deps.js +501 -124
- package/lib/inventory/depsUtils.js +183 -11
- package/lib/inventory/display.js +4 -5
- package/lib/inventory/dosai.js +798 -57
- package/lib/inventory/dosaiParsers.js +310 -15
- package/lib/inventory/dynamic.js +90 -6
- package/lib/inventory/evidenceUtils.js +166 -113
- package/lib/inventory/fetchBatch.js +690 -55
- 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/protobom.js +8 -1
- package/lib/inventory/purl.js +152 -3
- package/lib/inventory/rustFormulationParser.js +3 -4
- package/lib/inventory/sbomDocument.js +2 -70
- package/lib/inventory/scalaCoords.js +153 -0
- package/lib/inventory/source.js +45 -27
- package/lib/inventory/spdx.js +101 -0
- package/lib/inventory/traceRunner.js +295 -25
- package/lib/inventory/tracedCrypto.js +294 -0
- package/lib/managers/binary.js +115 -24
- package/lib/managers/docker.js +467 -46
- package/lib/managers/oci.js +63 -3
- package/lib/parsers/cmakeCache.js +69 -0
- package/lib/parsers/cmakeLists.js +466 -0
- package/lib/parsers/cmakePresets.js +400 -0
- package/lib/parsers/compileCommands.js +557 -0
- package/lib/parsers/largeJson.js +454 -0
- package/lib/parsers/npmrc.js +19 -1
- 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 +83 -16
- package/lib/stages/postgen/specVersionCompat.js +32 -0
- package/lib/validator/bomValidator.js +6 -16
- package/lib/validator/index.js +64 -11
- package/lib/validator/reporters/console.js +3 -0
- package/lib/validator/reporters/json.js +2 -0
- package/lib/validator/reporters/sarif.js +7 -0
- package/package.json +23 -23
- package/types/lib/audit/index.d.ts.map +1 -1
- package/types/lib/cli/bomAssembly.d.ts +2 -1
- package/types/lib/cli/bomAssembly.d.ts.map +1 -1
- package/types/lib/cli/cliOptions.d.ts +33 -1
- package/types/lib/cli/cliOptions.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 +55 -0
- 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/metadataProperties.d.ts +39 -0
- package/types/lib/core/metadataProperties.d.ts.map +1 -0
- 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/projectConfig.d.ts +6 -2
- package/types/lib/core/projectConfig.d.ts.map +1 -1
- 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 +12 -5
- 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/caxa.d.ts +14 -0
- package/types/lib/ecosystems/caxa.d.ts.map +1 -1
- package/types/lib/ecosystems/cmakeResolver.d.ts +28 -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 +17 -1
- 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 +70 -4
- package/types/lib/ecosystems/gradleutils.d.ts.map +1 -1
- package/types/lib/ecosystems/jsEvidence.d.ts +5 -2
- package/types/lib/ecosystems/jsEvidence.d.ts.map +1 -1
- package/types/lib/ecosystems/kosi.d.ts +13 -0
- package/types/lib/ecosystems/kosi.d.ts.map +1 -1
- package/types/lib/ecosystems/npmutils.d.ts +57 -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 +54 -2
- package/types/lib/ecosystems/parsers-go.d.ts.map +1 -1
- package/types/lib/ecosystems/parsers-js.d.ts +16 -5
- 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 +70 -4
- 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-rust.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 +164 -3
- package/types/lib/ecosystems/rubyutils.d.ts.map +1 -1
- package/types/lib/ecosystems/rusi.d.ts +13 -0
- 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 +132 -15
- package/types/lib/evinser/evinser.d.ts.map +1 -1
- package/types/lib/evinser/swiftsem.d.ts +280 -15
- package/types/lib/evinser/swiftsem.d.ts.map +1 -1
- package/types/lib/helpers/bomSigner.d.ts +182 -13
- 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 +219 -5
- 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/cdxrs.d.ts +8 -3
- package/types/lib/inventory/cdxrs.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/depsUtils.d.ts +15 -0
- package/types/lib/inventory/depsUtils.d.ts.map +1 -1
- package/types/lib/inventory/display.d.ts.map +1 -1
- package/types/lib/inventory/dosai.d.ts +121 -9
- 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/plugins.d.ts.map +1 -1
- package/types/lib/inventory/protobom.d.ts.map +1 -1
- package/types/lib/inventory/purl.d.ts +71 -2
- package/types/lib/inventory/purl.d.ts.map +1 -1
- package/types/lib/inventory/rustFormulationParser.d.ts.map +1 -1
- package/types/lib/inventory/sbomDocument.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 +59 -1
- 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/binary.d.ts +30 -1
- package/types/lib/managers/binary.d.ts.map +1 -1
- package/types/lib/managers/docker.d.ts +29 -0
- package/types/lib/managers/docker.d.ts.map +1 -1
- package/types/lib/managers/oci.d.ts +17 -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 +77 -0
- package/types/lib/parsers/cmakeLists.d.ts.map +1 -0
- 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/largeJson.d.ts +52 -0
- package/types/lib/parsers/largeJson.d.ts.map +1 -0
- package/types/lib/parsers/npmrc.d.ts +5 -0
- package/types/lib/parsers/npmrc.d.ts.map +1 -1
- 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/bomValidator.d.ts.map +1 -1
- package/types/lib/validator/index.d.ts +18 -1
- package/types/lib/validator/index.d.ts.map +1 -1
- package/types/lib/validator/reporters/console.d.ts.map +1 -1
- package/types/lib/validator/reporters/json.d.ts.map +1 -1
- package/types/lib/validator/reporters/sarif.d.ts.map +1 -1
- package/lib/third-party/arborist/snapshots/calc-dep-flags.test.cjs +0 -462
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsEvidence.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/jsEvidence.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"jsEvidence.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/jsEvidence.js"],"names":[],"mappings":"AAyLA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EARE,KAAK,CAAC,MAAM,CAQd,EACP,UAAU,EARD,MAQC,EACV,UAAU,EARD,MAQC,EACV,IAAI,EARK,OAQL,GANO,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CA+KlC"}
|
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Builds the workspace component candidate for one kosi module.
|
|
3
|
+
*
|
|
4
|
+
* kosi derives module names from Gradle settings files, so a quoted literal
|
|
5
|
+
* (rootProject.name = 'KotlinGoat') rides into the reported purl. A purl
|
|
6
|
+
* cdx-purl rejects anchors nothing and must not reach the BOM: keep the
|
|
7
|
+
* reported purl when it parses, rebuild one from the cleaned coordinates
|
|
8
|
+
* when it does not, and return undefined when neither works.
|
|
9
|
+
*
|
|
10
|
+
* @param {Object|undefined} workspaceModule One entry of kosi's modules[].
|
|
11
|
+
* @returns {Object|undefined} Component candidate with a valid purl, or undefined.
|
|
12
|
+
*/
|
|
13
|
+
export declare function kosiWorkspaceComponent(workspaceModule: Object | undefined): Object | undefined;
|
|
1
14
|
export declare function isKosiKotlinLanguage(language: any): boolean;
|
|
2
15
|
/**
|
|
3
16
|
* True when kosi is disabled by CDXGEN_KOSI_DISABLE (1/all/true) or --no-kosi.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kosi.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/kosi.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"kosi.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/kosi.js"],"names":[],"mappings":"AAqCA;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAAC,eAAe,EAH3C,MAAM,GAAC,SAGoC,GAFzC,MAAM,GAAC,SAAS,CAwB5B;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,KAAA,WAE5C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,QAQ3B;AA6DD;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAJ3B,MAI2B,EAAE,OAAO,GAHpC,MAGyC,GAFvC,MAAM,GAAC,SAAS,CAkE5B;AA0BD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,KAAA,EAAE,SAAS,KAAA,OA4B/C;AAusBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,KAAK,EAAE,WAAW,KAAK,MAsEpE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,GAJvC,MAI4C,EAAE,WAAW,GAHzD,MAG8D,GAF5D,MAAM,CAoFlB;AAiCD,wBAAgB,mBAAmB,CAAC,UAAU,KAAK,EAAE,UAAU,QAAK;;;;;;;EA2DnE"}
|
|
@@ -19,6 +19,48 @@ export declare function setNpmOptionalProperty(pkg: object): void;
|
|
|
19
19
|
* @returns {void}
|
|
20
20
|
*/
|
|
21
21
|
export declare function setNpmPeerProperty(pkg: object): void;
|
|
22
|
+
/**
|
|
23
|
+
* Marks an npm component as imported only for its TypeScript types.
|
|
24
|
+
*
|
|
25
|
+
* @param {object} pkg Component object to annotate
|
|
26
|
+
* @returns {void}
|
|
27
|
+
*/
|
|
28
|
+
export declare function setNpmTypeOnlyProperty(pkg: object): void;
|
|
29
|
+
/**
|
|
30
|
+
* Clean an npm version the way `npm publish` does before it records a release.
|
|
31
|
+
*
|
|
32
|
+
* Publishing a directory runs the manifest through `npm pkg fix`
|
|
33
|
+
* (`fixVersionField` in `@npmcli/package-json`, which calls `semver.clean` in
|
|
34
|
+
* loose mode) and then through libnpmpublish, which calls `semver.clean` again
|
|
35
|
+
* in strict mode and records the result as the packument version, the
|
|
36
|
+
* dist-tag, the `_id` and the tarball file name. Semver build metadata
|
|
37
|
+
* (`1.0.0+build.5`), a leading `v` or `=`, surrounding whitespace and leading
|
|
38
|
+
* zeros are dropped; a prerelease is kept.
|
|
39
|
+
*
|
|
40
|
+
* The `package.json` inside the published tarball keeps the original string,
|
|
41
|
+
* and so do the lockfiles npm, pnpm, yarn and bun write for a project, a
|
|
42
|
+
* workspace member or a git, file or link dependency. The cleaned form is the
|
|
43
|
+
* version the npm registry knows the package by.
|
|
44
|
+
*
|
|
45
|
+
* @param {string} version Version as a manifest or lockfile records it
|
|
46
|
+
* @returns {string|null} The cleaned version, or null when npm would reject `version` as invalid semver
|
|
47
|
+
*/
|
|
48
|
+
export declare function cleanNpmVersion(version: string): string | null;
|
|
49
|
+
/**
|
|
50
|
+
* Record the version npm would publish when it differs from the recorded one.
|
|
51
|
+
*
|
|
52
|
+
* Sets `cdx:npm:cleanedVersion` on an npm component whose version is valid
|
|
53
|
+
* semver but not in the form {@link cleanNpmVersion} produces, for example
|
|
54
|
+
* `1.0.0+build.5` (published as `1.0.0`). The component's `version` and `purl`
|
|
55
|
+
* keep the recorded string: that is what the manifest and lockfile say. A
|
|
56
|
+
* component whose version is already clean, or not semver at all (a git
|
|
57
|
+
* commit, a `file:` path), is left without the property, and a stale value from
|
|
58
|
+
* an earlier pass is replaced.
|
|
59
|
+
*
|
|
60
|
+
* @param {object} component Component or package object with `version` and `purl`
|
|
61
|
+
* @returns {object} The same component, for chaining
|
|
62
|
+
*/
|
|
63
|
+
export declare function setNpmCleanedVersionProperty(component: object): object;
|
|
22
64
|
/**
|
|
23
65
|
* Helper function to create a properly encoded workspace PURL
|
|
24
66
|
*
|
|
@@ -55,6 +97,21 @@ export declare function collectNpmManifestSources(node: object): {
|
|
|
55
97
|
type: string;
|
|
56
98
|
value: string;
|
|
57
99
|
}[];
|
|
100
|
+
/**
|
|
101
|
+
* Resolve the license of an npm-style manifest, honouring the legacy plural
|
|
102
|
+
* `licenses` field that packages published before the SPDX convention still
|
|
103
|
+
* carry (issue 4466). A modern `license` value is returned unchanged. The
|
|
104
|
+
* legacy field may hold one entry or an array of them, each a string or a
|
|
105
|
+
* `{ type, url }` object; one entry is returned as it is. npm documents an
|
|
106
|
+
* array of several entries as a choice between them, so when every entry is an
|
|
107
|
+
* SPDX identifier the array becomes the equivalent `MIT OR Apache-2.0`
|
|
108
|
+
* expression, and otherwise stays a list for `getLicenses` to convert entry by
|
|
109
|
+
* entry.
|
|
110
|
+
*
|
|
111
|
+
* @param {object} pkgData Parsed package.json (or bower.json) manifest
|
|
112
|
+
* @returns {string|object|Array|undefined} The effective license value
|
|
113
|
+
*/
|
|
114
|
+
export declare function resolveNpmLicense(pkgData: object): string | object | any[] | undefined;
|
|
58
115
|
/**
|
|
59
116
|
* Hydrates sparse npm package metadata from the installed package.json in deep mode.
|
|
60
117
|
* Existing metadata on the Arborist node wins over on-disk values.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npmutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/npmutils.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"npmutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/npmutils.js"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,88 @@
|
|
|
17
17
|
* @returns {Object} The same component
|
|
18
18
|
*/
|
|
19
19
|
export declare function applyNugetVersion(pkg: Object, version?: string): Object;
|
|
20
|
+
/**
|
|
21
|
+
* Compare two NuGet versions: up to four numeric release parts (missing parts
|
|
22
|
+
* read as 0), then the prerelease label, with a release sorting after its own
|
|
23
|
+
* prereleases. Build metadata after `+` is ignored, as NuGet ignores it.
|
|
24
|
+
*
|
|
25
|
+
* @param {string} a Version
|
|
26
|
+
* @param {string} b Version
|
|
27
|
+
* @returns {number} Negative, zero or positive, like a sort comparator
|
|
28
|
+
*/
|
|
29
|
+
export declare function compareNugetVersions(a: string, b: string): number;
|
|
30
|
+
/**
|
|
31
|
+
* Whether a NuGet version range allows a version. A bare version is a minimum
|
|
32
|
+
* (`1.0` means at least 1.0); brackets are inclusive and parentheses exclusive
|
|
33
|
+
* (`[1.0]`, `[1.0,2.0)`, `(,2.0]`). An empty or unparseable range allows
|
|
34
|
+
* anything.
|
|
35
|
+
*
|
|
36
|
+
* @param {string} range Range as a nuspec or lock file states it
|
|
37
|
+
* @param {string} version Version to test
|
|
38
|
+
* @returns {boolean} True when the range allows the version
|
|
39
|
+
*/
|
|
40
|
+
export declare function nugetRangeAllows(range: string, version: string): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Choose the installed version a declared dependency resolves to: the lowest
|
|
43
|
+
* installed version the range allows, as NuGet picks the lowest applicable
|
|
44
|
+
* version; else the only installed version, which is what binding redirects
|
|
45
|
+
* unify a dependency onto. Undefined when nothing installed can be named.
|
|
46
|
+
*
|
|
47
|
+
* @param {string} range Declared range
|
|
48
|
+
* @param {string[]} installedVersions Versions installed for the package
|
|
49
|
+
* @returns {string|undefined} The chosen version
|
|
50
|
+
*/
|
|
51
|
+
export declare function resolveInstalledNugetVersion(range: string, installedVersions?: string[]): string | undefined;
|
|
52
|
+
/**
|
|
53
|
+
* The project directory a .NET manifest belongs to. Restore output records its
|
|
54
|
+
* project file; otherwise project.assets.json sits in the project's `obj/`,
|
|
55
|
+
* and lock files, packages.config and project files sit in the project
|
|
56
|
+
* directory itself.
|
|
57
|
+
*
|
|
58
|
+
* @param {string} manifestFile Manifest path
|
|
59
|
+
* @param {string} [projectPath] Project file the manifest names, when it does
|
|
60
|
+
* @returns {string} Project directory
|
|
61
|
+
*/
|
|
62
|
+
export declare function dotnetManifestProjectDir(manifestFile: string, projectPath?: string): string;
|
|
63
|
+
/**
|
|
64
|
+
* Index the MSBuild properties that props files define, by the directory each
|
|
65
|
+
* file sits in and across the whole scan, so the candidates for every project
|
|
66
|
+
* come from one read of each file.
|
|
67
|
+
*
|
|
68
|
+
* @param {string[]} propsFiles Props files of the scan
|
|
69
|
+
* @returns {{byDir: Object, treeWide: Object}} Property values per directory and
|
|
70
|
+
* across the scan, each a map of property name to values
|
|
71
|
+
*/
|
|
72
|
+
export declare function indexPropsProperties(propsFiles?: string[]): {
|
|
73
|
+
byDir: Object;
|
|
74
|
+
treeWide: Object;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* The candidate values of MSBuild properties that can apply to a project file,
|
|
78
|
+
* from the props files beside it and above it: the nearest directory that
|
|
79
|
+
* defines a property wins, as the nearest Directory.Build.props is the one
|
|
80
|
+
* MSBuild imports. A property no such directory defines falls back to the
|
|
81
|
+
* values the whole scan's props files give it, which a caller only trusts when
|
|
82
|
+
* there is exactly one.
|
|
83
|
+
*
|
|
84
|
+
* @param {string} projFile Project file
|
|
85
|
+
* @param {{byDir: Object, treeWide: Object}} propsIndex Index built by {@link indexPropsProperties}
|
|
86
|
+
* @returns {Object} Map of property name to candidate values
|
|
87
|
+
*/
|
|
88
|
+
export declare function projectPropertyCandidates(projFile: string, propsIndex?: {
|
|
89
|
+
byDir: Object;
|
|
90
|
+
treeWide: Object;
|
|
91
|
+
}): Object;
|
|
92
|
+
/**
|
|
93
|
+
* The version of each package that every manifest of a scan agrees on, keyed by
|
|
94
|
+
* lowercased package id. A package that two manifests give different versions
|
|
95
|
+
* is left out: without knowing which project a declaration belongs to, picking
|
|
96
|
+
* one of them would be a guess.
|
|
97
|
+
*
|
|
98
|
+
* @param {Object[]} pkgList Components collected from the scan's manifests
|
|
99
|
+
* @returns {Object} Map of lowercased package id to version
|
|
100
|
+
*/
|
|
101
|
+
export declare function agreedNugetVersions(pkgList?: Object[]): Object;
|
|
20
102
|
/**
|
|
21
103
|
* Method to parse .nupkg files
|
|
22
104
|
*
|
|
@@ -78,20 +160,50 @@ export declare function getCentralPackageVersions(projFile: string, cache?: Obje
|
|
|
78
160
|
* @returns {Object} Containing text nodes from PropertyGroup elements and their values
|
|
79
161
|
*/
|
|
80
162
|
export declare function getPropertyGroupTextNodes(propsFiles: string): Object;
|
|
163
|
+
/**
|
|
164
|
+
* Look up a package version in a name - version map. NuGet package ids are
|
|
165
|
+
* case-insensitive, so a map may be keyed by the id as written or lowercased.
|
|
166
|
+
*
|
|
167
|
+
* @param {Object} versions Map of package id to version
|
|
168
|
+
* @param {string} name Package id
|
|
169
|
+
* @returns {string|undefined} The version, or undefined when the map has none
|
|
170
|
+
*/
|
|
171
|
+
export declare function lookupNugetVersion(versions: Object, name: string): string | undefined;
|
|
81
172
|
/**
|
|
82
173
|
* Method to parse .csproj like xml files
|
|
83
174
|
*
|
|
175
|
+
* A version the project file does not state is taken, in order, from the
|
|
176
|
+
* versions this project restored, from central package management, and last
|
|
177
|
+
* from a version the whole scan agrees on. Two projects of one tree routinely
|
|
178
|
+
* restore different versions of a package, so a version taken from another
|
|
179
|
+
* project would describe a package this project does not use.
|
|
180
|
+
*
|
|
84
181
|
* @param {String} csProjData Raw data
|
|
85
182
|
* @param {String} projFile File name
|
|
86
|
-
* @param {Object} pkgNameVersions
|
|
183
|
+
* @param {Object} pkgNameVersions Versions this project restored (its project.assets.json,
|
|
184
|
+
* packages.lock.json or packages.config), keyed by package id or lowercased id
|
|
87
185
|
* @param {Boolean} msbuildInstalled Whether msbuild is available to resolve properties
|
|
88
|
-
* @param {Object} pkgVersionLabelCandidates Candidate values for msbuild version properties
|
|
186
|
+
* @param {Object} pkgVersionLabelCandidates Candidate values for msbuild version properties,
|
|
187
|
+
* from the props files that can apply to this project
|
|
89
188
|
* @param {Object} centralVersions Versions declared centrally in Directory.Packages.props,
|
|
90
189
|
* keyed by lowercased package id. See {@link getCentralPackageVersions}.
|
|
190
|
+
* @param {Object} fallbackVersions Versions every project of the scan agrees on, keyed by
|
|
191
|
+
* lowercased package id, used only when nothing closer states one
|
|
192
|
+
* @param {Object} restoredNames Package ids as this project's restore output spells them,
|
|
193
|
+
* keyed by lowercased id. NuGet ids are case-insensitive, so a reference spelled
|
|
194
|
+
* differently names the same package and takes the restored spelling.
|
|
91
195
|
*
|
|
92
196
|
* @returns {Object} Containing parent component, package, and dependencies
|
|
93
197
|
*/
|
|
94
|
-
export declare function parseCsProjData(csProjData: string, projFile: string, pkgNameVersions?: Object, msbuildInstalled?: boolean, pkgVersionLabelCandidates?: Object, centralVersions?: Object): Object;
|
|
198
|
+
export declare function parseCsProjData(csProjData: string, projFile: string, pkgNameVersions?: Object, msbuildInstalled?: boolean, pkgVersionLabelCandidates?: Object, centralVersions?: Object, fallbackVersions?: Object, restoredNames?: Object): Object;
|
|
199
|
+
/**
|
|
200
|
+
* Whether a file of a NuGet package is an assembly a consuming project can
|
|
201
|
+
* reference: a .dll, .exe, or .so under lib/, ref/, or runtimes/.
|
|
202
|
+
*
|
|
203
|
+
* @param {string} packageFile Path of the file inside the package, as project.assets.json lists it
|
|
204
|
+
* @returns {boolean} true for a referenced assembly
|
|
205
|
+
*/
|
|
206
|
+
export declare function isReferencedDotnetPackageFile(packageFile: string): boolean;
|
|
95
207
|
/**
|
|
96
208
|
* Parse a .NET project.assets.json file and return the package list and dependency tree.
|
|
97
209
|
*
|
|
@@ -101,11 +213,13 @@ export declare function parseCsProjData(csProjData: string, projFile: string, pk
|
|
|
101
213
|
*
|
|
102
214
|
* @param {string} csProjData Raw JSON string of the project.assets.json file
|
|
103
215
|
* @param {string} assetsJsonFile Path to the project.assets.json file, used for evidence properties
|
|
104
|
-
* @returns {{ pkgList: Object[], dependenciesList: Object[] }}
|
|
216
|
+
* @returns {{ pkgList: Object[], dependenciesList: Object[], projectPath: (string|undefined) }}
|
|
217
|
+
* `projectPath` is the project file the restore output belongs to, as restore recorded it
|
|
105
218
|
*/
|
|
106
219
|
export declare function parseCsProjAssetsData(csProjData: string, assetsJsonFile: string): {
|
|
107
220
|
pkgList: Object[];
|
|
108
221
|
dependenciesList: Object[];
|
|
222
|
+
projectPath: (string | undefined);
|
|
109
223
|
};
|
|
110
224
|
/**
|
|
111
225
|
* Parse a .NET packages.lock.json file and return the package list, dependency tree,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-dotnet.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-dotnet.js"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAL1B,MAK0B,EAAE,OAAO,AAJ3C,CAEA,QAE2C,GAFjC,MAAM,CAUlB;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,SAAS,QAAA,GAF7B,MAAM,CAWlB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,SAAS,QAAA,EAAE,UAAU,QAAA,GAFxC,MAAM,
|
|
1
|
+
{"version":3,"file":"parsers-dotnet.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-dotnet.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-elm.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-elm.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parsers-elm.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-elm.js"],"names":[],"mappings":"AA8DA;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EALhC,MAKgC,EAAE,WAAW,AAJrD,CAEA,EAFQ,MAI6C,GAF3C;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAoGxG;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,kBAAkB,EAJ7C,MAI6C,EAAE,aAAa,AAHpE,CACA,EADQ,MAG4D,GAF1D;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAyFxG;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAH9B,MAG8B,GAF5B,OAAO,CAKnB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,cAAc,AAJhD,CAEA,EAFQ,MAIwC,GAFtC;IAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,GAAC,IAAI,CAAC;IAAC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,EAAE,CAAA;CAAE,CA6FtH;AAmRD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAH7B,MAG6B,GAF3B,OAAO,CAKnB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAJjC,MAAM,EAI2B,EAAE,YAAY,AAHvD,CACA,EADQ,MAAM,EAGyC,GAF7C,OAAO,CAAC,MAAM,EAAE,CAAC,CA8E7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-gleam.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-gleam.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parsers-gleam.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-gleam.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAJpC,MAIoC,EAAE,gBAAgB,AAH9D,CACA,EADQ,MAGsD,GAFpD;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,CAiGlF"}
|
|
@@ -1,3 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The licence or copying notice of a module that is already on this machine,
|
|
3
|
+
* from the directory `go list` reported, from the project's `vendor/` tree, or
|
|
4
|
+
* from the module cache. Reading it costs no network round trip, so it answers
|
|
5
|
+
* before pkg.go.dev is asked.
|
|
6
|
+
*
|
|
7
|
+
* The directory `go list` reported is always read. The vendor tree and the
|
|
8
|
+
* module cache stand in for pkg.go.dev, so they are read only when licences
|
|
9
|
+
* are being fetched.
|
|
10
|
+
*
|
|
11
|
+
* @param {string} name Full module path
|
|
12
|
+
* @param {string} [version] Module version, for the module cache layout
|
|
13
|
+
* @param {Object} [options] Options
|
|
14
|
+
* @param {string} [options.dir] The module's directory, as `go list` reports it
|
|
15
|
+
* @param {string} [options.projectRoot] Project root holding a `vendor/` tree
|
|
16
|
+
* @returns {string|undefined} The notice text, or undefined when none is held
|
|
17
|
+
* locally
|
|
18
|
+
*/
|
|
19
|
+
export declare function readLocalGoLicense(name: string, version?: string, options?: {
|
|
20
|
+
dir?: string;
|
|
21
|
+
projectRoot?: string;
|
|
22
|
+
}): string | undefined;
|
|
1
23
|
/**
|
|
2
24
|
* Builds a Go package component object containing purl, bom-ref, integrity hash,
|
|
3
25
|
* and optionally license and VCS external reference information.
|
|
@@ -6,9 +28,21 @@
|
|
|
6
28
|
* @param {string} name Package name (full module path when group is empty)
|
|
7
29
|
* @param {string} version Package version string
|
|
8
30
|
* @param {string} hash Integrity hash (e.g. "sha256-…"), used as _integrity
|
|
31
|
+
* @param {Object} [options] Options
|
|
32
|
+
* @param {boolean} [options.skipRegistryLookups] Leave the licence and VCS
|
|
33
|
+
* URL unset instead of asking pkg.go.dev. Used for the main module, which
|
|
34
|
+
* no registry holds.
|
|
35
|
+
* @param {string} [options.dir] The module's directory, as `go list` reports
|
|
36
|
+
* it, where a local licence notice is read first
|
|
37
|
+
* @param {string} [options.projectRoot] Project root holding a `vendor/` tree
|
|
38
|
+
* the module may be vendored in
|
|
9
39
|
* @returns {Promise<Object>} Component object ready for inclusion in a BOM package list
|
|
10
40
|
*/
|
|
11
|
-
export declare function getGoPkgComponent(group: string, name: string, version: string, hash: string
|
|
41
|
+
export declare function getGoPkgComponent(group: string, name: string, version: string, hash: string, options?: {
|
|
42
|
+
skipRegistryLookups?: boolean;
|
|
43
|
+
dir?: string;
|
|
44
|
+
projectRoot?: string;
|
|
45
|
+
}): Promise<Object>;
|
|
12
46
|
/**
|
|
13
47
|
* Method to parse go.mod files
|
|
14
48
|
*
|
|
@@ -66,12 +100,30 @@ export declare function parseGoModGraph(rawOutput: string, goModFile: string, go
|
|
|
66
100
|
* @returns {string|undefined} package name or none
|
|
67
101
|
*/
|
|
68
102
|
export declare function parseGoModWhy(rawOutput: string): string | undefined;
|
|
103
|
+
/**
|
|
104
|
+
* Reports whether `go mod why -m` output says the main module does not need
|
|
105
|
+
* the module. go prints `(main module does not need module X)`, or
|
|
106
|
+
* `(main module does not need to vendor module X)` with `-vendor`, and exits
|
|
107
|
+
* with status 0 either way.
|
|
108
|
+
*
|
|
109
|
+
* @param {string} rawOutput Output from go mod why
|
|
110
|
+
* @returns {boolean} True when go reports the module as not needed
|
|
111
|
+
*/
|
|
112
|
+
export declare function isGoModWhyNotNeeded(rawOutput: string): boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Read the `module@version` to hash map out of go.sum contents, without
|
|
115
|
+
* building components or touching the network.
|
|
116
|
+
*
|
|
117
|
+
* @param {string} gosumData Content of go.sum
|
|
118
|
+
* @returns {Object} Map of `module@version` keys to `sha256-…` values
|
|
119
|
+
*/
|
|
120
|
+
export declare function parseGosumHashes(gosumData: string): Object;
|
|
69
121
|
/**
|
|
70
122
|
* Parse go sum data
|
|
71
123
|
* @param {string} gosumData Content of go.sum
|
|
72
124
|
* @returns package list
|
|
73
125
|
*/
|
|
74
|
-
export declare function parseGosumData(gosumData: string): Promise<
|
|
126
|
+
export declare function parseGosumData(gosumData: string): Promise<Object[]>;
|
|
75
127
|
/**
|
|
76
128
|
* Parses the contents of a Gopkg.lock or Gopkg.toml file (dep tool format) and
|
|
77
129
|
* returns a list of Go package components. Optionally fetches license information
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-go.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-go.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parsers-go.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-go.js"],"names":[],"mappings":"AAmFA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAR5B,MAQ4B,EAAE,OAAO,AAP7C,CACA,EADQ,MAOqC,EAAE,OAAO,AANtD,CAGA,EAFA;IAAyB,GAAG,AAA5B,CACA,EADQ,MAAM,CACd;IAAyB,WAAW,AAApC,CACA,EADQ,MAAM,CACd;CAG2D,GAHjD,MAAM,GAAC,SAAS,CAqD5B;AAsCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAfI,MAeJ,EACL,IAAI,EAfK,MAeL,EACJ,OAAO,EAfE,MAeF,EACP,IAAI,EAfK,MAeL,EACJ,OAAO,AAfN,CAQA,EAPA;IAA0B,mBAAmB,AAA7C,CAGA,EAHQ,OAAO,CAGf;IAAyB,GAAG,AAA5B,CAEA,EAFQ,MAAM,CAEd;IAAyB,WAAW,AAApC,CAEA,EAFQ,MAAM,CAEd;CAOW,GAPD,OAAO,CAAC,MAAM,CAAC,CAqE3B;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,SAAS,QAAA,EAAE,QAAQ,EAJ7C,MAI6C,GAF3C,MAAM,CA2ClB;AAkHD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAJpC,MAIoC,EAAE,QAAQ,EAH9C,MAG8C,GAF5C,OAAO,CAAC,MAAM,EAAE,CAAC,CAyC7B;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAJnC,MAImC,EAAE,QAAQ,EAH7C,MAG6C;;;GAuIvD;AA6CD;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,SAAS,EATA,MASA,EACT,SAAS,EATA,MASA,EACT,QAAQ,EATC,MASD,EACR,QAAQ,QAAK,EACb,eAAe,GATN,MASW;;;;;;;;GAiNrB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAH5B,MAG4B,GAF1B,MAAM,GAAC,SAAS,CAc5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAHlC,MAGkC,GAFhC,OAAO,CASnB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAH/B,MAG+B,GAF7B,MAAM,CAQlB;AA6BD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAHnC,MAGmC,qBAY7C;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAHnC,MAGmC,GAFjC,OAAO,CAAC,MAAM,EAAE,CAAC,CAmD7B;AAoBD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,aAAa,EAH3C,MAG2C,GAFzC,OAAO,CAAC,MAAM,EAAE,CAAC,CAkC7B"}
|
|
@@ -7,10 +7,15 @@ import { Buffer } from "node:buffer";
|
|
|
7
7
|
* identity evidence and skip npm registry metadata fetching.
|
|
8
8
|
* @param {boolean} [securityProps=false] When true, append npm security-relevant
|
|
9
9
|
* properties such as lifecycle scripts, binaries, native addons, and deprecation notices.
|
|
10
|
+
* @param {Object} [options] Options
|
|
11
|
+
* @param {boolean} [options.fetchMetadata=true] When false, skip the npm
|
|
12
|
+
* registry round so that a caller can make one round for many manifests.
|
|
10
13
|
* @returns {Promise<Array<object>>} Parsed component list, enriched with npm
|
|
11
14
|
* registry metadata when available and not in simple mode.
|
|
12
15
|
*/
|
|
13
|
-
export declare function parsePkgJson(pkgJsonFile: string, simple?: boolean, securityProps?: boolean
|
|
16
|
+
export declare function parsePkgJson(pkgJsonFile: string, simple?: boolean, securityProps?: boolean, options?: {
|
|
17
|
+
fetchMetadata?: boolean;
|
|
18
|
+
}): Promise<Array<object>>;
|
|
14
19
|
/**
|
|
15
20
|
* Hash a root `.npm-extension` file exactly as npm does: ssri sha512 over
|
|
16
21
|
* `npm-extension:v1:<format>\n` followed by the raw file bytes. Mirrors
|
|
@@ -62,12 +67,15 @@ export declare function yarnLockToIdentMap(lockData: string): {};
|
|
|
62
67
|
* @param {Object} parentComponent parent component
|
|
63
68
|
* @param {Array[String]} workspacePackages Workspace packages
|
|
64
69
|
* @param {Object} workspaceSrcFiles Workspace package.json files
|
|
65
|
-
* @param {Object}
|
|
70
|
+
* @param {Object} workspaceDirectDeps Declared dependencies (name to range) of each workspace package
|
|
66
71
|
* @param {Object} depsWorkspaceRefs Workspace references for each dependency
|
|
67
72
|
*/
|
|
68
|
-
export declare function parseYarnLock(yarnLockFile: string, parentComponent?: Object, workspacePackages?: any, workspaceSrcFiles?: Object,
|
|
73
|
+
export declare function parseYarnLock(yarnLockFile: string, parentComponent?: Object, workspacePackages?: any, workspaceSrcFiles?: Object, workspaceDirectDeps?: Object, depsWorkspaceRefs?: Object): Promise<{
|
|
69
74
|
pkgList: any[];
|
|
70
|
-
dependenciesList:
|
|
75
|
+
dependenciesList: {
|
|
76
|
+
ref: string;
|
|
77
|
+
dependsOn: any[];
|
|
78
|
+
}[];
|
|
71
79
|
}>;
|
|
72
80
|
/**
|
|
73
81
|
* Parse nodejs shrinkwrap deps file
|
|
@@ -103,7 +111,10 @@ export declare function stripPnpmPeerSuffix(version: string): string;
|
|
|
103
111
|
* {@link stripPnpmPeerSuffix}.
|
|
104
112
|
*
|
|
105
113
|
* @param {string|object} depPkg Dependency version string or package object.
|
|
106
|
-
* @param {string} relativePath Base path for resolving link/file references
|
|
114
|
+
* @param {string} relativePath Base path for resolving link/file references:
|
|
115
|
+
* the directory of the importer that declares the dependency. Without it the
|
|
116
|
+
* path is tried against the working directory, which only works when cdxgen
|
|
117
|
+
* runs from the lock file's directory.
|
|
107
118
|
* @returns {Promise<string|undefined>} The resolved published version.
|
|
108
119
|
*/
|
|
109
120
|
export declare function getVersionNumPnpm(depPkg: string | object, relativePath: string): Promise<string | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-js.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-js.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"parsers-js.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-js.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-julia.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-julia.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parsers-julia.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-julia.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,eAAe,AAJ9C,CACA,EADQ,MAIsC,EAAE,gBAAgB,AAHhE,CACA,EADQ,MAGwD,GAFtD;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CA+FzG;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAHhC,MAGgC,GAF9B,OAAO,CAUnB;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAHjC,MAGiC,GAF/B,OAAO,CASnB"}
|
|
@@ -5,6 +5,44 @@
|
|
|
5
5
|
* @returns {Object} Object containing pom properties, modules, and array of dependencies
|
|
6
6
|
*/
|
|
7
7
|
export declare function parsePom(pomFile: string): Object;
|
|
8
|
+
/**
|
|
9
|
+
* Every pom file of the reactor an aggregator pom builds: its own modules,
|
|
10
|
+
* recursively through nested aggregators. A recursive dependency:tree run
|
|
11
|
+
* from the aggregator resolves all of them, so their own runs repeat it.
|
|
12
|
+
*
|
|
13
|
+
* A module entry names a directory relative to its pom, sometimes a direct
|
|
14
|
+
* path to a pom file. Entries that are absolute, or that climb out of the
|
|
15
|
+
* aggregator's directory, are ignored: the scan never listed them, and the
|
|
16
|
+
* walk must not follow a pom's pointers outside its own tree.
|
|
17
|
+
*
|
|
18
|
+
* @param {string} rootPom Path of the aggregator pom.
|
|
19
|
+
* @returns {Set<string>} Pom files of the reactor, excluding the aggregator.
|
|
20
|
+
*/
|
|
21
|
+
export declare function resolveReactorPomFiles(rootPom: string): Set<string>;
|
|
22
|
+
/**
|
|
23
|
+
* File name stem for the trees of one recursive dependency:tree run. Maven
|
|
24
|
+
* expands the project expressions for each reactor module, so every module
|
|
25
|
+
* writes its own file; a fixed name would hold only the last module's tree.
|
|
26
|
+
*/
|
|
27
|
+
export declare const MAVEN_MODULE_TREE_STEM = "${project.groupId}-${project.artifactId}";
|
|
28
|
+
/**
|
|
29
|
+
* Read the trees one dependency:tree run wrote, one file per reactor module
|
|
30
|
+
* (see MAVEN_MODULE_TREE_STEM), and tell which of the reactor's pom files
|
|
31
|
+
* they cover. The pom the run started from comes first, then its modules in
|
|
32
|
+
* reactor order. A module pom counts as covered only when its own tree is
|
|
33
|
+
* among the files, so a module the run left out still runs on its own.
|
|
34
|
+
*
|
|
35
|
+
* @param {string} treeDir Directory the run wrote its trees into.
|
|
36
|
+
* @param {string} rootPom The pom file the run started from.
|
|
37
|
+
* @returns {{trees: Array<{pomFile: string, text: string}>, covered: Set<string>}}
|
|
38
|
+
*/
|
|
39
|
+
export declare function readMavenModuleTrees(treeDir: string, rootPom: string): {
|
|
40
|
+
trees: Array<{
|
|
41
|
+
pomFile: string;
|
|
42
|
+
text: string;
|
|
43
|
+
}>;
|
|
44
|
+
covered: Set<string>;
|
|
45
|
+
};
|
|
8
46
|
/**
|
|
9
47
|
* Parse maven dependency:tree json output
|
|
10
48
|
*
|
|
@@ -34,14 +72,21 @@ export declare function parseMavenTree(rawOutput: string, pomFile: string): Obje
|
|
|
34
72
|
/**
|
|
35
73
|
* Parse mill dependencies from file
|
|
36
74
|
*
|
|
75
|
+
* Scala artifacts are emitted in the sbt purl form: the Scala binary suffix
|
|
76
|
+
* is stripped from the artifact name and the version it carried is recorded
|
|
77
|
+
* in the cdx:scala:compilerVersion property, so one library keeps a single
|
|
78
|
+
* purl whichever build tool reported it.
|
|
79
|
+
*
|
|
37
80
|
* @param {string} module name of the module
|
|
38
81
|
* @param {map} dependencies the parsed dependencies
|
|
39
82
|
* @param {map} relations a map containing all relations
|
|
40
83
|
* @param {string} millRootPath root of the project
|
|
84
|
+
* @param {string} logFileName name of the tree log the module wrote
|
|
41
85
|
*
|
|
42
86
|
* @returns the bom-ref of the module
|
|
43
87
|
*/
|
|
44
|
-
export declare function parseMillDependency(module: string, dependencies: map, relations: map, millRootPath: string): any;
|
|
88
|
+
export declare function parseMillDependency(module: string, dependencies: map, relations: map, millRootPath: string, logFileName?: string): any;
|
|
89
|
+
export declare function completeComponent(component: any): any;
|
|
45
90
|
/**
|
|
46
91
|
* Parse clojure cli dependencies output
|
|
47
92
|
* @param {string} rawOutput Raw string output
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parsers-jvm.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-jvm.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parsers-jvm.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-jvm.js"],"names":[],"mappings":"AAsBA;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAHrB,MAGqB,GAFnB,MAAM,CA4JlB;AAMD;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAHnC,MAGmC,GAFjC,GAAG,CAAC,MAAM,CAAC,CAsDvB;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,6CAES,CAAC;AAiB7C;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAJjC,MAIiC,EAAE,OAAO,EAH1C,MAG0C,GAFxC;IAAC,KAAK,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAC,CA8CjF;AA2HD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,KAAA,EAAE,OAAO,KAAA,GAFxC;IAAC,eAAe,EAAE,EAAE,CAAC;IAAC,OAAO,EAAE,GAAC,EAAE,CAAC;IAAC,gBAAgB,EAAE,GAAC,EAAE,CAAA;CAAC,GAAC,EAAE,GAAC,EAAE,GAAC,GAAC,GAAC;IAAC,eAAe,EAAE;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,GAAC,CAAA;KAAC,GAAC,EAAE,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;IAAC,gBAAgB,EAAE,EAAE,CAAA;CAAC,CAkExJ;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAL7B,MAK6B,EAAE,OAAO,EAJtC,MAIsC,GAFpC,MAAM,CA8FlB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EATG,MASH,EACN,YAAY,EATH,GASG,EACZ,SAAS,EATA,GASA,EACT,YAAY,EATH,MASG,EACZ,WAAW,GATF,MASsB,OA+HhC;AAED,wBAAgB,iBAAiB,CAAC,SAAS,KAAA,OAe1C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAF1B,MAE0B,SAkCpC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAF3B,MAE2B,YAWrC;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,IAAI,EALtB,MAKsB,EAAE,UAAU,EAJlC,MAIkC,EAAE,IAAI,EAHxC,MAAM,EAGkC,GAFtC,MAAM,EAAE,CA0BpB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAFpC,MAEoC,SAkC9C;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAFjC,MAEiC,SAqD3C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAF9B,MAE8B,SAexC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,KAAA,SAmCnC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAHhC,MAGgC,GAF9B,MAAM,EAAE,CAkCpB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAH5B,MAG4B,GAF1B,MAAM,EAAE,CAoDpB"}
|