@cdxgen/cdxgen 13.0.1 → 13.2.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.
Files changed (286) hide show
  1. package/README.md +30 -16
  2. package/bin/audit.js +6 -0
  3. package/bin/cdxgen.js +141 -7
  4. package/bin/evinse.js +3 -1
  5. package/data/component-tags.json +8 -1
  6. package/data/crypto-oid.json +88 -12
  7. package/data/frameworks-list.json +86 -1
  8. package/data/remediations.json +1167 -0
  9. package/data/rules/ai-bom.yaml +78 -0
  10. package/data/rules/asar-archives.yaml +1 -1
  11. package/data/rules/build-fidelity.yaml +782 -0
  12. package/data/rules/cargo-rust.yaml +132 -0
  13. package/data/rules/mcp-servers.yaml +122 -0
  14. package/data/rules/package-integrity.yaml +13 -13
  15. package/lib/audit/index.js +48 -4
  16. package/lib/audit/scoring.js +2 -8
  17. package/lib/audit/targets.js +6 -1
  18. package/lib/cli/bomAssembly.js +32 -1
  19. package/lib/cli/cliOptions.js +94 -7
  20. package/lib/cli/index.js +268 -49
  21. package/lib/cli/jsBom.js +91 -5
  22. package/lib/cli/jvmBom.js +1515 -1314
  23. package/lib/cli/managedBom.js +249 -28
  24. package/lib/cli/nativeBom.js +986 -10
  25. package/lib/core/activity.js +120 -2
  26. package/lib/core/buildLedger.js +799 -0
  27. package/lib/core/deferredExit.js +141 -0
  28. package/lib/core/env.js +108 -2
  29. package/lib/core/fs.js +60 -0
  30. package/lib/core/logger.js +12 -99
  31. package/lib/core/severity.js +16 -0
  32. package/lib/core/syncFileWriter.js +106 -0
  33. package/lib/core/userAgent.js +151 -0
  34. package/lib/ecosystems/cargoCache.js +364 -0
  35. package/lib/ecosystems/caxa.js +13 -5
  36. package/lib/ecosystems/cppEvidence.js +40 -2
  37. package/lib/ecosystems/ecosystems.js +250 -91
  38. package/lib/ecosystems/golem.js +11 -1
  39. package/lib/ecosystems/gradleutils.js +498 -17
  40. package/lib/ecosystems/kosi.js +1256 -0
  41. package/lib/ecosystems/parsers-crystal.js +179 -0
  42. package/lib/ecosystems/parsers-dotnet.js +69 -39
  43. package/lib/ecosystems/parsers-elm.js +816 -0
  44. package/lib/ecosystems/parsers-gleam.js +1 -1
  45. package/lib/ecosystems/parsers-js.js +26 -0
  46. package/lib/ecosystems/parsers-julia.js +268 -0
  47. package/lib/ecosystems/parsers-jvm.js +9 -0
  48. package/lib/ecosystems/parsers-lua.js +218 -0
  49. package/lib/ecosystems/parsers-misc.js +188 -2
  50. package/lib/ecosystems/parsers-nim.js +221 -0
  51. package/lib/ecosystems/parsers-opam.js +180 -0
  52. package/lib/ecosystems/parsers-perl.js +277 -0
  53. package/lib/ecosystems/parsers-python.js +172 -36
  54. package/lib/ecosystems/parsers-r.js +148 -0
  55. package/lib/ecosystems/parsers-rebar.js +411 -0
  56. package/lib/ecosystems/parsers-rust.js +944 -19
  57. package/lib/ecosystems/parsers-spack.js +204 -0
  58. package/lib/ecosystems/parsers-stack.js +264 -0
  59. package/lib/ecosystems/parsers-terraform.js +194 -0
  60. package/lib/ecosystems/pypiClassifiers.js +326 -0
  61. package/lib/ecosystems/pythonutils.js +49 -1
  62. package/lib/ecosystems/rubyutils.js +13 -0
  63. package/lib/ecosystems/rusi.js +126 -6
  64. package/lib/evinser/evinser.js +141 -13
  65. package/lib/helpers/agenticToolutils.js +925 -0
  66. package/lib/helpers/remote/dependency-track.js +81 -14
  67. package/lib/inventory/agentFormulationParser.js +57 -4
  68. package/lib/inventory/aiCollector.js +504 -10
  69. package/lib/inventory/aiInventory.js +12 -0
  70. package/lib/inventory/analyzer.js +488 -30
  71. package/lib/inventory/astWorker.js +6 -0
  72. package/lib/inventory/auditCategories.js +17 -0
  73. package/lib/inventory/cbomutils.js +30 -0
  74. package/lib/inventory/cdxrs.js +7 -2
  75. package/lib/inventory/communityAiConfigParser.js +215 -2
  76. package/lib/inventory/depsUtils.js +72 -0
  77. package/lib/inventory/dosai.js +508 -22
  78. package/lib/inventory/envcontext.js +215 -24
  79. package/lib/inventory/evidenceUtils.js +13 -0
  80. package/lib/inventory/fetchBatch.js +131 -2
  81. package/lib/inventory/fetchRate.js +74 -11
  82. package/lib/inventory/forgeEnricher.js +3 -2
  83. package/lib/inventory/jvmToolEnv.js +594 -0
  84. package/lib/inventory/mcpConfigParser.js +166 -2
  85. package/lib/inventory/mcpDiscovery.js +11 -0
  86. package/lib/inventory/mcpServerManifest.js +389 -0
  87. package/lib/inventory/mcpbBundle.js +419 -0
  88. package/lib/inventory/osinfo.js +1 -0
  89. package/lib/inventory/plugins.js +3 -0
  90. package/lib/inventory/protobom.js +54 -88
  91. package/lib/inventory/protobomLoader.js +4 -0
  92. package/lib/inventory/rustFormulationParser.js +1 -1
  93. package/lib/inventory/source.js +10 -4
  94. package/lib/inventory/stylePackageRefs.js +41 -0
  95. package/lib/inventory/svelteUtils.js +524 -0
  96. package/lib/inventory/toolRequirements.js +903 -0
  97. package/lib/managers/binary.js +24 -0
  98. package/lib/managers/docker.js +26 -5
  99. package/lib/parsers/huggingfaceUtils.js +15 -7
  100. package/lib/parsers/onnx.js +294 -0
  101. package/lib/parsers/safetensors.js +114 -0
  102. package/lib/server/server.js +1 -1
  103. package/lib/stages/postgen/annotationBuilder.js +97 -0
  104. package/lib/stages/postgen/auditBom.js +76 -79
  105. package/lib/stages/postgen/introspection/annotate.js +320 -0
  106. package/lib/stages/postgen/introspection/commandFacts.js +293 -0
  107. package/lib/stages/postgen/introspection/emit.js +192 -0
  108. package/lib/stages/postgen/introspection/formulationEvidence.js +427 -0
  109. package/lib/stages/postgen/introspection/markers.js +250 -0
  110. package/lib/stages/postgen/introspection/reflect.js +1214 -0
  111. package/lib/stages/postgen/introspection/report.js +1208 -0
  112. package/lib/stages/postgen/introspection/score.js +1067 -0
  113. package/lib/stages/postgen/introspection/shapeCommand.js +304 -0
  114. package/lib/stages/postgen/parentEdge.js +156 -0
  115. package/lib/stages/postgen/postgen.js +284 -3
  116. package/lib/stages/postgen/ruleEngine.js +17 -0
  117. package/lib/stages/pregen/envAudit.js +42 -2
  118. package/lib/stages/pregen/pregen.js +1171 -6
  119. package/lib/third-party/arborist/snapshots/calc-dep-flags.test.cjs +462 -0
  120. package/lib/validator/bomValidator.js +11 -2
  121. package/package.json +26 -26
  122. package/types/lib/audit/index.d.ts.map +1 -1
  123. package/types/lib/audit/scoring.d.ts +2 -8
  124. package/types/lib/audit/scoring.d.ts.map +1 -1
  125. package/types/lib/audit/targets.d.ts.map +1 -1
  126. package/types/lib/cli/bomAssembly.d.ts.map +1 -1
  127. package/types/lib/cli/cliOptions.d.ts +2 -1
  128. package/types/lib/cli/cliOptions.d.ts.map +1 -1
  129. package/types/lib/cli/index.d.ts +10 -2
  130. package/types/lib/cli/index.d.ts.map +1 -1
  131. package/types/lib/cli/jsBom.d.ts +23 -0
  132. package/types/lib/cli/jsBom.d.ts.map +1 -1
  133. package/types/lib/cli/jvmBom.d.ts.map +1 -1
  134. package/types/lib/cli/managedBom.d.ts +33 -0
  135. package/types/lib/cli/managedBom.d.ts.map +1 -1
  136. package/types/lib/cli/nativeBom.d.ts +88 -8
  137. package/types/lib/cli/nativeBom.d.ts.map +1 -1
  138. package/types/lib/core/activity.d.ts.map +1 -1
  139. package/types/lib/core/buildLedger.d.ts +272 -0
  140. package/types/lib/core/buildLedger.d.ts.map +1 -0
  141. package/types/lib/core/deferredExit.d.ts +84 -0
  142. package/types/lib/core/deferredExit.d.ts.map +1 -0
  143. package/types/lib/core/env.d.ts +43 -1
  144. package/types/lib/core/env.d.ts.map +1 -1
  145. package/types/lib/core/fs.d.ts +21 -0
  146. package/types/lib/core/fs.d.ts.map +1 -1
  147. package/types/lib/core/logger.d.ts +2 -11
  148. package/types/lib/core/logger.d.ts.map +1 -1
  149. package/types/lib/core/severity.d.ts +11 -0
  150. package/types/lib/core/severity.d.ts.map +1 -0
  151. package/types/lib/core/syncFileWriter.d.ts +33 -0
  152. package/types/lib/core/syncFileWriter.d.ts.map +1 -0
  153. package/types/lib/core/userAgent.d.ts +56 -0
  154. package/types/lib/core/userAgent.d.ts.map +1 -0
  155. package/types/lib/ecosystems/cargoCache.d.ts +75 -0
  156. package/types/lib/ecosystems/cargoCache.d.ts.map +1 -0
  157. package/types/lib/ecosystems/caxa.d.ts.map +1 -1
  158. package/types/lib/ecosystems/cppEvidence.d.ts +1 -1
  159. package/types/lib/ecosystems/cppEvidence.d.ts.map +1 -1
  160. package/types/lib/ecosystems/ecosystems.d.ts +15 -1
  161. package/types/lib/ecosystems/ecosystems.d.ts.map +1 -1
  162. package/types/lib/ecosystems/gradleutils.d.ts +53 -0
  163. package/types/lib/ecosystems/gradleutils.d.ts.map +1 -1
  164. package/types/lib/ecosystems/kosi.d.ts +73 -0
  165. package/types/lib/ecosystems/kosi.d.ts.map +1 -0
  166. package/types/lib/ecosystems/parsers-crystal.d.ts +27 -0
  167. package/types/lib/ecosystems/parsers-crystal.d.ts.map +1 -0
  168. package/types/lib/ecosystems/parsers-dotnet.d.ts +19 -0
  169. package/types/lib/ecosystems/parsers-dotnet.d.ts.map +1 -1
  170. package/types/lib/ecosystems/parsers-elm.d.ts +79 -0
  171. package/types/lib/ecosystems/parsers-elm.d.ts.map +1 -0
  172. package/types/lib/ecosystems/parsers-js.d.ts.map +1 -1
  173. package/types/lib/ecosystems/parsers-julia.d.ts +57 -0
  174. package/types/lib/ecosystems/parsers-julia.d.ts.map +1 -0
  175. package/types/lib/ecosystems/parsers-jvm.d.ts.map +1 -1
  176. package/types/lib/ecosystems/parsers-lua.d.ts +50 -0
  177. package/types/lib/ecosystems/parsers-lua.d.ts.map +1 -0
  178. package/types/lib/ecosystems/parsers-misc.d.ts +23 -0
  179. package/types/lib/ecosystems/parsers-misc.d.ts.map +1 -1
  180. package/types/lib/ecosystems/parsers-nim.d.ts +43 -0
  181. package/types/lib/ecosystems/parsers-nim.d.ts.map +1 -0
  182. package/types/lib/ecosystems/parsers-opam.d.ts +31 -0
  183. package/types/lib/ecosystems/parsers-opam.d.ts.map +1 -0
  184. package/types/lib/ecosystems/parsers-perl.d.ts +36 -0
  185. package/types/lib/ecosystems/parsers-perl.d.ts.map +1 -0
  186. package/types/lib/ecosystems/parsers-python.d.ts.map +1 -1
  187. package/types/lib/ecosystems/parsers-r.d.ts +35 -0
  188. package/types/lib/ecosystems/parsers-r.d.ts.map +1 -0
  189. package/types/lib/ecosystems/parsers-rebar.d.ts +42 -0
  190. package/types/lib/ecosystems/parsers-rebar.d.ts.map +1 -0
  191. package/types/lib/ecosystems/parsers-rust.d.ts +199 -0
  192. package/types/lib/ecosystems/parsers-rust.d.ts.map +1 -1
  193. package/types/lib/ecosystems/parsers-spack.d.ts +33 -0
  194. package/types/lib/ecosystems/parsers-spack.d.ts.map +1 -0
  195. package/types/lib/ecosystems/parsers-stack.d.ts +35 -0
  196. package/types/lib/ecosystems/parsers-stack.d.ts.map +1 -0
  197. package/types/lib/ecosystems/parsers-terraform.d.ts +34 -0
  198. package/types/lib/ecosystems/parsers-terraform.d.ts.map +1 -0
  199. package/types/lib/ecosystems/pypiClassifiers.d.ts +80 -0
  200. package/types/lib/ecosystems/pypiClassifiers.d.ts.map +1 -0
  201. package/types/lib/ecosystems/pythonutils.d.ts +21 -1
  202. package/types/lib/ecosystems/pythonutils.d.ts.map +1 -1
  203. package/types/lib/ecosystems/rubyutils.d.ts.map +1 -1
  204. package/types/lib/ecosystems/rusi.d.ts.map +1 -1
  205. package/types/lib/evinser/evinser.d.ts +34 -1
  206. package/types/lib/evinser/evinser.d.ts.map +1 -1
  207. package/types/lib/helpers/agenticToolutils.d.ts +87 -0
  208. package/types/lib/helpers/agenticToolutils.d.ts.map +1 -0
  209. package/types/lib/helpers/remote/dependency-track.d.ts +45 -4
  210. package/types/lib/helpers/remote/dependency-track.d.ts.map +1 -1
  211. package/types/lib/inventory/agentFormulationParser.d.ts.map +1 -1
  212. package/types/lib/inventory/aiCollector.d.ts.map +1 -1
  213. package/types/lib/inventory/aiInventory.d.ts.map +1 -1
  214. package/types/lib/inventory/analyzer.d.ts.map +1 -1
  215. package/types/lib/inventory/auditCategories.d.ts +12 -0
  216. package/types/lib/inventory/auditCategories.d.ts.map +1 -1
  217. package/types/lib/inventory/cbomutils.d.ts.map +1 -1
  218. package/types/lib/inventory/communityAiConfigParser.d.ts.map +1 -1
  219. package/types/lib/inventory/depsUtils.d.ts.map +1 -1
  220. package/types/lib/inventory/dosai.d.ts +43 -0
  221. package/types/lib/inventory/dosai.d.ts.map +1 -1
  222. package/types/lib/inventory/envcontext.d.ts.map +1 -1
  223. package/types/lib/inventory/evidenceUtils.d.ts.map +1 -1
  224. package/types/lib/inventory/fetchBatch.d.ts +43 -0
  225. package/types/lib/inventory/fetchBatch.d.ts.map +1 -1
  226. package/types/lib/inventory/fetchRate.d.ts +9 -6
  227. package/types/lib/inventory/fetchRate.d.ts.map +1 -1
  228. package/types/lib/inventory/forgeEnricher.d.ts.map +1 -1
  229. package/types/lib/inventory/jvmToolEnv.d.ts +190 -0
  230. package/types/lib/inventory/jvmToolEnv.d.ts.map +1 -0
  231. package/types/lib/inventory/mcpConfigParser.d.ts.map +1 -1
  232. package/types/lib/inventory/mcpDiscovery.d.ts.map +1 -1
  233. package/types/lib/inventory/mcpServerManifest.d.ts +19 -0
  234. package/types/lib/inventory/mcpServerManifest.d.ts.map +1 -0
  235. package/types/lib/inventory/mcpbBundle.d.ts +19 -0
  236. package/types/lib/inventory/mcpbBundle.d.ts.map +1 -0
  237. package/types/lib/inventory/osinfo.d.ts.map +1 -1
  238. package/types/lib/inventory/plugins.d.ts.map +1 -1
  239. package/types/lib/inventory/protobom.d.ts +18 -13
  240. package/types/lib/inventory/protobom.d.ts.map +1 -1
  241. package/types/lib/inventory/protobomLoader.d.ts.map +1 -1
  242. package/types/lib/inventory/source.d.ts.map +1 -1
  243. package/types/lib/inventory/stylePackageRefs.d.ts +17 -0
  244. package/types/lib/inventory/stylePackageRefs.d.ts.map +1 -0
  245. package/types/lib/inventory/svelteUtils.d.ts +124 -0
  246. package/types/lib/inventory/svelteUtils.d.ts.map +1 -0
  247. package/types/lib/inventory/toolRequirements.d.ts +216 -0
  248. package/types/lib/inventory/toolRequirements.d.ts.map +1 -0
  249. package/types/lib/managers/binary.d.ts.map +1 -1
  250. package/types/lib/managers/docker.d.ts.map +1 -1
  251. package/types/lib/parsers/huggingfaceUtils.d.ts +8 -1
  252. package/types/lib/parsers/huggingfaceUtils.d.ts.map +1 -1
  253. package/types/lib/parsers/onnx.d.ts +28 -0
  254. package/types/lib/parsers/onnx.d.ts.map +1 -0
  255. package/types/lib/parsers/safetensors.d.ts +22 -0
  256. package/types/lib/parsers/safetensors.d.ts.map +1 -0
  257. package/types/lib/stages/postgen/annotationBuilder.d.ts +53 -0
  258. package/types/lib/stages/postgen/annotationBuilder.d.ts.map +1 -0
  259. package/types/lib/stages/postgen/auditBom.d.ts.map +1 -1
  260. package/types/lib/stages/postgen/introspection/annotate.d.ts +81 -0
  261. package/types/lib/stages/postgen/introspection/annotate.d.ts.map +1 -0
  262. package/types/lib/stages/postgen/introspection/commandFacts.d.ts +32 -0
  263. package/types/lib/stages/postgen/introspection/commandFacts.d.ts.map +1 -0
  264. package/types/lib/stages/postgen/introspection/emit.d.ts +71 -0
  265. package/types/lib/stages/postgen/introspection/emit.d.ts.map +1 -0
  266. package/types/lib/stages/postgen/introspection/formulationEvidence.d.ts +154 -0
  267. package/types/lib/stages/postgen/introspection/formulationEvidence.d.ts.map +1 -0
  268. package/types/lib/stages/postgen/introspection/markers.d.ts +58 -0
  269. package/types/lib/stages/postgen/introspection/markers.d.ts.map +1 -0
  270. package/types/lib/stages/postgen/introspection/reflect.d.ts +77 -0
  271. package/types/lib/stages/postgen/introspection/reflect.d.ts.map +1 -0
  272. package/types/lib/stages/postgen/introspection/report.d.ts +85 -0
  273. package/types/lib/stages/postgen/introspection/report.d.ts.map +1 -0
  274. package/types/lib/stages/postgen/introspection/score.d.ts +149 -0
  275. package/types/lib/stages/postgen/introspection/score.d.ts.map +1 -0
  276. package/types/lib/stages/postgen/introspection/shapeCommand.d.ts +79 -0
  277. package/types/lib/stages/postgen/introspection/shapeCommand.d.ts.map +1 -0
  278. package/types/lib/stages/postgen/parentEdge.d.ts +35 -0
  279. package/types/lib/stages/postgen/parentEdge.d.ts.map +1 -0
  280. package/types/lib/stages/postgen/postgen.d.ts +35 -2
  281. package/types/lib/stages/postgen/postgen.d.ts.map +1 -1
  282. package/types/lib/stages/postgen/ruleEngine.d.ts.map +1 -1
  283. package/types/lib/stages/pregen/envAudit.d.ts.map +1 -1
  284. package/types/lib/stages/pregen/pregen.d.ts +131 -0
  285. package/types/lib/stages/pregen/pregen.d.ts.map +1 -1
  286. package/types/lib/validator/bomValidator.d.ts.map +1 -1
