@cdxgen/cdxgen 13.4.0 → 13.6.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 (305) hide show
  1. package/README.md +9 -9
  2. package/bin/cdxgen-secure.js +15 -0
  3. package/bin/cdxgen.js +29 -5
  4. package/bin/evinse.js +8 -0
  5. package/bin/hbom.js +15 -7
  6. package/bin/repl.js +29 -0
  7. package/bin/validate.js +6 -0
  8. package/data/cbomosdb-queries.json +13 -1
  9. package/data/component-tags.json +8 -0
  10. package/data/license-aliases.json +24 -2
  11. package/data/queries-darwin.json +25 -1
  12. package/data/queries-win.json +19 -1
  13. package/data/queries.json +41 -0
  14. package/data/remediations.json +407 -1
  15. package/data/rules/ai-bom.yaml +1 -1
  16. package/data/rules/brotli-decoder.yaml +107 -0
  17. package/data/rules/cbom-security.yaml +235 -4
  18. package/data/rules/go-binaries.yaml +46 -0
  19. package/data/rules/golem-go.yaml +80 -0
  20. package/data/rules/hbom-compliance.yaml +40 -22
  21. package/data/rules/hbom-performance.yaml +7 -1
  22. package/data/rules/host-topology.yaml +1 -1
  23. package/data/rules/obom-runtime.yaml +31 -2
  24. package/data/rules/php-runtime.yaml +143 -0
  25. package/data/rules/vscode-extensions.yaml +75 -0
  26. package/data/spdx-license-list.json +121 -7
  27. package/data/spdx-licenses.json +69 -0
  28. package/data/spdx.schema.json +845 -2
  29. package/lib/audit/index.js +14 -0
  30. package/lib/cli/bomAssembly.js +120 -6
  31. package/lib/cli/cliOptions.js +110 -3
  32. package/lib/cli/index.js +182 -6
  33. package/lib/cli/jsBom.js +153 -64
  34. package/lib/cli/jvmBom.js +363 -66
  35. package/lib/cli/managedBom.js +853 -87
  36. package/lib/cli/nativeBom.js +267 -33
  37. package/lib/core/boundedFile.js +344 -0
  38. package/lib/core/brotliProbe.js +182 -0
  39. package/lib/core/env.js +38 -8
  40. package/lib/core/fs.js +40 -19
  41. package/lib/core/httpClient.js +172 -46
  42. package/lib/core/lockPaths.js +38 -0
  43. package/lib/core/paths.js +24 -1
  44. package/lib/core/processTree.js +5 -0
  45. package/lib/core/projectConfig.js +1 -0
  46. package/lib/core/projectTooling.js +97 -0
  47. package/lib/core/propertySanitizer.js +72 -0
  48. package/lib/core/toolRegistry.js +170 -0
  49. package/lib/ecosystems/cppEvidence.js +263 -106
  50. package/lib/ecosystems/cppIncludeResolver.js +16 -5
  51. package/lib/ecosystems/ecosystems.js +25 -10
  52. package/lib/ecosystems/gemHostProbe.js +301 -0
  53. package/lib/ecosystems/golem.js +550 -6
  54. package/lib/ecosystems/gradleutils.js +858 -244
  55. package/lib/ecosystems/parsers-bazel.js +107 -6
  56. package/lib/ecosystems/parsers-dotnet.js +117 -18
  57. package/lib/ecosystems/parsers-go.js +1090 -367
  58. package/lib/ecosystems/parsers-js.js +505 -22
  59. package/lib/ecosystems/parsers-jvm.js +259 -17
  60. package/lib/ecosystems/parsers-misc.js +438 -64
  61. package/lib/ecosystems/parsers-python.js +100 -12
  62. package/lib/ecosystems/pythonutils.js +128 -2
  63. package/lib/ecosystems/rubyutils.js +544 -34
  64. package/lib/ecosystems/rusi.js +10 -0
  65. package/lib/ecosystems/scalacliutils.js +4 -1
  66. package/lib/ecosystems/scalasem.js +798 -151
  67. package/lib/ecosystems/vendoredCode.js +237 -3
  68. package/lib/ecosystems/venvProbe.js +360 -0
  69. package/lib/evinser/evinser.js +472 -61
  70. package/lib/evinser/swiftsem.js +68 -5
  71. package/lib/helpers/agenticToolutils.js +413 -93
  72. package/lib/helpers/vsixutils.js +1574 -315
  73. package/lib/inventory/agentSkillSpec.js +17 -0
  74. package/lib/inventory/apkInstalledDb.js +243 -0
  75. package/lib/inventory/atomUtils.js +110 -0
  76. package/lib/inventory/auditCategories.js +3 -3
  77. package/lib/inventory/brotliDecoder.js +142 -0
  78. package/lib/inventory/buildToolRateLimit.js +1 -1
  79. package/lib/inventory/cacheDir.js +52 -9
  80. package/lib/inventory/cbomutils.js +56 -7
  81. package/lib/inventory/certificates.js +2371 -0
  82. package/lib/inventory/communityAiConfigParser.js +4 -9
  83. package/lib/inventory/deps.js +41 -4
  84. package/lib/inventory/display.js +200 -3
  85. package/lib/inventory/dosai.js +639 -63
  86. package/lib/inventory/dotnetRuntime.js +217 -0
  87. package/lib/inventory/dynamic.js +45 -3
  88. package/lib/inventory/envcontext.js +475 -18
  89. package/lib/inventory/evidenceUtils.js +447 -23
  90. package/lib/inventory/fetchBatch.js +1 -1
  91. package/lib/inventory/formulationParsers.js +32 -3
  92. package/lib/inventory/goBuildInfo.js +140 -0
  93. package/lib/inventory/gtfobins.js +13 -0
  94. package/lib/inventory/hbom.js +67 -7
  95. package/lib/inventory/hbomAnalysis.js +16 -0
  96. package/lib/inventory/hostRuntimeProbe.js +686 -0
  97. package/lib/inventory/hostTopology.js +21 -0
  98. package/lib/inventory/jvmLocalRepos.js +9 -2
  99. package/lib/inventory/jvmToolEnv.js +29 -0
  100. package/lib/inventory/licenseEnhancer.js +12 -0
  101. package/lib/inventory/mavenCentralMirror.js +534 -0
  102. package/lib/inventory/nodeBuildInfo.js +218 -0
  103. package/lib/inventory/nodeHostProbe.js +202 -0
  104. package/lib/inventory/osPackagePurl.js +244 -0
  105. package/lib/inventory/osPackageResolver.js +271 -87
  106. package/lib/inventory/osinfo.js +79 -31
  107. package/lib/inventory/osqueryTransform.js +114 -5
  108. package/lib/inventory/phpBuildInfo.js +438 -0
  109. package/lib/inventory/phpHostProbe.js +185 -0
  110. package/lib/inventory/rootfsCerts.js +426 -0
  111. package/lib/inventory/rubyBuildInfo.js +972 -0
  112. package/lib/inventory/rubyHostProbe.js +218 -0
  113. package/lib/inventory/scalaCoords.js +4 -3
  114. package/lib/inventory/scalaDedupe.js +440 -0
  115. package/lib/inventory/source.js +256 -5
  116. package/lib/inventory/spdx.js +144 -0
  117. package/lib/inventory/traceRunner.js +5 -1
  118. package/lib/inventory/tracedCrypto.js +129 -0
  119. package/lib/managers/binary.js +866 -186
  120. package/lib/managers/docker.js +245 -12
  121. package/lib/parsers/email.js +277 -0
  122. package/lib/parsers/largeJson.js +62 -13
  123. package/lib/parsers/vscodeExtensionId.js +183 -0
  124. package/lib/server/server.js +198 -2
  125. package/lib/stages/postgen/annotator.js +17 -1
  126. package/lib/stages/postgen/introspection/reflect.js +4 -1
  127. package/lib/stages/postgen/postgen.js +5 -5
  128. package/lib/stages/postgen/ruleEngine.js +71 -6
  129. package/lib/stages/postgen/specVersionCompat.js +30 -0
  130. package/lib/stages/pregen/envAudit.js +1 -0
  131. package/lib/stages/pregen/pregen.js +231 -62
  132. package/lib/validator/bomValidator.js +32 -6
  133. package/lib/validator/generated/runtime.mjs +13 -0
  134. package/lib/validator/generated/validate-1.6.mjs +27 -8
  135. package/lib/validator/generated/validate-1.7.mjs +32 -13
  136. package/lib/validator/generated/validate-2.0.mjs +31 -12
  137. package/lib/validator/index.js +1 -1
  138. package/package.json +19 -18
  139. package/types/bin/cdxgen-secure.d.ts +3 -0
  140. package/types/bin/cdxgen-secure.d.ts.map +1 -0
  141. package/types/bin/repl.d.ts.map +1 -1
  142. package/types/lib/audit/index.d.ts.map +1 -1
  143. package/types/lib/cli/bomAssembly.d.ts +22 -3
  144. package/types/lib/cli/bomAssembly.d.ts.map +1 -1
  145. package/types/lib/cli/cliOptions.d.ts +43 -0
  146. package/types/lib/cli/cliOptions.d.ts.map +1 -1
  147. package/types/lib/cli/index.d.ts.map +1 -1
  148. package/types/lib/cli/jsBom.d.ts +1 -17
  149. package/types/lib/cli/jsBom.d.ts.map +1 -1
  150. package/types/lib/cli/jvmBom.d.ts +20 -0
  151. package/types/lib/cli/jvmBom.d.ts.map +1 -1
  152. package/types/lib/cli/managedBom.d.ts.map +1 -1
  153. package/types/lib/cli/nativeBom.d.ts.map +1 -1
  154. package/types/lib/core/boundedFile.d.ts +70 -0
  155. package/types/lib/core/boundedFile.d.ts.map +1 -0
  156. package/types/lib/core/brotliProbe.d.ts +37 -0
  157. package/types/lib/core/brotliProbe.d.ts.map +1 -0
  158. package/types/lib/core/env.d.ts +22 -2
  159. package/types/lib/core/env.d.ts.map +1 -1
  160. package/types/lib/core/fs.d.ts.map +1 -1
  161. package/types/lib/core/httpClient.d.ts +24 -0
  162. package/types/lib/core/httpClient.d.ts.map +1 -1
  163. package/types/lib/core/lockPaths.d.ts +19 -0
  164. package/types/lib/core/lockPaths.d.ts.map +1 -0
  165. package/types/lib/core/processTree.d.ts +2 -0
  166. package/types/lib/core/processTree.d.ts.map +1 -1
  167. package/types/lib/core/projectConfig.d.ts.map +1 -1
  168. package/types/lib/core/projectTooling.d.ts +41 -0
  169. package/types/lib/core/projectTooling.d.ts.map +1 -0
  170. package/types/lib/core/propertySanitizer.d.ts +26 -0
  171. package/types/lib/core/propertySanitizer.d.ts.map +1 -1
  172. package/types/lib/core/toolRegistry.d.ts +36 -0
  173. package/types/lib/core/toolRegistry.d.ts.map +1 -0
  174. package/types/lib/ecosystems/cppEvidence.d.ts +40 -13
  175. package/types/lib/ecosystems/cppEvidence.d.ts.map +1 -1
  176. package/types/lib/ecosystems/cppIncludeResolver.d.ts +2 -1
  177. package/types/lib/ecosystems/cppIncludeResolver.d.ts.map +1 -1
  178. package/types/lib/ecosystems/ecosystems.d.ts.map +1 -1
  179. package/types/lib/ecosystems/gemHostProbe.d.ts +28 -0
  180. package/types/lib/ecosystems/gemHostProbe.d.ts.map +1 -0
  181. package/types/lib/ecosystems/golem.d.ts +81 -1
  182. package/types/lib/ecosystems/golem.d.ts.map +1 -1
  183. package/types/lib/ecosystems/gradleutils.d.ts +57 -21
  184. package/types/lib/ecosystems/gradleutils.d.ts.map +1 -1
  185. package/types/lib/ecosystems/parsers-bazel.d.ts.map +1 -1
  186. package/types/lib/ecosystems/parsers-dotnet.d.ts +40 -4
  187. package/types/lib/ecosystems/parsers-dotnet.d.ts.map +1 -1
  188. package/types/lib/ecosystems/parsers-go.d.ts +85 -13
  189. package/types/lib/ecosystems/parsers-go.d.ts.map +1 -1
  190. package/types/lib/ecosystems/parsers-js.d.ts +17 -20
  191. package/types/lib/ecosystems/parsers-js.d.ts.map +1 -1
  192. package/types/lib/ecosystems/parsers-jvm.d.ts +28 -2
  193. package/types/lib/ecosystems/parsers-jvm.d.ts.map +1 -1
  194. package/types/lib/ecosystems/parsers-misc.d.ts +37 -58
  195. package/types/lib/ecosystems/parsers-misc.d.ts.map +1 -1
  196. package/types/lib/ecosystems/parsers-python.d.ts +14 -3
  197. package/types/lib/ecosystems/parsers-python.d.ts.map +1 -1
  198. package/types/lib/ecosystems/pythonutils.d.ts +19 -1
  199. package/types/lib/ecosystems/pythonutils.d.ts.map +1 -1
  200. package/types/lib/ecosystems/rubyutils.d.ts +144 -12
  201. package/types/lib/ecosystems/rubyutils.d.ts.map +1 -1
  202. package/types/lib/ecosystems/rusi.d.ts.map +1 -1
  203. package/types/lib/ecosystems/scalacliutils.d.ts.map +1 -1
  204. package/types/lib/ecosystems/scalasem.d.ts.map +1 -1
  205. package/types/lib/ecosystems/vendoredCode.d.ts +26 -0
  206. package/types/lib/ecosystems/vendoredCode.d.ts.map +1 -1
  207. package/types/lib/ecosystems/venvProbe.d.ts +40 -0
  208. package/types/lib/ecosystems/venvProbe.d.ts.map +1 -0
  209. package/types/lib/evinser/evinser.d.ts +88 -8
  210. package/types/lib/evinser/evinser.d.ts.map +1 -1
  211. package/types/lib/evinser/swiftsem.d.ts +10 -0
  212. package/types/lib/evinser/swiftsem.d.ts.map +1 -1
  213. package/types/lib/inventory/agentSkillSpec.d.ts +13 -0
  214. package/types/lib/inventory/agentSkillSpec.d.ts.map +1 -0
  215. package/types/lib/inventory/apkInstalledDb.d.ts +42 -0
  216. package/types/lib/inventory/apkInstalledDb.d.ts.map +1 -0
  217. package/types/lib/inventory/atomUtils.d.ts +33 -0
  218. package/types/lib/inventory/atomUtils.d.ts.map +1 -1
  219. package/types/lib/inventory/brotliDecoder.d.ts +58 -0
  220. package/types/lib/inventory/brotliDecoder.d.ts.map +1 -0
  221. package/types/lib/inventory/cacheDir.d.ts +12 -4
  222. package/types/lib/inventory/cacheDir.d.ts.map +1 -1
  223. package/types/lib/inventory/cbomutils.d.ts +17 -0
  224. package/types/lib/inventory/cbomutils.d.ts.map +1 -1
  225. package/types/lib/inventory/certificates.d.ts +205 -0
  226. package/types/lib/inventory/certificates.d.ts.map +1 -0
  227. package/types/lib/inventory/communityAiConfigParser.d.ts.map +1 -1
  228. package/types/lib/inventory/deps.d.ts +2 -1
  229. package/types/lib/inventory/deps.d.ts.map +1 -1
  230. package/types/lib/inventory/display.d.ts +18 -0
  231. package/types/lib/inventory/display.d.ts.map +1 -1
  232. package/types/lib/inventory/dosai.d.ts +162 -7
  233. package/types/lib/inventory/dosai.d.ts.map +1 -1
  234. package/types/lib/inventory/dotnetRuntime.d.ts +44 -0
  235. package/types/lib/inventory/dotnetRuntime.d.ts.map +1 -0
  236. package/types/lib/inventory/dynamic.d.ts +6 -1
  237. package/types/lib/inventory/dynamic.d.ts.map +1 -1
  238. package/types/lib/inventory/envcontext.d.ts +92 -8
  239. package/types/lib/inventory/envcontext.d.ts.map +1 -1
  240. package/types/lib/inventory/evidenceUtils.d.ts +29 -10
  241. package/types/lib/inventory/evidenceUtils.d.ts.map +1 -1
  242. package/types/lib/inventory/formulationParsers.d.ts.map +1 -1
  243. package/types/lib/inventory/goBuildInfo.d.ts +10 -0
  244. package/types/lib/inventory/goBuildInfo.d.ts.map +1 -0
  245. package/types/lib/inventory/gtfobins.d.ts.map +1 -1
  246. package/types/lib/inventory/hbom.d.ts.map +1 -1
  247. package/types/lib/inventory/hbomAnalysis.d.ts +10 -0
  248. package/types/lib/inventory/hbomAnalysis.d.ts.map +1 -1
  249. package/types/lib/inventory/hostRuntimeProbe.d.ts +44 -0
  250. package/types/lib/inventory/hostRuntimeProbe.d.ts.map +1 -0
  251. package/types/lib/inventory/hostTopology.d.ts.map +1 -1
  252. package/types/lib/inventory/jvmToolEnv.d.ts +12 -0
  253. package/types/lib/inventory/jvmToolEnv.d.ts.map +1 -1
  254. package/types/lib/inventory/licenseEnhancer.d.ts.map +1 -1
  255. package/types/lib/inventory/mavenCentralMirror.d.ts +170 -0
  256. package/types/lib/inventory/mavenCentralMirror.d.ts.map +1 -0
  257. package/types/lib/inventory/nodeBuildInfo.d.ts +95 -0
  258. package/types/lib/inventory/nodeBuildInfo.d.ts.map +1 -0
  259. package/types/lib/inventory/nodeHostProbe.d.ts +15 -0
  260. package/types/lib/inventory/nodeHostProbe.d.ts.map +1 -0
  261. package/types/lib/inventory/osPackagePurl.d.ts +99 -0
  262. package/types/lib/inventory/osPackagePurl.d.ts.map +1 -0
  263. package/types/lib/inventory/osPackageResolver.d.ts +44 -2
  264. package/types/lib/inventory/osPackageResolver.d.ts.map +1 -1
  265. package/types/lib/inventory/osinfo.d.ts +31 -6
  266. package/types/lib/inventory/osinfo.d.ts.map +1 -1
  267. package/types/lib/inventory/osqueryTransform.d.ts +51 -0
  268. package/types/lib/inventory/osqueryTransform.d.ts.map +1 -1
  269. package/types/lib/inventory/phpBuildInfo.d.ts +142 -0
  270. package/types/lib/inventory/phpBuildInfo.d.ts.map +1 -0
  271. package/types/lib/inventory/phpHostProbe.d.ts +35 -0
  272. package/types/lib/inventory/phpHostProbe.d.ts.map +1 -0
  273. package/types/lib/inventory/rootfsCerts.d.ts +27 -0
  274. package/types/lib/inventory/rootfsCerts.d.ts.map +1 -0
  275. package/types/lib/inventory/rubyBuildInfo.d.ts +271 -0
  276. package/types/lib/inventory/rubyBuildInfo.d.ts.map +1 -0
  277. package/types/lib/inventory/rubyHostProbe.d.ts +47 -0
  278. package/types/lib/inventory/rubyHostProbe.d.ts.map +1 -0
  279. package/types/lib/inventory/source.d.ts +38 -0
  280. package/types/lib/inventory/source.d.ts.map +1 -1
  281. package/types/lib/inventory/spdx.d.ts +15 -0
  282. package/types/lib/inventory/spdx.d.ts.map +1 -1
  283. package/types/lib/inventory/traceRunner.d.ts +4 -1
  284. package/types/lib/inventory/traceRunner.d.ts.map +1 -1
  285. package/types/lib/inventory/tracedCrypto.d.ts +22 -0
  286. package/types/lib/inventory/tracedCrypto.d.ts.map +1 -1
  287. package/types/lib/managers/binary.d.ts +10 -0
  288. package/types/lib/managers/binary.d.ts.map +1 -1
  289. package/types/lib/managers/docker.d.ts +24 -0
  290. package/types/lib/managers/docker.d.ts.map +1 -1
  291. package/types/lib/parsers/email.d.ts +19 -0
  292. package/types/lib/parsers/email.d.ts.map +1 -0
  293. package/types/lib/parsers/largeJson.d.ts +17 -3
  294. package/types/lib/parsers/largeJson.d.ts.map +1 -1
  295. package/types/lib/server/server.d.ts +8 -0
  296. package/types/lib/server/server.d.ts.map +1 -1
  297. package/types/lib/stages/postgen/annotator.d.ts.map +1 -1
  298. package/types/lib/stages/postgen/introspection/reflect.d.ts.map +1 -1
  299. package/types/lib/stages/postgen/ruleEngine.d.ts +7 -4
  300. package/types/lib/stages/postgen/ruleEngine.d.ts.map +1 -1
  301. package/types/lib/stages/postgen/specVersionCompat.d.ts.map +1 -1
  302. package/types/lib/stages/pregen/envAudit.d.ts.map +1 -1
  303. package/types/lib/stages/pregen/pregen.d.ts +26 -9
  304. package/types/lib/stages/pregen/pregen.d.ts.map +1 -1
  305. package/types/lib/validator/bomValidator.d.ts.map +1 -1
@@ -191,6 +191,14 @@ export declare function toGemModuleNames(name: any): string[];
191
191
  * @returns {Array<string>} List of module names
192
192
  */
193
193
  export declare function collectGemModuleNames(rubyCommand: string, bundleCommand: string, gemHome: string, gemName: string, filePath: string): Array<string>;
194
+ /**
195
+ * Whether a gemspec is a default gem, one that ships with Ruby: RubyGems
196
+ * keeps them under `specifications/default/`.
197
+ *
198
+ * @param {string} gemspecFile path of the gemspec, either separator
199
+ * @returns {boolean}
200
+ */
201
+ export declare function isDefaultGemspecPath(gemspecFile: string): boolean;
194
202
  /**
195
203
  * Method to parse Gemspec file contents.
196
204
  *
@@ -310,33 +318,157 @@ export declare function addRubyGemsDistributionUrls(pkgList: any[]): any[];
310
318
  */
311
319
  export declare function rubyRequirementToVers(requirements: string[]): string | null | undefined;
312
320
  /**
313
- * Describe the Ruby runtime the gems require as one external `platform`
321
+ * Read the Ruby a `.ruby-version` file selects, as rbenv, chruby, rvm, asdf
322
+ * and mise read it: `3.3.6`, `ruby-3.3.6`, `3.3`, `jruby-9.4.8.0`,
323
+ * `truffleruby-24.1.0`, `truffleruby+graalvm-24.1.0`. Only the first word
324
+ * counts; comments and blank lines are skipped.
325
+ *
326
+ * @param {string} text file contents
327
+ * @returns {{engine: string, version?: string, requirement?: string, source: string}|undefined}
328
+ */
329
+ export declare function parseRubyVersionFile(text: string): {
330
+ engine: string;
331
+ version?: string;
332
+ requirement?: string;
333
+ source: string;
334
+ } | undefined;
335
+ /**
336
+ * Read the Ruby an asdf `.tool-versions` file selects: the first version on
337
+ * the `ruby` line, e.g. `ruby 3.3.6 3.2.2`.
338
+ *
339
+ * @param {string} text file contents
340
+ * @returns {{engine: string, version?: string, requirement?: string, source: string}|undefined}
341
+ */
342
+ export declare function parseToolVersionsRuby(text: string): {
343
+ engine: string;
344
+ version?: string;
345
+ requirement?: string;
346
+ source: string;
347
+ } | undefined;
348
+ /**
349
+ * Read the Ruby a mise configuration selects from its `[tools]` table:
350
+ * `ruby = "3.3.6"`, `ruby = ["3.3.6", "3.2"]` or `ruby = { version = "3.3.6" }`.
351
+ *
352
+ * @param {string} text mise.toml contents
353
+ * @param {string} [source="mise.toml"] the file name, for the result
354
+ * @returns {{engine: string, version?: string, requirement?: string, source: string}|undefined}
355
+ */
356
+ export declare function parseMiseRuby(text: string, source?: string): {
357
+ engine: string;
358
+ version?: string;
359
+ requirement?: string;
360
+ source: string;
361
+ } | undefined;
362
+ /**
363
+ * Read the `ruby` directive of a Gemfile: `ruby "3.3.6"`, `ruby "~> 3.3"`,
364
+ * `ruby "3.1.4", engine: "jruby", engine_version: "9.4.8.0"`, or
365
+ * `ruby file: ".ruby-version"`. The Gemfile is never evaluated, so a
366
+ * directive built from an expression, such as `ruby RUBY_VERSION`, says
367
+ * nothing.
368
+ *
369
+ * @param {string} text Gemfile contents
370
+ * @returns {{engine: string, version?: string, requirement?: string,
371
+ * file?: string, source: string}|undefined}
372
+ */
373
+ export declare function parseGemfileRubyDirective(text: string): {
374
+ engine: string;
375
+ version?: string;
376
+ requirement?: string;
377
+ file?: string;
378
+ source: string;
379
+ } | undefined;
380
+ /**
381
+ * Read the `RUBY VERSION` section of a Gemfile.lock, which Bundler writes when
382
+ * the Gemfile has a `ruby` directive: `ruby 3.3.6p108`, `ruby 3.4.0p-1` for a
383
+ * pre-release, or `ruby 3.1.4p0 (jruby 9.4.8.0)` for another engine.
384
+ *
385
+ * @param {string} text Gemfile.lock contents
386
+ * @returns {{engine: string, version: string, patchlevel?: string,
387
+ * rubyVersion?: string, source: string}|undefined}
388
+ */
389
+ export declare function parseGemfileLockRubyVersion(text: string): {
390
+ engine: string;
391
+ version: string;
392
+ patchlevel?: string;
393
+ rubyVersion?: string;
394
+ source: string;
395
+ } | undefined;
396
+ /**
397
+ * Collect every Ruby a project directory declares, from the Gemfile.lock
398
+ * `RUBY VERSION` section, `.ruby-version`, `.tool-versions`, mise.toml and the
399
+ * Gemfile `ruby` directive. Each declaration names its source.
400
+ *
401
+ * @param {string} projectPath project directory
402
+ * @param {string} [lockData] Gemfile.lock contents, when already read
403
+ * @returns {Array<{engine: string, version?: string, requirement?: string,
404
+ * patchlevel?: string, source: string, path: string}>}
405
+ */
406
+ export declare function collectProjectRubyDeclarations(projectPath: string, lockData?: string): Array<{
407
+ engine: string;
408
+ version?: string;
409
+ requirement?: string;
410
+ patchlevel?: string;
411
+ source: string;
412
+ path: string;
413
+ }>;
414
+ /**
415
+ * Settle the Ruby a project runs on from its declarations: the exact version
416
+ * of the most authoritative source that has one, and the requirements of the
417
+ * sources that only constrain it.
418
+ *
419
+ * @param {Array<Object>} declarations result of collectProjectRubyDeclarations
420
+ * @returns {{engine: string, version?: string, patchlevel?: string,
421
+ * prerelease?: boolean, rubyVersion?: string, source?: string,
422
+ * requirements: string[], conflicts: string[]}|undefined}
423
+ */
424
+ export declare function resolveProjectRuby(declarations: Array<Object>): {
425
+ engine: string;
426
+ version?: string;
427
+ patchlevel?: string;
428
+ prerelease?: boolean;
429
+ rubyVersion?: string;
430
+ source?: string;
431
+ requirements: string[];
432
+ conflicts: string[];
433
+ } | undefined;
434
+ /**
435
+ * Describe the Ruby runtime of a project as one external `platform`
314
436
  * component, and make the components that declare a `required_ruby_version`
315
437
  * depend on it (discussion 4409).
316
438
  *
317
- * The component stands for the Ruby the bundle as a whole runs on, so its
318
- * `versionRange` is the intersection of every requirement that could be read,
319
- * in the `vers` syntax CycloneDX mandates for the field. Each component's own
320
- * requirement stays in its `cdx:gem:rubyVersionSpecifiers` property. One
321
- * runtime component per distinct requirement would describe the same
322
- * interpreter many times over: a modest bundle spells `>= 2.x` a dozen ways.
439
+ * When the project pins a Ruby (Gemfile.lock `RUBY VERSION`, `.ruby-version`,
440
+ * `.tool-versions`, mise or the Gemfile `ruby` directive), the component names
441
+ * that version, `pkg:generic/ruby@3.3.6`, with the CPE a scanner matches
442
+ * interpreter advisories by. The requirements of the gems then stay in the
443
+ * `cdx:ruby:requiredVersionRange` property, since CycloneDX allows a
444
+ * `versionRange` only on a component without a version.
445
+ *
446
+ * Without a pin, the component stands for the Ruby the bundle as a whole runs
447
+ * on, so its `versionRange` is the intersection of every requirement that
448
+ * could be read, in the `vers` syntax CycloneDX mandates for the field. Each
449
+ * component's own requirement stays in its `cdx:gem:rubyVersionSpecifiers`
450
+ * property. One runtime component per distinct requirement would describe the
451
+ * same interpreter many times over: a modest bundle spells `>= 2.x` a dozen
452
+ * ways.
323
453
  *
324
454
  * The type is `platform`, the CycloneDX type for a runtime environment that
325
455
  * interprets software, and the one cdxgen gives the Ruby it finds in the
326
- * build environment. The purl names no version, since a range is not one.
456
+ * build environment. A range is not a version, so an unpinned purl names none.
327
457
  *
328
- * `isExternal` and `versionRange` are CycloneDX 1.7 fields, and without them
329
- * the component would claim the product bundles its interpreter, so the caller
330
- * decides whether the BOM should carry it at all.
458
+ * `isExternal` and `versionRange` are CycloneDX 1.7 fields. A pinned runtime
459
+ * also carries the `cdx:ruby:isExternal` property, which says the interpreter
460
+ * comes with the deployment environment in a BOM of an older spec; the caller
461
+ * decides whether such a BOM should carry an unpinned runtime at all.
331
462
  *
332
463
  * @param {Array} pkgList Components
333
464
  * @param {object} parentComponent The metadata.component, when the project is
334
465
  * itself a gem
335
466
  * @param {Array} dependencies Dependency edges
467
+ * @param {object} [projectRuby] result of resolveProjectRuby
336
468
  * @returns {{pkgList: Array, dependencies: Array}} Components and edges with
337
469
  * the runtime component added
338
470
  */