@@ -44,6 +44,205 @@ export declare function parseCargoManifestDependencyData(cargoTomlFile: string,
44
44
  * @returns {Object[]} Array of dependency relationship objects with ref and dependsOn fields
45
45
  */
46
46
  export declare function parseCargoDependencyData(cargoLockData: string): Object[];
47
+ /**
48
+ * Normalize a cargo dependency kind to the vocabulary used by the cargo
49
+ * manifest parsers.
50
+ *
51
+ * `cargo metadata` encodes a normal dependency as `null` rather than a string,
52
+ * so a truthiness test would silently leave runtime dependencies unlabelled.
53
+ *
54
+ * @param {string|null|undefined} kind Dependency kind as reported by cargo
55
+ * @returns {string} One of `runtime`, `build` or `dev`
56
+ */
57
+ export declare function normalizeCargoDepKind(kind: string | null | undefined): string;
58
+ /**
59
+ * Parse a cargo package id into its name and version.
60
+ *
61
+ * cargo 1.77 and later emit the package id spec form
62
+ * (`registry+https://...#name@1.0.0`, or `path+file:///p/foo#1.0.0` where the
63
+ * name is carried by the path); earlier releases emit `name 1.0.0 (source)`.
64
+ *
65
+ * @param {string} packageId cargo package id
66
+ * @returns {{name: string, version: string}|undefined} Parsed identity
67
+ */
68
+ export declare function parseCargoPackageId(packageId: string): {
69
+ name: string;
70
+ version: string;
71
+ } | undefined;
72
+ /**
73
+ * Build the `name@version` key used to correlate cargo components across the
74
+ * lock file, the manifests and `cargo metadata`.
75
+ *
76
+ * @param {{name: string, version: string}} pkg Package identity
77
+ * @returns {string} Correlation key
78
+ */
79
+ export declare function cargoComponentKey(pkg: {
80
+ name: string;
81
+ version: string;
82
+ }): string;
83
+ /**
84
+ * Convert a cargo purl or bom-ref into a `name@version` correlation key.
85
+ *
86
+ * @param {string} purl cargo purl
87
+ * @returns {string} Correlation key
88
+ */
89
+ export declare function cargoPurlToComponentKey(purl: string): string;
90
+ /**
91
+ * Collect the dependency kinds and platform gates declared by a single
92
+ * `Cargo.toml`, keyed by the crate name that cargo resolves the entry to.
93
+ *
94
+ * Manifests declare version requirements rather than resolved versions, so the
95
+ * returned map is keyed by name alone and is meant to label the edges leaving a
96
+ * workspace member in the lock file graph.
97
+ *
98
+ * @param {string} cargoTomlFile Cargo.toml path
99
+ * @param {object} [context] Workspace resolution context
100
+ * @returns {Map<string, {kinds: Set<string>, targets: Set<string>, optional: boolean}>} Declared edges
101
+ */
102
+ export declare function parseCargoManifestDependencyKinds(cargoTomlFile: string, context?: object): Map<string, {
103
+ kinds: Set<string>;
104
+ targets: Set<string>;
105
+ optional: boolean;
106
+ }>;
107
+ /**
108
+ * Roll per-edge cargo dependency kinds up to an effective kind per component.
109
+ *
110
+ * A crate is only dev-only when *every* path reaching it from a workspace root
111
+ * traverses a dev edge, so a crate shared between a dev dependency and a normal
112
+ * one keeps its runtime kind. Cargo never builds the dev dependencies of a
113
+ * dependency, so dev edges are followed from the workspace roots alone.
114
+ *
115
+ * @param {object} graph Dependency graph
116
+ * @param {string[]} graph.rootKeys Workspace member component keys
117
+ * @param {Map<string, Array<{to: string, kind: string, target?: string}>>} graph.edges Adjacency map
118
+ * @returns {Map<string, {kind: string, kinds: Set<string>, targets: Set<string>, targetGated: boolean}>} Effective kinds
119
+ */
120
+ export declare function rollupCargoDependencyKinds({ rootKeys, edges }: {
121
+ rootKeys: string[];
122
+ edges: Map<string, Array<{
123
+ to: string;
124
+ kind: string;
125
+ target?: string;
126
+ }>>;
127
+ }): Map<string, {
128
+ kind: string;
129
+ kinds: Set<string>;
130
+ targets: Set<string>;
131
+ targetGated: boolean;
132
+ }>;
133
+ /**
134
+ * Build a cargo dependency graph from the `resolve` section of
135
+ * `cargo metadata --format-version 1`.
136
+ *
137
+ * @param {object} metadata Parsed `cargo metadata` output
138
+ * @returns {{rootKeys: string[], edges: Map<string, Array<object>>, packageInfo: Map<string, object>, resolvedKeys: Set<string>}} Graph
139
+ */
140
+ export declare function parseCargoMetadataResolve(metadata: object): {
141
+ rootKeys: string[];
142
+ edges: Map<string, Array<object>>;
143
+ packageInfo: Map<string, object>;
144
+ resolvedKeys: Set<string>;
145
+ };
146
+ /**
147
+ * Build a cargo dependency graph from the lock file relationships, labelling
148
+ * the edges that leave a workspace member with the kinds declared by its
149
+ * manifest.
150
+ *
151
+ * The lock file is the union of every dependency kind and every target triple,
152
+ * so only the manifests can distinguish them. The resulting labels are exact at
153
+ * depth one and inherited below it, which is enough to identify dev-only and
154
+ * build-only subtrees without invoking cargo.
155
+ *
156
+ * @param {object[]} lockDependencies Relationships from {@link parseCargoDependencyData}
157
+ * @param {Map<string, Map<string, object>>} declaredEdgesByRoot Declared edges keyed by root component key
158
+ * @returns {{rootKeys: string[], edges: Map<string, Array<object>>}} Graph
159
+ */
160
+ export declare function buildCargoLockDependencyGraph(lockDependencies: object[], declaredEdgesByRoot: Map<string, Map<string, object>>): {
161
+ rootKeys: string[];
162
+ edges: Map<string, Array<object>>;
163
+ };
164
+ /**
165
+ * Annotate cargo components with their effective dependency kind, platform
166
+ * gates and scope.
167
+ *
168
+ * Components reachable only through dev edges are scoped `excluded` so
169
+ * `--required-only` drops them. Build dependencies stay required because a
170
+ * build script is part of producing the artifact; the kind is recorded as a
171
+ * property so a consumer can filter on it.
172
+ *
173
+ * @param {object[]} pkgList Components to annotate
174
+ * @param {Map<string, object>} rollup Effective kinds from {@link rollupCargoDependencyKinds}
175
+ * @param {Map<string, object>} [packageInfo] Extra per-package facts
176
+ * @param {object} [options] Annotation options
177
+ * @param {boolean} [options.resolveIsComplete] The rollup covers every workspace in the scan, so a
178
+ * component missing from it is an optional dependency no feature activates
179
+ * @returns {object[]} The annotated components
180
+ */
181
+ export declare function applyCargoDependencyKindMetadata(pkgList: object[], rollup: Map<string, object>, packageInfo?: Map<string, object>, options?: {
182
+ resolveIsComplete?: boolean;
183
+ }): object[];
184
+ /**
185
+ * Recover the upstream version of a native library from the version of the
186
+ * crate that ships it.
187
+ *
188
+ * The `-sys` and `-src` crates carry the upstream version as semver build
189
+ * metadata, because the crate's own version tracks the binding's releases
190
+ * rather than the library's: `openssl-src@300.6.1+3.6.3` ships OpenSSL 3.6.3
191
+ * and `curl-sys@0.4.74+curl-8.9.0` ships curl 8.9.0.
192
+ *
193
+ * @param {string} crateVersion Version of the providing crate
194
+ * @returns {string} Upstream version, or an empty string when it is not encoded
195
+ */
196
+ export declare function cargoUpstreamVersionFromCrateVersion(crateVersion: string): string;
197
+ /**
198
+ * Recover the version of a vendored native library from the C source the crate
199
+ * ships.
200
+ *
201
+ * A `-sys` crate that bundles its library carries the upstream version in a
202
+ * header define - `ZLIB_VERSION`, `SQLITE_VERSION`, `OPENSSL_VERSION_TEXT` -
203
+ * which is the only statement of the version for the crates that do not encode
204
+ * it in their own version. A crate often ships more than one variant, so a
205
+ * candidate sitting in a directory named after a feature this build did not
206
+ * enable is dropped: `libz-sys` ships both `src/zlib` and `src/zlib-ng`, and
207
+ * only one of them is compiled.
208
+ *
209
+ * @param {object} args Resolution inputs
210
+ * @param {string} args.crateDir Directory holding the crate's unpacked source
211
+ * @param {string} args.links The crate's `links` value
212
+ * @param {string} args.libraryName Normalized library name
213
+ * @param {string[]} [args.declaredFeatures] Features the crate declares
214
+ * @param {Set<string>} [args.resolvedFeatures] Features the resolver enabled
215
+ * @returns {{version: string, evidence: string, candidates: string[]}} Version and where it came from
216
+ */
217
+ export declare function resolveCargoVendoredLibraryVersion({ crateDir, links, libraryName, declaredFeatures, resolvedFeatures, }: {
218
+ crateDir: string;
219
+ links: string;
220
+ libraryName: string;
221
+ declaredFeatures?: string[];
222
+ resolvedFeatures?: Set<string>;
223
+ }): {
224
+ version: string;
225
+ evidence: string;
226
+ candidates: string[];
227
+ };
228
+ /**
229
+ * Build components for the native libraries that `-sys` crates link.
230
+ *
231
+ * A crate declaring `links = "openssl"` puts a C library into the artifact that
232
+ * the cargo dependency graph cannot describe: its advisories and its license
233
+ * obligations belong to OpenSSL, not to the Rust binding. When the resolver
234
+ * enabled a vendoring feature, that library is compiled into the binary, which
235
+ * makes it a component of the delivered assembly.
236
+ *
237
+ * @param {Map<string, object>} packageInfo Per-package facts from {@link parseCargoMetadataResolve}
238
+ * @param {Map<string, Array<object>>} edges Dependency edges keyed by component key
239
+ * @param {Map<string, object>} rollup Effective kinds, used to skip crates no build reaches
240
+ * @returns {{components: object[], dependencies: object[]}} Native library components and their edges
241
+ */
242
+ export declare function buildCargoNativeLibraryComponents(packageInfo: Map<string, object>, edges: Map<string, Array<object>>, rollup: Map<string, object>): {
243
+ components: object[];
244
+ dependencies: object[];
245
+ };
47
246
  /**
48
247
  * Parses tab-separated cargo-auditable binary metadata output and returns a list
49
248
  * of Rust package components. Optionally fetches crates.io metadata when
@@ -1 +1 @@
1
- {"version":3,"file":"parsers-rust.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-rust.js"],"names":[],"mappings":"AA6mBA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,kBAAkB,CACtC,aAAa,QAAA,EACb,MAAM,GAPG,OAOK,EACd,WAAW,GAPF,MAOO,EAChB,OAAO,KAAK,SAuQb;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,aAAa,QAAA,EACb,MAAM,GAPG,OAOK,EACd,WAAW,GAPF,MAOO,SA8FjB;AAgCD;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAAC,aAAa,EAJnD,MAImD,EAAE,OAAO,AAHpE,CACA,EADQ,MAGiE,GAF/D,MAAM,EAAE,CAsIpB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAH3C,MAG2C,GAFzC,MAAM,EAAE,CAgEpB;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAAC,SAAS,EAH5C,MAG4C,GAF1C,OAAO,CAAC,MAAM,EAAE,CAAC,CA4B7B"}
1
+ {"version":3,"file":"parsers-rust.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-rust.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * HPC Spack parser for `spack.lock`.
3
+ *
4
+ * Spack writes a JSON lock file when an environment is concretised:
5
+ *
6
+ * - `roots` — the specs the user asked for, each as `{hash, spec}`.
7
+ * - `concrete_specs` — every node of the resolved DAG, keyed by its DAG
8
+ * hash. A node carries its `name`, `version`, `namespace`, the compiler
9
+ * and architecture it was built for, and a `dependencies` list whose
10
+ * entries reference other nodes by hash.
11
+ *
12
+ * The DAG hash is the identity Spack itself uses: two builds of the same
13
+ * version with different variants or compilers are different hashes, so the
14
+ * graph is keyed by hash throughout and the hash is carried into each
15
+ * component's bom-ref.
16
+ *
17
+ * No `spack` purl type is registered, so nodes are identified as generic
18
+ * packages carrying a `cdx:purl:proposedType=spack` property, following the
19
+ * convention used for nix and zig. The DAG hash is kept as a property because
20
+ * it identifies the concrete build, not the artifact bytes.
21
+ */
22
+ /**
23
+ * Parse a `spack.lock` file.
24
+ *
25
+ * @param {string} spackLockFile Path to `spack.lock`
26
+ * @returns {{ pkgList: object[], dependencies: object[], rootInputs: string[] }}
27
+ */
28
+ export declare function parseSpackLock(spackLockFile: string): {
29
+ pkgList: object[];
30
+ dependencies: object[];
31
+ rootInputs: string[];
32
+ };
33
+ //# sourceMappingURL=parsers-spack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers-spack.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-spack.js"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAHjC,MAGiC,GAF/B;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAgE/E"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Haskell Stack parser for `stack.yaml` and its lock file.
3
+ *
4
+ * Stack resolves packages from a snapshot plus the `extra-deps` a project
5
+ * declares, and writes the completed locations to `stack.yaml.lock` (named
6
+ * after the configuration file, so a custom `foo.yaml` locks to
7
+ * `foo.yaml.lock`). The lock is YAML with two lists:
8
+ *
9
+ * - `packages` — one entry per extra-dep, each holding the `original`
10
+ * incomplete specification and the `completed` location. A Hackage
11
+ * location is the string `<name>-<version>@sha256:<hex>,<size>`; a
12
+ * repository location carries `url`, `commit` and `subdir`.
13
+ * - `snapshots` — the resolved snapshot chain, each with the `original`
14
+ * name (`lts-22.28`) and the `completed` url, size and sha256.
15
+ *
16
+ * The lock pins only the extra-deps: packages taken from the snapshot are not
17
+ * listed, because the snapshot url and digest already pin them. The snapshot
18
+ * is therefore recorded on the parent component rather than expanded.
19
+ *
20
+ * Hackage packages are identified with the registered `hackage` purl type
21
+ * (`pkg:hackage/<name>@<version>`).
22
+ */
23
+ /**
24
+ * Parse a Stack project from its lock file, with optional `stack.yaml`.
25
+ *
26
+ * @param {string} stackLockFile Path to `stack.yaml.lock` or `stack.lock`
27
+ * @param {string} [stackYamlFile] Path to `stack.yaml`, if present
28
+ * @returns {{ pkgList: object[], parentComponent: object, rootInputs: string[] }}
29
+ */
30
+ export declare function parseStackProject(stackLockFile: string, stackYamlFile?: string): {
31
+ pkgList: object[];
32
+ parentComponent: object;
33
+ rootInputs: string[];
34
+ };
35
+ //# sourceMappingURL=parsers-stack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers-stack.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-stack.js"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,aAAa,EAJpC,MAIoC,EAAE,aAAa,AAH3D,CACA,EADQ,MAGmD,GAFjD;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CA0ChF"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Terraform and OpenTofu parser for `.terraform.lock.hcl`.
3
+ *
4
+ * The lock file pins every provider the configuration resolves to, with its
5
+ * exact version, the version constraints that produced it, and content
6
+ * hashes. It is written in a small, regular subset of HCL: provider blocks,
7
+ * `version` and `constraints` attributes, and a `hashes` list of prefixed
8
+ * digests. A line scanner is sufficient and avoids a general HCL parser.
9
+ *
10
+ * Provider addresses look like `registry.terraform.io/hashicorp/aws`; the
11
+ * registry host and namespace identify the provider upstream, so they are
12
+ * kept in the component group and a generic purl
13
+ * (`pkg:generic/<host>/<namespace>/<type>@<version>`), with the intended type
14
+ * recorded as a `cdx:purl:proposedType` property because no `terraform`
15
+ * purl type is registered.
16
+ *
17
+ * The two hash schemes in the `hashes` list mean different things. A `zh:`
18
+ * digest is a SHA-256 of the official `.zip` package as the registry indexes
19
+ * it, so it is the one a consumer can check an artifact against and the one
20
+ * emitted in the CycloneDX `hashes` array. An `h1:` digest is base64 over a
21
+ * hash of the package's *contents* rather than the archive, which lets
22
+ * Terraform verify an unpacked directory but makes it useless as an artifact
23
+ * checksum; it is kept as a property instead of being mislabelled SHA-256.
24
+ */
25
+ /**
26
+ * Parse a `.terraform.lock.hcl` file.
27
+ *
28
+ * @param {string} lockFile Path to the lock file
29
+ * @returns {{ pkgList: object[] }} Provider components
30
+ */
31
+ export declare function parseTerraformLockFile(lockFile: string): {
32
+ pkgList: object[];
33
+ };
34
+ //# sourceMappingURL=parsers-terraform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parsers-terraform.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/parsers-terraform.js"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAHpC,MAGoC,GAFlC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAkEjC"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * `Framework ::` values that do not mean "an application is built on this".
3
+ *
4
+ * Two groups, both of which would otherwise put a `framework` tag — and therefore
5
+ * `type: "framework"` — on a large share of an ordinary dependency tree, drowning
6
+ * the runtime frameworks the tag exists to surface:
7
+ *
8
+ * * Development, build, test and documentation tooling. A pytest plugin
9
+ * declaring `Framework :: Pytest` is making a true statement, but it belongs
10
+ * to the dev dependencies, not to what the application runs on.
11
+ * * Concurrency runtimes. `Framework :: AsyncIO` is declared by a very large
12
+ * number of libraries to advertise that they work under asyncio; observed on
13
+ * `fastapi`, and `Framework :: AnyIO` likewise on `starlette`. It describes an
14
+ * execution model, not a framework the application is written against.
15
+ *
16
+ * The declared name is still emitted as a tag in every case, and still recorded in
17
+ * `cdx:pypi:frameworks`; only the generic `framework` tag is withheld.
18
+ */
19
+ export declare const PYPI_NON_APPLICATION_FRAMEWORKS: Set<string>;
20
+ /**
21
+ * Normalize a distribution name per PEP 503.
22
+ *
23
+ * @param {string} name Distribution name
24
+ * @returns {string} Normalized name, or an empty string for unusable input
25
+ */
26
+ export declare function normalizePypiName(name: string): string;
27
+ /**
28
+ * Best-known import module names for a PyPI distribution.
29
+ *
30
+ * Two sources, in order: the curated alias map (which is where the cases that
31
+ * cannot be derived from the name live — `pyyaml` installs `yaml`, `absl-py`
32
+ * installs `absl`, `beautifulsoup4` installs `bs4`), and the name-derived form,
33
+ * which is correct for the large majority of distributions. Callers that need to
34
+ * distinguish the two should read the alias map themselves; for tagging purposes
35
+ * both are usable and a wrong extra candidate simply matches nothing.
36
+ *
37
+ * This is deliberately not a guess at *every* module a distribution ships — only
38
+ * at its top-level import names.
39
+ *
40
+ * @param {string} name Distribution name, e.g. "PyYAML"
41
+ * @returns {string[]} Candidate top-level module names, deduplicated
42
+ */
43
+ export declare function pypiModulesForPackage(name: string): string[];
44
+ /**
45
+ * Interpret a PyPI classifier list.
46
+ *
47
+ * @param {string[]} classifiers Raw `info.classifiers` from the PyPI JSON API
48
+ * @returns {{frameworks: string[], tags: string[]}} Declared frameworks (lowercased,
49
+ * e.g. `["django"]`) and the tag vocabulary they and the `Topic ::` lines imply
50
+ */
51
+ export declare function parsePypiClassifiers(classifiers: string[]): {
52
+ frameworks: string[];
53
+ tags: string[];
54
+ };
55
+ /**
56
+ * Attach classifier-derived tags and properties to a package.
57
+ *
58
+ * Tags are merged into any the package already carries rather than replacing
59
+ * them — `lib/managers/binary.js` sets `tags: ["source"]` as an identity marker,
60
+ * and losing it would change how that package is reconciled later.
61
+ *
62
+ * @param {Object} pkg Package object, mutated in place
63
+ * @param {string[]} classifiers Raw `info.classifiers` from the PyPI JSON API
64
+ * @returns {Object} The same package object
65
+ */
66
+ export declare function applyPypiClassifierMetadata(pkg: Object, classifiers: string[]): Object;
67
+ /**
68
+ * Attach the distribution's top-level import module names as `internal:Namespaces`.
69
+ *
70
+ * This is the same property jar, gem, nuget and composer components already carry,
71
+ * so downstream consumers that map namespaces back to components need no
72
+ * pypi-specific path. Unlike the jar case the value is name-derived and
73
+ * alias-curated rather than read out of the artifact, which is why
74
+ * `cdx:pypi:modulesFrom` records the provenance.
75
+ *
76
+ * @param {Object} pkg Package object, mutated in place
77
+ * @returns {Object} The same package object
78
+ */
79
+ export declare function applyPypiModuleNames(pkg: Object): Object;
80
+ //# sourceMappingURL=pypiClassifiers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pypiClassifiers.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/pypiClassifiers.js"],"names":[],"mappings":"AAmBA;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,+BAA+B,aAgB1C,CAAC;AAyCH;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAH3B,MAG2B,GAFzB,MAAM,CAoBlB;AAmCD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAH/B,MAG+B,GAF7B,MAAM,EAAE,CAcpB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAJrC,MAAM,EAI+B,GAHnC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAC,CA2ClD;AAiBD;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAJpC,MAIoC,EAAE,WAAW,EAHjD,MAAM,EAG2C,GAF/C,MAAM,CA0BlB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAH7B,MAG6B,GAF3B,MAAM,CA+BlB"}
@@ -15,6 +15,26 @@ export declare function getVenvMetadata(env?: Object, explicitPath?: string): Ob
15
15
  * @returns {string} Path to the Python executable or the fallback command name
16
16
  */
17
17
  export declare function get_python_command_from_env(env: string): string;
18
+ /**
19
+ * Is this import satisfied by a module that lives in the project itself?
20
+ *
21
+ * `atom parsedeps` reports every non-stdlib import it sees, including imports of the
22
+ * project's own packages. Attributing those to a distribution invents dependencies:
23
+ * `data/pypi-pkg-aliases.json` maps the module `app` to `zope2`, `test` to `pytabix`,
24
+ * `models` to `asposestorage` and `src` to `auto-mix-prep`, so any project with a
25
+ * local package of that name acquires an obscure component it never depended on -
26
+ * along with every namespace and tag that component carries downstream. Filtering by
27
+ * name would need a denylist of every plausible first-party name; asking the
28
+ * filesystem whether the module is ours answers it exactly.
29
+ *
30
+ * Checks the project root and a `src/` layout for a module file, a package directory,
31
+ * and a PEP 420 namespace package directory.
32
+ *
33
+ * @param {string} src Path to the project being analysed
34
+ * @param {string} name Imported top-level module name
35
+ * @returns {boolean} `true` if the project supplies this module itself
36
+ */
37
+ export declare function isFirstPartyModule(src: string, name: string): boolean;
18
38
  /**
19
39
  * Method to find python modules by parsing the imports and then checking with PyPI to obtain the latest version
20
40
  *
@@ -51,9 +71,9 @@ export declare function createUVLock(basePath: string, options: Object): void;
51
71
  */
52
72
  export declare function getPipFrozenTree(basePath: string, reqOrSetupFile: string, tempVenvDir: string, parentComponent: Object, projectRoot: any, getTreeWithPluginFn: any): Object;
53
73
  export declare function getPipTreeForPackages(basePath: any, pkgList: any, tempVenvDir: any, parentComponent: any, getTreeWithPluginFn: any): {
74
+ failedPkgList?: undefined;
54
75
  rootList?: undefined;
55
76
  dependenciesList?: undefined;
56
- failedPkgList?: undefined;
57
77
  } | {
58
78
  failedPkgList: any[];
59
79
  rootList: {
@@ -1 +1 @@
1
- {"version":3,"file":"pythonutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/pythonutils.js"],"names":[],"mappings":"AAiCA;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,GAJxB,MAIsC,EAAE,YAAY,AAH5D,CACA,EADQ,MAG2D,GAFzD,MAAM,CAyLlB;AAyED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAHpC,MAGoC,GAFlC,MAAM,CA6BlB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAL3B,MAK2B,EAAE,QAAQ,OAAA,EAAE,OAAO,EAH9C,MAG8C;;;;;;;;GAuExD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAH1B,MAG0B,EAAE,OAAO,EAFnC,MAEmC,QAgD7C;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EARC,MAQD,EACR,cAAc,EARL,MAQK,EACd,WAAW,EARF,MAQE,EACX,eAAe,EARN,MAQM,EACf,WAAW,KAAA,EACX,mBAAmB,KAAA,GARR,MAAM,CAmkBlB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,KAAA,EACR,OAAO,KAAA,EACP,WAAW,KAAA,EACX,eAAe,KAAA,EACf,mBAAmB,KAAA;;;;;;;;;;;;;;;;EAwNpB"}
1
+ {"version":3,"file":"pythonutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/pythonutils.js"],"names":[],"mappings":"AAiCA;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,GAJxB,MAIsC,EAAE,YAAY,AAH5D,CACA,EADQ,MAG2D,GAFzD,MAAM,CAyLlB;AAyED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAHpC,MAGoC,GAFlC,MAAM,CA6BlB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAJ3B,MAI2B,EAAE,IAAI,EAHjC,MAGiC,GAF/B,OAAO,CA4BnB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAL3B,MAK2B,EAAE,QAAQ,OAAA,EAAE,OAAO,EAH9C,MAG8C;;;;;;;;GAwExD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAH1B,MAG0B,EAAE,OAAO,EAFnC,MAEmC,QAgD7C;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EARC,MAQD,EACR,cAAc,EARL,MAQK,EACd,WAAW,EARF,MAQE,EACX,eAAe,EARN,MAQM,EACf,WAAW,KAAA,EACX,mBAAmB,KAAA,GARR,MAAM,CAmkBlB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,KAAA,EACR,OAAO,KAAA,EACP,WAAW,KAAA,EACX,eAAe,KAAA,EACf,mBAAmB,KAAA;;;;;;;;;;;;;;;;EAwNpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"rubyutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rubyutils.js"],"names":[],"mappings":"AA0DA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAHzB,MAGyB,GAFvB,OAAO,CAOnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAHlC,MAAM,GAAG,SAGyB,GAFhC,MAAM,GAAG,SAAS,CAO9B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAHrC,MAAM,GAAG,SAG4B,GAFnC;IAAC,OAAO,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAAC,CAe3E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAHhC,MAGgC,GAF9B,MAAM,CAIlB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,EALnB,MAKmB,EAAE,OAAO,EAJ5B,MAAM,GAAG,SAImB,EAAE,QAAQ,EAHtC,MAAM,GAAG,SAG6B,GAFpC,MAAM,CAclB;AAsED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAH9B,MAG8B,GAF5B;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CAAC,GAAG,SAAS,CAqBjE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAF1B,MAAM,CAWlB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAHnC,MAGmC,GAFjC,MAAM,CAiClB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAHjC,MAGiC,GAF/B,MAAM,CAgClB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,OAAA,EAAE,OAAO,GAJ5D;IAAwB,OAAO,EAAvB,MAAM,CACd;IAAwB,oBAAoB,EAApC,MAAM,CACd;CAEiE,GAFvD,OAAO,OAAO,CA+I1B;AAwID;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,OAAA,kBAkIhD;AA6CD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,KAAA,YAsBpC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,QAAA,EACX,aAAa,QAAA,EACb,OAAO,QAAA,EACP,OAAO,QAAA,EACP,QAAQ,QAAA,GAPG,KAAK,CAAC,MAAM,CAAC,CA4IzB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAHvC,MAGuC,EAAE,WAAW,EAFpD,MAEoD,kBA8P9D;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAH3C,MAG2C,EAAE,QAAQ,EAFrD,MAEqD;;;;;;;GAgV/D"}
1
+ {"version":3,"file":"rubyutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rubyutils.js"],"names":[],"mappings":"AA2DA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAHzB,MAGyB,GAFvB,OAAO,CAOnB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAHlC,MAAM,GAAG,SAGyB,GAFhC,MAAM,GAAG,SAAS,CAO9B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAHrC,MAAM,GAAG,SAG4B,GAFnC;IAAC,OAAO,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAAC,CAe3E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAHhC,MAGgC,GAF9B,MAAM,CAIlB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,IAAI,EALnB,MAKmB,EAAE,OAAO,EAJ5B,MAAM,GAAG,SAImB,EAAE,QAAQ,EAHtC,MAAM,GAAG,SAG6B,GAFpC,MAAM,CAclB;AAsED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAH9B,MAG8B,GAF5B;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;CAAC,GAAG,SAAS,CAqBjE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAF1B,MAAM,CAWlB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAHnC,MAGmC,GAFjC,MAAM,CAiClB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAHjC,MAGiC,GAF/B,MAAM,CAgClB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,OAAA,EAAE,OAAO,GAJ5D;IAAwB,OAAO,EAAvB,MAAM,CACd;IAAwB,oBAAoB,EAApC,MAAM,CACd;CAEiE,GAFvD,OAAO,OAAO,CA+I1B;AAwID;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,OAAA,kBAmIhD;AA8CD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,KAAA,YAsBpC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,QAAA,EACX,aAAa,QAAA,EACb,OAAO,QAAA,EACP,OAAO,QAAA,EACP,QAAQ,QAAA,GAPG,KAAK,CAAC,MAAM,CAAC,CA4IzB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAHvC,MAGuC,EAAE,WAAW,EAFpD,MAEoD,kBAwQ9D;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,WAAW,EAH3C,MAG2C,EAAE,QAAQ,EAFrD,MAEqD;;;;;;;GAgV/D"}
@@ -1 +1 @@
1
- {"version":3,"file":"rusi.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rusi.js"],"names":[],"mappings":"AAsnBA;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAHhC,MAGgC,GAF9B,OAAO,CAInB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAH9B,MAG8B,GAF5B,MAAM,GAAC,SAAS,CAW5B;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EALxB,MAKwB,EAAE,UAAU,EAJpC,MAIoC,EAAE,OAAO,GAH7C,MAGkD,GAFhD,OAAO,CAuDnB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAJ3B,MAI2B,EAAE,OAAO,GAHpC,MAGyC,GAFvC,MAAM,GAAC,SAAS,CA2B5B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,GAJnC,MAIwC,EAAE,UAAU,QAAK,GAFvD,MAAM,CA4DlB"}
1
+ {"version":3,"file":"rusi.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rusi.js"],"names":[],"mappings":"AAqtBA;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAHhC,MAGgC,GAF9B,OAAO,CAInB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAH9B,MAG8B,GAF5B,MAAM,GAAC,SAAS,CAW5B;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EALxB,MAKwB,EAAE,UAAU,EAJpC,MAIoC,EAAE,OAAO,GAH7C,MAGkD,GAFhD,OAAO,CAuDnB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAJ3B,MAI2B,EAAE,OAAO,GAHpC,MAGyC,GAFvC,MAAM,GAAC,SAAS,CA2B5B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,GAJnC,MAIwC,EAAE,UAAU,QAAK,GAFvD,MAAM,CA8DlB"}
@@ -115,6 +115,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
115
115
  userDefinedTypesMap: {};
116
116
  componentPropertiesMap?: undefined;
117
117
  metadataProperties?: undefined;
118
+ workspaceComponent?: undefined;
118
119
  atomFile?: undefined;
119
120
  usagesSlicesFile?: undefined;
120
121
  dataFlowSlicesFile?: undefined;
@@ -123,6 +124,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
123
124
  tempDir?: undefined;
124
125
  tempDirOwned?: undefined;
125
126
  cryptoComponents?: undefined;
127
+ aiComponents?: undefined;
126
128
  cryptoGeneratePurls?: undefined;
127
129
  openapiSpecFile?: undefined;
128
130
  } | {
@@ -134,6 +136,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
134
136
  cryptoGeneratePurls: any;
135
137
  servicesMap: {};
136
138
  userDefinedTypesMap: {};
139
+ workspaceComponent?: undefined;
137
140
  atomFile?: undefined;
138
141
  usagesSlicesFile?: undefined;
139
142
  dataFlowSlicesFile?: undefined;
@@ -141,10 +144,37 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
141
144
  semanticsSlicesFile?: undefined;
142
145
  tempDir?: undefined;
143
146
  tempDirOwned?: undefined;
147
+ aiComponents?: undefined;
148
+ openapiSpecFile?: undefined;
149
+ } | {
150
+ purlLocationMap: {};
151
+ dataFlowFrames: {};
152
+ componentPropertiesMap: {};
153
+ metadataProperties: any[];
154
+ cryptoComponents: any[];
155
+ cryptoGeneratePurls: {};
156
+ servicesMap: {};
157
+ userDefinedTypesMap: {};
158
+ workspaceComponent: {
159
+ type: string;
160
+ name: any;
161
+ version: any;
162
+ purl: any;
163
+ "bom-ref": any;
164
+ } | undefined;
165
+ atomFile?: undefined;
166
+ usagesSlicesFile?: undefined;
167
+ dataFlowSlicesFile?: undefined;
168
+ reachablesSlicesFile?: undefined;
169
+ semanticsSlicesFile?: undefined;
170
+ tempDir?: undefined;
171
+ tempDirOwned?: undefined;
172
+ aiComponents?: undefined;
144
173
  openapiSpecFile?: undefined;
145
174
  } | {
146
175
  componentPropertiesMap?: undefined;
147
176
  metadataProperties?: undefined;
177
+ workspaceComponent?: undefined;
148
178
  usagesSlicesFile: any;
149
179
  dataFlowSlicesFile: any;
150
180
  semanticsSlicesFile: any;
@@ -155,6 +185,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
155
185
  tempDirOwned: any;
156
186
  userDefinedTypesMap: {};
157
187
  cryptoComponents: any[];
188
+ aiComponents: any[];
158
189
  cryptoGeneratePurls: {};
159
190
  atomFile?: undefined;
160
191
  reachablesSlicesFile?: undefined;
@@ -162,6 +193,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
162
193
  } | {
163
194
  componentPropertiesMap?: undefined;
164
195
  metadataProperties?: undefined;
196
+ workspaceComponent?: undefined;
165
197
  atomFile: any;
166
198
  usagesSlicesFile: any;
167
199
  dataFlowSlicesFile: any;
@@ -174,6 +206,7 @@ export declare function analyzeProject(dbObjMap: Object, options: Object): Promi
174
206
  tempDirOwned: any;
175
207
  userDefinedTypesMap: {};
176
208
  cryptoComponents: any[];
209
+ aiComponents: any;
177
210
  cryptoGeneratePurls: {};
178
211
  openapiSpecFile: any;
179
212
  }>;
@@ -289,7 +322,7 @@ export declare function extractEndpoints(language: string, code: string): string
289
322
  * @param {Object} options Command line options
290
323
  * @returns
291
324
  */
292
- export declare function createEvinseFile(sliceArtefacts: Object, options: Object): any;
325
+ export declare function createEvinseFile(sliceArtefacts: Object, options: Object): Promise<any>;
293
326
  /**
294
327
  * Method to convert dataflow slice into usable callstack frames
295
328
  * Implemented based on the logic proposed here - https://github.com/AppThreat/atom/blob/main/specification/docs/slices.md#data-flow-slice
@@ -1 +1 @@
1
- {"version":3,"file":"evinser.d.ts","sourceRoot":"","sources":["../../../lib/evinser/evinser.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evinser.d.ts","sourceRoot":"","sources":["../../../lib/evinser/evinser.js"],"names":[],"mappings":"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"}