339
- export declare function addRubyRuntimeComponent(pkgList: any[], parentComponent: object, dependencies: any[]): {
471
+ export declare function addRubyRuntimeComponent(pkgList: any[], parentComponent: object, dependencies: any[], projectRuby?: object): {
340
472
  pkgList: any[];
341
473
  dependencies: any[];
342
474
  };
@@ -1 +1 @@
1
- {"version":3,"file":"rubyutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rubyutils.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rubyutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rubyutils.js"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rusi.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rusi.js"],"names":[],"mappings":"AAoWA;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,GAHpC,MAGyC,GAFvC,MAAM,GAAC,SAAS,CAW5B;AAsZD;;;;;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,CAgEnB;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"}
1
+ {"version":3,"file":"rusi.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/rusi.js"],"names":[],"mappings":"AAqWA;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,GAHpC,MAGyC,GAFvC,MAAM,GAAC,SAAS,CAW5B;AAsZD;;;;;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,CAyEnB;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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scalacliutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/scalacliutils.js"],"names":[],"mappings":"AAwCA;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EANvC,MAMuC,GALrC;IAAE,YAAY,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAyD5G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAL1B,MAK0B,EAAE,OAAO,EAJnC,MAImC,EAAE,UAAU,EAH/C,MAG+C,GAF7C,MAAM,GAAC,IAAI,CAuDvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAHxC,MAGwC,GAFtC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAC,IAAI,CAkCjE;AAsBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EALtC,MAKsC,EAAE,OAAO,GAJ/C,MAIoD,GAHlD,MAAM,EAAE,CAmGpB"}
1
+ {"version":3,"file":"scalacliutils.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/scalacliutils.js"],"names":[],"mappings":"AA0CA;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EANvC,MAMuC,GALrC;IAAE,YAAY,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,GAAC,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAyD5G;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAL1B,MAK0B,EAAE,OAAO,EAJnC,MAImC,EAAE,UAAU,EAH/C,MAG+C,GAF7C,MAAM,GAAC,IAAI,CAuDvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAHxC,MAGwC,GAFtC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAC,IAAI,CAkCjE;AAsBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EALtC,MAKsC,EAAE,OAAO,GAJ/C,MAIoD,GAHlD,MAAM,EAAE,CAoGpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"scalasem.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/scalasem.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scalasem.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/scalasem.js"],"names":[],"mappings":"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"}
@@ -14,6 +14,32 @@
14
14
  * @returns {boolean}
15
15
  */
16
16
  export declare function isLicenseFileName(name: string): boolean;
17
+ /**
18
+ * Read the version of a vendored directory from the library's own version
19
+ * header, else from its CMake project() call.
20
+ *
21
+ * @param {string} dir Absolute path of the vendored directory
22
+ * @returns {{version?: string, source?: string, cpe?: string, properties: Object[]}|undefined}
23
+ * undefined when nothing is known, and without a version when only the fix
24
+ * marker could be read
25
+ */
26
+ export declare function vendoredVersionOf(dir: string): {
27
+ version?: string;
28
+ source?: string;
29
+ cpe?: string;
30
+ properties: Object[];
31
+ } | undefined;
32
+ /**
33
+ * Whether a file lies under a directory conventionally holding another
34
+ * project's code (`third_party/`, `vendor/`, `external/`) below the scan root.
35
+ * Build files there belong to the copied project: building them runs that
36
+ * project's build, and their dependencies are its build tooling.
37
+ *
38
+ * @param {string} root Project scan root
39
+ * @param {string} file File path
40
+ * @returns {boolean}
41
+ */
42
+ export declare function isInVendoredDir(root: string, file: string): boolean;
17
43
  /**
18
44
  * Find the directories of a project that carry code under a license other
19
45
  * than the project's.
@@ -1 +1 @@
1
- {"version":3,"file":"vendoredCode.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/vendoredCode.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2BH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAH3B,MAG2B,GAFzB,OAAO,CAkBnB;AAkBD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAP1B,MAO0B,EAAE,OAAO,GANnC,MAMwC,EAAE,WAAW,AAL7D,CAEA,EAFQ,MAAM,EAKoD,GAHxD;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAC,CAwElD"}
1
+ {"version":3,"file":"vendoredCode.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/vendoredCode.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2BH;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAH3B,MAG2B,GAFzB,OAAO,CAkBnB;AAuJD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAL1B,MAK0B,GAJxB;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAC,GAAC,SAAS,CAuC7F;AAcD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAJzB,MAIyB,EAAE,IAAI,EAH/B,MAG+B,GAF7B,OAAO,CAWnB;AAMD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAP1B,MAO0B,EAAE,OAAO,GANnC,MAMwC,EAAE,WAAW,AAL7D,CAEA,EAFQ,MAAM,EAKoD,GAHxD;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAC,CA0FlD"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Find the virtual environments and pyenv interpreters under the fixed
3
+ * places of a root.
4
+ *
5
+ * @param {string} rootPath root directory
6
+ * @param {string} platform `linux` or `darwin`
7
+ * @returns {{path: string, kind: string}[]} environments, at most MAX_ENVIRONMENTS
8
+ */
9
+ export declare function findPythonEnvironments(rootPath: string, platform: string): {
10
+ path: string;
11
+ kind: string;
12
+ }[];
13
+ /**
14
+ * Inventory the packages installed in the virtual environments and pyenv
15
+ * interpreters of a host. One component per distinct name and version, with
16
+ * an occurrence for each dist-info directory it was found in, so no host path
17
+ * reaches a purl.
18
+ *
19
+ * @param {Object} [options] options
20
+ * @param {string} [options.rootPath="/"] root directory; tests point it at a built tree
21
+ * @param {string} [options.platform] `linux` or `darwin`
22
+ * @returns {Object[]} pypi components
23
+ */
24
+ export declare function probeHostPythonEnvironments(options?: {
25
+ rootPath?: string;
26
+ platform?: string;
27
+ }): Object[];
28
+ /**
29
+ * Add the packages of the host's Python environments to an OBOM's component
30
+ * list. A package osquery already listed from the interpreter's own
31
+ * site-packages keeps its component; the environment's dist-info becomes one
32
+ * more occurrence of it, and its cdx:python:environment property says where
33
+ * else it is installed.
34
+ *
35
+ * @param {Object[]} components OBOM components
36
+ * @param {Object[]} envPackages result of probeHostPythonEnvironments
37
+ * @returns {Object[]} the components, with the environment packages merged in
38
+ */
39
+ export declare function mergeHostPythonEnvironmentPackages(components: Object[], envPackages: Object[]): Object[];
40
+ //# sourceMappingURL=venvProbe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"venvProbe.d.ts","sourceRoot":"","sources":["../../../lib/ecosystems/venvProbe.js"],"names":[],"mappings":"AAoHA;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAJpC,MAIoC,EAAE,QAAQ,EAH9C,MAG8C,GAF5C;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,EAAE,CAkD1C;AA8BD;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,AALhD,CAGA,EAFA;IAAyB,QAAQ,AAAjC,CACA,EADQ,MAAM,CACd;IAAyB,QAAQ,AAAjC,CACA,EADQ,MAAM,CACd;CAEqD,GAF3C,MAAM,EAAE,CAkGpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kCAAkC,CAAC,UAAU,EAJlD,MAAM,EAI4C,EAAE,WAAW,EAH/D,MAAM,EAGyD,GAF7D,MAAM,EAAE,CAuCpB"}
@@ -187,6 +187,31 @@ export declare function loadReusableSemanticsSlice(language: string, slicesFile:
187
187
  * @returns {Object} The target map.
188
188
  */
189
189
  export declare function mergeServiceDefinitions(target: Object, source: Object): Object;
190
+ /**
191
+ * Collect the services of a Go project for the golem evidence path (#4498).
192
+ *
193
+ * Two sources are kept and merged by service name, the way the Scala path
194
+ * merges a user-provided spec into its report's services. They roll services
195
+ * up differently — golem per server, OpenAPI per path and method — so a
196
+ * route both name appears under both entries:
197
+ *
198
+ * - the golem report itself, whose `services[]` section rolls the registered
199
+ * routes up per server (a gin engine, a net/http listener) with methods and
200
+ * frameworks, and the outbound hosts it calls into `kind: "external"`
201
+ * services flagged as trust-boundary crossings;
202
+ * - an OpenAPI document, either the one `--openapi-spec-file` names or the
203
+ * `openapi.json` an earlier `atom-tools convert -t go` left in the repo,
204
+ * which is reused when present so `golem`/`atom-tools` and `cdxgen` can be
205
+ * run as separate steps.
206
+ *
207
+ * @param {object|null|undefined} golemReport Parsed golem analysis report,
208
+ * when one was produced; a missing or `null` report adds no services.
209
+ * @param {string} dirPath Project directory the report was produced from.
210
+ * @param {Object} options Command line options.
211
+ * @param {Object} [servicesMap={}] Service map to populate.
212
+ * @returns {Object} The service map
213
+ */
214
+ export declare function collectGoServices(golemReport: object | null | undefined, dirPath: string, options?: Object, servicesMap?: Object): Object;
190
215
  /**
191
216
  * Function to analyze the project
192
217
  *
@@ -392,14 +417,7 @@ export declare function isFilterableType(language: string, userDefinedTypesMap:
392
417
  * @returns {void}
393
418
  */
394
419
  export declare function detectServicesFromOpenAPI(_language: string, openapiSpecFile: string, servicesMap: Object): void;
395
- /**
396
- * Method to detect services from annotation objects in the usage slice
397
- *
398
- * @param {string} language Application language
399
- * @param {Array} slice Usages array for each objectSlice
400
- * @param {Object} servicesMap Existing service map
401
- */
402
- export declare function detectServicesFromUsages(language: string, slice: any[], servicesMap?: Object): never[] | undefined;
420
+ export declare function detectServicesFromUsages(language: any, slice: any, servicesMap?: {}): never[] | undefined;
403
421
  /**
404
422
  * Method to detect services from user defined types in the usage slice
405
423
  *
@@ -432,6 +450,35 @@ export declare function constructServiceName(_language: string, slice: Object):
432
450
  * @returns {string[]|undefined} Array of endpoint paths or `undefined` when none are found
433
451
  */
434
452
  export declare function extractEndpoints(language: string, code: string): string[] | undefined;
453
+ /**
454
+ * Key naming the package a purl refers to, independent of its version,
455
+ * qualifiers and subpath. Namespace and name are the decoded purl segments,
456
+ * so an encoded scope (`%40angular/common`) keys like a plain one.
457
+ *
458
+ * @param {string} purl Purl string
459
+ * @returns {string|undefined} `type/namespace/name`, or undefined for a non-purl
460
+ */
461
+ export declare function versionlessPurlKey(purl: string): string | undefined;
462
+ /**
463
+ * Index the data-flow frames recorded under versionless flow purls by
464
+ * {@link versionlessPurlKey}. A flow purl without a version attaches to every
465
+ * BOM component of the same package name, whatever its version (maintainer
466
+ * decision, 2026-10-27); chen leaves the version off exactly when it cannot
467
+ * pick one between apps that pin the package differently.
468
+ *
469
+ * @param {Object} dataFlowFrames Frames keyed by flow purl
470
+ * @returns {Object} Frames keyed by versionless purl key
471
+ */
472
+ export declare function indexVersionlessPurls(dataFlowFrames: Object): Object;
473
+ /**
474
+ * Index the crypto generate pools recorded under versionless flow purls by
475
+ * {@link versionlessPurlKey}, the crypto counterpart of
476
+ * {@link indexVersionlessPurls}.
477
+ *
478
+ * @param {Object} cryptoGeneratePurls Algorithm bom-refs keyed by flow purl
479
+ * @returns {Object} Algorithm bom-ref sets keyed by versionless purl key
480
+ */
481
+ export declare function indexVersionlessCrypto(cryptoGeneratePurls: Object): Object;
435
482
  /**
436
483
  * Method to create the SBOM with evidence file called evinse file.
437
484
  *
@@ -501,4 +548,37 @@ export declare function simplifyType(typeFullName: string): string;
501
548
  * @returns {string|undefined} Enclosing class type or `undefined` when it cannot be resolved
502
549
  */
503
550
  export declare function getClassTypeFromSignature(language: string, typeFullName: string): string | undefined;
551
+ /**
552
+ * npm package name of a JavaScript module specifier: `@scope/pkg/sub` -> `@scope/pkg`,
553
+ * `lodash/fp` -> `lodash`. Node.js builtins (`node:fs`, `fs`) are not packages.
554
+ *
555
+ * @param {string} module module specifier
556
+ * @returns {string|undefined} package name
557
+ */
558
+ export declare function jsPackageOfModule(module: string): string | undefined;
559
+ /**
560
+ * Attribute a JavaScript usage's module-qualified entries to the packages providing them.
561
+ *
562
+ * Each call entry with a `module` is a use of that module's package at the call's line. When
563
+ * the slice's object is an import binding (defined by a require/import naming the module),
564
+ * every call the object takes part in is a use of that package too.
565
+ *
566
+ * @param {Object} ausage usage entry of an object slice
567
+ * @param {string} fileName file of the slice
568
+ * @param {Object} purlImportsMap purl -> imported modules and symbols
569
+ * @param {Object} purlLocationMap purl -> Set of `file#line`
570
+ */
571
+ export declare function attributeJsModules(ausage: Object, fileName: string, purlImportsMap: Object, purlLocationMap: Object): void;
572
+ /**
573
+ * Attribute a callsites slice's records to the packages providing their modules.
574
+ *
575
+ * Each record of `{"callsites": [...]}` (atom `callsites` command) is one external use site
576
+ * carrying its own file and line; the record is an occurrence of every purl whose package
577
+ * matches the record's module.
578
+ *
579
+ * @param {Object} callsitesSlice callsites slice with a `callsites` array
580
+ * @param {Object} purlImportsMap purl -> imported modules and symbols
581
+ * @param {Object} purlLocationMap purl -> Set of `file#line`
582
+ */
583
+ export declare function attributeJsCallsites(callsitesSlice: Object, purlImportsMap: Object, purlLocationMap: Object): void;
504
584
  //# sourceMappingURL=evinser.d.ts.map
@@ -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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"}
@@ -106,6 +106,16 @@ export declare function verboseBuild(basePath: string): undefined | string;
106
106
  * @returns {Array<String>} Sanitized compiler arguments
107
107
  */
108
108
  export declare function sanitizeSwiftModuleArgs(tokens: Array<string>): Array<string>;
109
+ /**
110
+ * Remove the arguments that would make SourceKit load code named by the
111
+ * project. A `.build` directory that cdxgen did not create is project content,
112
+ * so the compiler arguments read from it are cleaned this way whenever the
113
+ * project's own tooling may not run.
114
+ *
115
+ * @param {Array<String>} args Sanitized compiler arguments
116
+ * @returns {Array<String>} Arguments without plugin and clang pass-through flags
117
+ */
118
+ export declare function withoutSwiftPluginArgs(args: Array<string>): Array<string>;
109
119
  /**
110
120
  * Extract the per-module compiler invocations printed by a verbose swift
111
121
  * build.
@@ -1 +1 @@
1
- {"version":3,"file":"swiftsem.d.ts","sourceRoot":"","sources":["../../../lib/evinser/swiftsem.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swiftsem.d.ts","sourceRoot":"","sources":["../../../lib/evinser/swiftsem.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Whether the frontmatter of a SKILL.md satisfies the open Agent Skills
3
+ * constraints (agentskills.io): a name of 1-64 lowercase letters, digits and
4
+ * hyphens, and a description of 1-1024 characters.
5
+ *
6
+ * @param {{name?: unknown, description?: unknown}|undefined} metadata Frontmatter values
7
+ * @returns {boolean} true when both constraints hold
8
+ */
9
+ export declare function isAgentSkillSpecValid(metadata: {
10
+ name?: unknown;
11
+ description?: unknown;
12
+ } | undefined): boolean;
13
+ //# sourceMappingURL=agentSkillSpec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentSkillSpec.d.ts","sourceRoot":"","sources":["../../../lib/inventory/agentSkillSpec.js"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAHnC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAC,GAAC,SAGL,GAFjC,OAAO,CAUnB"}
@@ -0,0 +1,42 @@
1
+ /** The database, or the packages it lists, past these is unreadable rather than read in part. */
2
+ export declare const MAX_APK_DATABASE_BYTES: number;
3
+ export declare const MAX_APK_PACKAGES = 100000;
4
+ /** Where apk keeps the installed database, relative to the root, in the order they are tried. */
5
+ export declare const APK_INSTALLED_DB_PATHS: string[];
6
+ /**
7
+ * Read the packages of the apk installed database.
8
+ *
9
+ * @param {Object} [options] Read options
10
+ * @param {string} [options.rootPath="/"] Directory the database paths hang off;
11
+ * tests point it at a built tree
12
+ * @param {string} [options.databaseFile] Read this file instead of looking
13
+ * under `rootPath`
14
+ * @param {Set<string>} [options.wantedFiles] Absolute paths whose owner is
15
+ * wanted. A package comes back with the ones it owns in `files`; the other
16
+ * files of a package are only counted, so a large database stays small.
17
+ * @param {number} [options.maxBytes] Largest database to read, 64 MiB by default
18
+ * @param {number} [options.maxPackages] Most packages to accept, 100000 by default
19
+ * @param {string} [options.platform] `linux` by default for the process; an apk
20
+ * database exists on Linux only
21
+ * @returns {{state: string, path?: string, packages: Object[], malformed: number}}
22
+ * `state` is `ok`, `absent` (no database, or not Linux), `unreadable` (a
23
+ * database that could not be read in full) or `skipped` (a dry run).
24
+ * `malformed` counts the records left out for having no name or version.
25
+ * Each package has `name`, `version` and `fileCount`, `files`, and, when the
26
+ * record has them, `arch`, `origin`, `maintainer`, `license`, `url` and
27
+ * `description`.
28
+ */
29
+ export declare function readApkInstalledDb(options?: {
30
+ rootPath?: string;
31
+ databaseFile?: string;
32
+ wantedFiles?: Set<string>;
33
+ maxBytes?: number;
34
+ maxPackages?: number;
35
+ platform?: string;
36
+ }): {
37
+ state: string;
38
+ path?: string;
39
+ packages: Object[];
40
+ malformed: number;
41
+ };
42
+ //# sourceMappingURL=apkInstalledDb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apkInstalledDb.d.ts","sourceRoot":"","sources":["../../../lib/inventory/apkInstalledDb.js"],"names":[],"mappings":"AA6BA,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,QAAmB,CAAC;AACvD,eAAO,MAAM,gBAAgB,SAAS,CAAC;AAEvC,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,UAIlC,CAAC;AAiHF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,AApBvC,CAYA,EAXA;IAAyB,QAAQ,AAAjC,CAEA,EAFQ,MAAM,CAEd;IAAyB,YAAY,AAArC,CAEA,EAFQ,MAAM,CAEd;IAA8B,WAAW,AAAzC,CAGA,EAHQ,GAAG,CAAC,MAAM,CAAC,CAGnB;IAAyB,QAAQ,AAAjC,CACA,EADQ,MAAM,CACd;IAAyB,WAAW,AAApC,CACA,EADQ,MAAM,CACd;IAAyB,QAAQ,AAAjC,CAEA,EAFQ,MAAM,CAEd;CAQ4C,GARlC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CA4EjF"}
@@ -49,6 +49,13 @@ export declare function splitAtomCommand(command: string): [string, string | und
49
49
  * @returns {Set<string>} Supported keys
50
50
  */
51
51
  export declare function atomFrontendArgKeys(language: string): Set<string>;
52
+ /**
53
+ * The options the installed atom accepts, as `atom --help` lists them. Asked
54
+ * once per atom command. An atom that fails to start accepts none.
55
+ *
56
+ * @returns {Set<string>} Supported options, such as `--bom-file`
57
+ */
58
+ export declare function atomOptions(): Set<string>;
52
59
  /**
53
60
  * The `--frontend-args` atom takes for a C/C++ language: the project's
54
61
  * compilation database, when there is one and the installed atom reads it
@@ -61,6 +68,32 @@ export declare function atomFrontendArgKeys(language: string): Set<string>;
61
68
  * @returns {string[]} Arguments to add to the atom command
62
69
  */
63
70
  export declare function atomCompileCommandsArgs(src: string, language: string, options?: Object): string[];
71
+ /**
72
+ * The `--bom-file` a reachables slice takes package purls from: the BOM evinse
73
+ * annotates. atom would otherwise only find a BOM saved as `bom.json` inside
74
+ * the scanned directory, so a BOM written anywhere else gave every reachable
75
+ * flow no purl. An atom without `--bom-file` is given the arguments it has
76
+ * always been given, and still reads a `bom.json` in the scanned directory.
77
+ *
78
+ * @param {string} sliceType atom slice command
79
+ * @param {Object} options CLI options, for `input`
80
+ * @returns {string[]} Arguments to add to the atom command
81
+ */
82
+ export declare function atomBomFileArgs(sliceType: string, options?: Object): string[];
83
+ /**
84
+ * The arguments that stop atom's Java frontend from running the scanned
85
+ * project's build. In its default delombok mode, atom runs
86
+ * `mvn dependency:build-classpath` inside a Maven project, which loads the
87
+ * project's `.mvn` configuration and build extensions, so delombok and
88
+ * dependency fetching are turned off whenever the project's own tooling may
89
+ * not run.
90
+ *
91
+ * @param {string} language atom `-l` value
92
+ * @param {Object} options CLI options
93
+ * @returns {string[]|undefined} Arguments to add to the atom command, or
94
+ * undefined when the installed atom cannot be told to leave the build alone
95
+ */
96
+ export declare function atomBuildToolArgs(language: string, options?: Object): string[] | undefined;
64
97
  /**
65
98
  * Convert cdxgen's glob-style exclude patterns to a Scala/Java regex string.
66
99
  *
@@ -1 +1 @@
1
- {"version":3,"file":"atomUtils.d.ts","sourceRoot":"","sources":["../../../lib/inventory/atomUtils.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atomUtils.d.ts","sourceRoot":"","sources":["../../../lib/inventory/atomUtils.js"],"names":[],"mappings":"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"}