scanoss 0.7.9 → 0.7.11

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 (424) hide show
  1. package/build/main/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
  2. package/build/main/tsconfig.tsbuildinfo +1 -1
  3. package/build/module/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +1 -1
  4. package/build/module/tsconfig.module.tsbuildinfo +1 -1
  5. package/package.json +2 -2
  6. package/.circleci/config.yml +0 -64
  7. package/.cspell.json +0 -36
  8. package/.editorconfig +0 -15
  9. package/.eslintrc.json +0 -37
  10. package/.github/workflows/reuse.yml +0 -15
  11. package/.github/workflows/scanoss.yml +0 -24
  12. package/.gitignore +0 -10
  13. package/.idea/.gitignore +0 -5
  14. package/.idea/codeStyles/Project.xml +0 -61
  15. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  16. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  17. package/.idea/modules.xml +0 -8
  18. package/.idea/scanoss.js.iml +0 -12
  19. package/.idea/vcs.xml +0 -6
  20. package/.idea/workspace.xml +0 -313
  21. package/.nyc_output/3da9f448-90e4-4399-887b-e4fd1b8d7052.json +0 -1
  22. package/.nyc_output/processinfo/3da9f448-90e4-4399-887b-e4fd1b8d7052.json +0 -1
  23. package/.nyc_output/processinfo/index.json +0 -1
  24. package/.prettierignore +0 -2
  25. package/.reuse/dep5 +0 -16
  26. package/.vscode/extensions.json +0 -8
  27. package/.vscode/launch.json +0 -29
  28. package/.vscode/settings.json +0 -7
  29. package/LICENSES/CC0-1.0.txt +0 -121
  30. package/LICENSES/MIT.txt +0 -9
  31. package/assets/ReportHTMLTemplate/index.html +0 -1181
  32. package/build/main/package.json +0 -120
  33. package/build/main/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  34. package/build/main/sdk/filters/DefaultFilterForDependencies.js +0 -145
  35. package/build/main/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  36. package/build/main/sdk/filters/DefaultFilterForScanning.js +0 -194
  37. package/build/main/sdk/filters/filtering.d.ts +0 -32
  38. package/build/main/sdk/filters/filtering.js +0 -228
  39. package/build/main/src/cli/bin/cli-bin.d.ts +0 -2
  40. package/build/main/src/cli/bin/cli-bin.js +0 -68
  41. package/build/main/src/cli/commands/dep.d.ts +0 -1
  42. package/build/main/src/cli/commands/dep.js +0 -38
  43. package/build/main/src/cli/commands/helpers.d.ts +0 -2
  44. package/build/main/src/cli/commands/helpers.js +0 -25
  45. package/build/main/src/cli/commands/scan.d.ts +0 -1
  46. package/build/main/src/cli/commands/scan.js +0 -138
  47. package/build/main/src/cli/commands/wfp.d.ts +0 -1
  48. package/build/main/src/cli/commands/wfp.js +0 -54
  49. package/build/main/src/index.d.ts +0 -14
  50. package/build/main/src/index.js +0 -30
  51. package/build/main/src/sdk/DataLayer/DataLayerTypes.d.ts +0 -108
  52. package/build/main/src/sdk/DataLayer/DataLayerTypes.js +0 -5
  53. package/build/main/src/sdk/DataLayer/DataProviderManager.d.ts +0 -7
  54. package/build/main/src/sdk/DataLayer/DataProviderManager.js +0 -24
  55. package/build/main/src/sdk/DataLayer/DataProviders/ComponentDataProvider.d.ts +0 -13
  56. package/build/main/src/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -164
  57. package/build/main/src/sdk/DataLayer/DataProviders/DependencyDataProvider.d.ts +0 -9
  58. package/build/main/src/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -37
  59. package/build/main/src/sdk/DataLayer/DataProviders/LicenseDataProvider.d.ts +0 -18
  60. package/build/main/src/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -148
  61. package/build/main/src/sdk/DataLayer/DataProviders/SummaryDataProvider.d.ts +0 -11
  62. package/build/main/src/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -33
  63. package/build/main/src/sdk/Decompress/DecompressionManager.d.ts +0 -12
  64. package/build/main/src/sdk/Decompress/DecompressionManager.js +0 -73
  65. package/build/main/src/sdk/Decompress/Decompressor/DecompressTgz.d.ts +0 -5
  66. package/build/main/src/sdk/Decompress/Decompressor/DecompressTgz.js +0 -22
  67. package/build/main/src/sdk/Decompress/Decompressor/DecompressZips.d.ts +0 -5
  68. package/build/main/src/sdk/Decompress/Decompressor/DecompressZips.js +0 -24
  69. package/build/main/src/sdk/Decompress/Decompressor/Decompressor.d.ts +0 -10
  70. package/build/main/src/sdk/Decompress/Decompressor/Decompressor.js +0 -18
  71. package/build/main/src/sdk/Dependencies/DependencyScanner.d.ts +0 -11
  72. package/build/main/src/sdk/Dependencies/DependencyScanner.js +0 -96
  73. package/build/main/src/sdk/Dependencies/DependencyScannerCfg.d.ts +0 -4
  74. package/build/main/src/sdk/Dependencies/DependencyScannerCfg.js +0 -10
  75. package/build/main/src/sdk/Dependencies/DependencyTypes.d.ts +0 -21
  76. package/build/main/src/sdk/Dependencies/DependencyTypes.js +0 -2
  77. package/build/main/src/sdk/Dependencies/LocalDependency/DependencyTypes.d.ts +0 -16
  78. package/build/main/src/sdk/Dependencies/LocalDependency/DependencyTypes.js +0 -2
  79. package/build/main/src/sdk/Dependencies/LocalDependency/LocalDependency.d.ts +0 -8
  80. package/build/main/src/sdk/Dependencies/LocalDependency/LocalDependency.js +0 -102
  81. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.d.ts +0 -2
  82. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.js +0 -95
  83. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/golangParser.d.ts +0 -3
  84. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/golangParser.js +0 -97
  85. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.d.ts +0 -2
  86. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.js +0 -183
  87. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/npmParser.d.ts +0 -13
  88. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/npmParser.js +0 -187
  89. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.d.ts +0 -3
  90. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.js +0 -58
  91. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/pyParser.d.ts +0 -2
  92. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/pyParser.js +0 -64
  93. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.d.ts +0 -3
  94. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.js +0 -132
  95. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/utils.d.ts +0 -2
  96. package/build/main/src/sdk/Dependencies/LocalDependency/parsers/utils.js +0 -19
  97. package/build/main/src/sdk/Report/Report.d.ts +0 -8
  98. package/build/main/src/sdk/Report/Report.js +0 -26
  99. package/build/main/src/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  100. package/build/main/src/sdk/filters/DefaultFilterForDependencies.js +0 -145
  101. package/build/main/src/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  102. package/build/main/src/sdk/filters/DefaultFilterForScanning.js +0 -194
  103. package/build/main/src/sdk/filters/filtering.d.ts +0 -32
  104. package/build/main/src/sdk/filters/filtering.js +0 -228
  105. package/build/main/src/sdk/grpc/GrpcDependencyService.d.ts +0 -11
  106. package/build/main/src/sdk/grpc/GrpcDependencyService.js +0 -86
  107. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  108. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  109. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -1
  110. package/build/main/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  111. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -39
  112. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +0 -98
  113. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -1
  114. package/build/main/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  115. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  116. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  117. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts +0 -1
  118. package/build/main/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  119. package/build/main/src/sdk/scanner/Dispatcher/DispatchableItem.d.ts +0 -19
  120. package/build/main/src/sdk/scanner/Dispatcher/DispatchableItem.js +0 -43
  121. package/build/main/src/sdk/scanner/Dispatcher/Dispatcher.d.ts +0 -20
  122. package/build/main/src/sdk/scanner/Dispatcher/Dispatcher.js +0 -160
  123. package/build/main/src/sdk/scanner/Dispatcher/DispatcherResponse.d.ts +0 -12
  124. package/build/main/src/sdk/scanner/Dispatcher/DispatcherResponse.js +0 -33
  125. package/build/main/src/sdk/scanner/Dispatcher/GlobalControllerAborter.d.ts +0 -10
  126. package/build/main/src/sdk/scanner/Dispatcher/GlobalControllerAborter.js +0 -32
  127. package/build/main/src/sdk/scanner/Fingerprint.d.ts +0 -16
  128. package/build/main/src/sdk/scanner/Fingerprint.js +0 -78
  129. package/build/main/src/sdk/scanner/Scannable/ScannableItem.d.ts +0 -15
  130. package/build/main/src/sdk/scanner/Scannable/ScannableItem.js +0 -27
  131. package/build/main/src/sdk/scanner/Scanner.d.ts +0 -46
  132. package/build/main/src/sdk/scanner/Scanner.js +0 -283
  133. package/build/main/src/sdk/scanner/ScannerCfg.d.ts +0 -16
  134. package/build/main/src/sdk/scanner/ScannerCfg.js +0 -30
  135. package/build/main/src/sdk/scanner/ScannerTypes.d.ts +0 -121
  136. package/build/main/src/sdk/scanner/ScannerTypes.js +0 -48
  137. package/build/main/src/sdk/scanner/WfpProvider/FingerprintPackage.d.ts +0 -9
  138. package/build/main/src/sdk/scanner/WfpProvider/FingerprintPackage.js +0 -31
  139. package/build/main/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +0 -20
  140. package/build/main/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.js +0 -492
  141. package/build/main/src/sdk/scanner/WfpProvider/WfpProvider.d.ts +0 -35
  142. package/build/main/src/sdk/scanner/WfpProvider/WfpProvider.js +0 -68
  143. package/build/main/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.d.ts +0 -21
  144. package/build/main/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.js +0 -139
  145. package/build/main/src/sdk/tree/File.d.ts +0 -7
  146. package/build/main/src/sdk/tree/File.js +0 -24
  147. package/build/main/src/sdk/tree/Filters/DecompressionFilter.d.ts +0 -7
  148. package/build/main/src/sdk/tree/Filters/DecompressionFilter.js +0 -21
  149. package/build/main/src/sdk/tree/Filters/DependencyFilter.d.ts +0 -7
  150. package/build/main/src/sdk/tree/Filters/DependencyFilter.js +0 -17
  151. package/build/main/src/sdk/tree/Filters/Filter.d.ts +0 -4
  152. package/build/main/src/sdk/tree/Filters/Filter.js +0 -6
  153. package/build/main/src/sdk/tree/Filters/ScanFilter.d.ts +0 -7
  154. package/build/main/src/sdk/tree/Filters/ScanFilter.js +0 -17
  155. package/build/main/src/sdk/tree/Folder.d.ts +0 -12
  156. package/build/main/src/sdk/tree/Folder.js +0 -58
  157. package/build/main/src/sdk/tree/Node.d.ts +0 -17
  158. package/build/main/src/sdk/tree/Node.js +0 -25
  159. package/build/main/src/sdk/tree/Tree.d.ts +0 -18
  160. package/build/main/src/sdk/tree/Tree.js +0 -70
  161. package/build/module/package.json +0 -120
  162. package/build/module/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  163. package/build/module/sdk/filters/DefaultFilterForDependencies.js +0 -143
  164. package/build/module/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  165. package/build/module/sdk/filters/DefaultFilterForScanning.js +0 -192
  166. package/build/module/sdk/filters/filtering.d.ts +0 -32
  167. package/build/module/sdk/filters/filtering.js +0 -203
  168. package/build/module/src/cli/bin/cli-bin.d.ts +0 -2
  169. package/build/module/src/cli/bin/cli-bin.js +0 -67
  170. package/build/module/src/cli/commands/dep.d.ts +0 -1
  171. package/build/module/src/cli/commands/dep.js +0 -32
  172. package/build/module/src/cli/commands/helpers.d.ts +0 -2
  173. package/build/module/src/cli/commands/helpers.js +0 -19
  174. package/build/module/src/cli/commands/scan.d.ts +0 -1
  175. package/build/module/src/cli/commands/scan.js +0 -135
  176. package/build/module/src/cli/commands/wfp.d.ts +0 -1
  177. package/build/module/src/cli/commands/wfp.js +0 -48
  178. package/build/module/src/index.d.ts +0 -14
  179. package/build/module/src/index.js +0 -19
  180. package/build/module/src/sdk/DataLayer/DataLayerTypes.d.ts +0 -108
  181. package/build/module/src/sdk/DataLayer/DataLayerTypes.js +0 -5
  182. package/build/module/src/sdk/DataLayer/DataProviderManager.d.ts +0 -7
  183. package/build/module/src/sdk/DataLayer/DataProviderManager.js +0 -21
  184. package/build/module/src/sdk/DataLayer/DataProviders/ComponentDataProvider.d.ts +0 -13
  185. package/build/module/src/sdk/DataLayer/DataProviders/ComponentDataProvider.js +0 -159
  186. package/build/module/src/sdk/DataLayer/DataProviders/DependencyDataProvider.d.ts +0 -9
  187. package/build/module/src/sdk/DataLayer/DataProviders/DependencyDataProvider.js +0 -34
  188. package/build/module/src/sdk/DataLayer/DataProviders/LicenseDataProvider.d.ts +0 -18
  189. package/build/module/src/sdk/DataLayer/DataProviders/LicenseDataProvider.js +0 -145
  190. package/build/module/src/sdk/DataLayer/DataProviders/SummaryDataProvider.d.ts +0 -11
  191. package/build/module/src/sdk/DataLayer/DataProviders/SummaryDataProvider.js +0 -30
  192. package/build/module/src/sdk/Decompress/DecompressionManager.d.ts +0 -12
  193. package/build/module/src/sdk/Decompress/DecompressionManager.js +0 -67
  194. package/build/module/src/sdk/Decompress/Decompressor/DecompressTgz.d.ts +0 -5
  195. package/build/module/src/sdk/Decompress/Decompressor/DecompressTgz.js +0 -16
  196. package/build/module/src/sdk/Decompress/Decompressor/DecompressZips.d.ts +0 -5
  197. package/build/module/src/sdk/Decompress/Decompressor/DecompressZips.js +0 -18
  198. package/build/module/src/sdk/Decompress/Decompressor/Decompressor.d.ts +0 -10
  199. package/build/module/src/sdk/Decompress/Decompressor/Decompressor.js +0 -15
  200. package/build/module/src/sdk/Dependencies/DependencyScanner.d.ts +0 -11
  201. package/build/module/src/sdk/Dependencies/DependencyScanner.js +0 -93
  202. package/build/module/src/sdk/Dependencies/DependencyScannerCfg.d.ts +0 -4
  203. package/build/module/src/sdk/Dependencies/DependencyScannerCfg.js +0 -7
  204. package/build/module/src/sdk/Dependencies/DependencyTypes.d.ts +0 -21
  205. package/build/module/src/sdk/Dependencies/DependencyTypes.js +0 -2
  206. package/build/module/src/sdk/Dependencies/LocalDependency/DependencyTypes.d.ts +0 -16
  207. package/build/module/src/sdk/Dependencies/LocalDependency/DependencyTypes.js +0 -2
  208. package/build/module/src/sdk/Dependencies/LocalDependency/LocalDependency.d.ts +0 -8
  209. package/build/module/src/sdk/Dependencies/LocalDependency/LocalDependency.js +0 -96
  210. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.d.ts +0 -2
  211. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.js +0 -87
  212. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/golangParser.d.ts +0 -3
  213. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/golangParser.js +0 -88
  214. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.d.ts +0 -2
  215. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.js +0 -180
  216. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/npmParser.d.ts +0 -13
  217. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/npmParser.js +0 -175
  218. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.d.ts +0 -3
  219. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.js +0 -49
  220. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/pyParser.d.ts +0 -2
  221. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/pyParser.js +0 -57
  222. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.d.ts +0 -3
  223. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.js +0 -125
  224. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/utils.d.ts +0 -2
  225. package/build/module/src/sdk/Dependencies/LocalDependency/parsers/utils.js +0 -15
  226. package/build/module/src/sdk/Report/Report.d.ts +0 -8
  227. package/build/module/src/sdk/Report/Report.js +0 -20
  228. package/build/module/src/sdk/filters/DefaultFilterForDependencies.d.ts +0 -16
  229. package/build/module/src/sdk/filters/DefaultFilterForDependencies.js +0 -143
  230. package/build/module/src/sdk/filters/DefaultFilterForScanning.d.ts +0 -16
  231. package/build/module/src/sdk/filters/DefaultFilterForScanning.js +0 -192
  232. package/build/module/src/sdk/filters/filtering.d.ts +0 -32
  233. package/build/module/src/sdk/filters/filtering.js +0 -203
  234. package/build/module/src/sdk/grpc/GrpcDependencyService.d.ts +0 -11
  235. package/build/module/src/sdk/grpc/GrpcDependencyService.js +0 -64
  236. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -0
  237. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -2
  238. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -1
  239. package/build/module/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -404
  240. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -39
  241. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +0 -98
  242. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -1
  243. package/build/module/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1197
  244. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -19
  245. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -66
  246. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts +0 -1
  247. package/build/module/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -14
  248. package/build/module/src/sdk/scanner/Dispatcher/DispatchableItem.d.ts +0 -19
  249. package/build/module/src/sdk/scanner/Dispatcher/DispatchableItem.js +0 -37
  250. package/build/module/src/sdk/scanner/Dispatcher/Dispatcher.d.ts +0 -20
  251. package/build/module/src/sdk/scanner/Dispatcher/Dispatcher.js +0 -135
  252. package/build/module/src/sdk/scanner/Dispatcher/DispatcherResponse.d.ts +0 -12
  253. package/build/module/src/sdk/scanner/Dispatcher/DispatcherResponse.js +0 -30
  254. package/build/module/src/sdk/scanner/Dispatcher/GlobalControllerAborter.d.ts +0 -10
  255. package/build/module/src/sdk/scanner/Dispatcher/GlobalControllerAborter.js +0 -26
  256. package/build/module/src/sdk/scanner/Fingerprint.d.ts +0 -16
  257. package/build/module/src/sdk/scanner/Fingerprint.js +0 -54
  258. package/build/module/src/sdk/scanner/Scannable/ScannableItem.d.ts +0 -15
  259. package/build/module/src/sdk/scanner/Scannable/ScannableItem.js +0 -24
  260. package/build/module/src/sdk/scanner/Scanner.d.ts +0 -46
  261. package/build/module/src/sdk/scanner/Scanner.js +0 -275
  262. package/build/module/src/sdk/scanner/ScannerCfg.d.ts +0 -16
  263. package/build/module/src/sdk/scanner/ScannerCfg.js +0 -27
  264. package/build/module/src/sdk/scanner/ScannerTypes.d.ts +0 -121
  265. package/build/module/src/sdk/scanner/ScannerTypes.js +0 -46
  266. package/build/module/src/sdk/scanner/WfpProvider/FingerprintPackage.d.ts +0 -9
  267. package/build/module/src/sdk/scanner/WfpProvider/FingerprintPackage.js +0 -28
  268. package/build/module/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.d.ts +0 -20
  269. package/build/module/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.js +0 -486
  270. package/build/module/src/sdk/scanner/WfpProvider/WfpProvider.d.ts +0 -35
  271. package/build/module/src/sdk/scanner/WfpProvider/WfpProvider.js +0 -65
  272. package/build/module/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.d.ts +0 -21
  273. package/build/module/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.js +0 -132
  274. package/build/module/src/sdk/tree/File.d.ts +0 -7
  275. package/build/module/src/sdk/tree/File.js +0 -19
  276. package/build/module/src/sdk/tree/Filters/DecompressionFilter.d.ts +0 -7
  277. package/build/module/src/sdk/tree/Filters/DecompressionFilter.js +0 -18
  278. package/build/module/src/sdk/tree/Filters/DependencyFilter.d.ts +0 -7
  279. package/build/module/src/sdk/tree/Filters/DependencyFilter.js +0 -14
  280. package/build/module/src/sdk/tree/Filters/Filter.d.ts +0 -4
  281. package/build/module/src/sdk/tree/Filters/Filter.js +0 -3
  282. package/build/module/src/sdk/tree/Filters/ScanFilter.d.ts +0 -7
  283. package/build/module/src/sdk/tree/Filters/ScanFilter.js +0 -14
  284. package/build/module/src/sdk/tree/Folder.d.ts +0 -12
  285. package/build/module/src/sdk/tree/Folder.js +0 -53
  286. package/build/module/src/sdk/tree/Node.d.ts +0 -17
  287. package/build/module/src/sdk/tree/Node.js +0 -22
  288. package/build/module/src/sdk/tree/Tree.d.ts +0 -18
  289. package/build/module/src/sdk/tree/Tree.js +0 -64
  290. package/package-lock.json +0 -17116
  291. package/src/cli/bin/cli-bin.ts +0 -81
  292. package/src/cli/commands/dep.ts +0 -37
  293. package/src/cli/commands/helpers.ts +0 -19
  294. package/src/cli/commands/scan.ts +0 -173
  295. package/src/cli/commands/wfp.ts +0 -60
  296. package/src/index.ts +0 -31
  297. package/src/sdk/DataLayer/DataLayerTypes.ts +0 -129
  298. package/src/sdk/DataLayer/DataProviderManager.ts +0 -27
  299. package/src/sdk/DataLayer/DataProviders/ComponentDataProvider.ts +0 -195
  300. package/src/sdk/DataLayer/DataProviders/DependencyDataProvider.ts +0 -48
  301. package/src/sdk/DataLayer/DataProviders/LicenseDataProvider.ts +0 -184
  302. package/src/sdk/DataLayer/DataProviders/SummaryDataProvider.ts +0 -47
  303. package/src/sdk/Decompress/DecompressionManager.ts +0 -91
  304. package/src/sdk/Decompress/Decompressor/DecompressTgz.ts +0 -20
  305. package/src/sdk/Decompress/Decompressor/DecompressZips.ts +0 -21
  306. package/src/sdk/Decompress/Decompressor/Decompressor.ts +0 -20
  307. package/src/sdk/Dependencies/DependencyScanner.ts +0 -108
  308. package/src/sdk/Dependencies/DependencyScannerCfg.ts +0 -7
  309. package/src/sdk/Dependencies/DependencyTypes.ts +0 -24
  310. package/src/sdk/Dependencies/LocalDependency/DependencyTypes.ts +0 -21
  311. package/src/sdk/Dependencies/LocalDependency/LocalDependency.ts +0 -111
  312. package/src/sdk/Dependencies/LocalDependency/parsers/buildGradleParser.ts +0 -115
  313. package/src/sdk/Dependencies/LocalDependency/parsers/golangParser.ts +0 -130
  314. package/src/sdk/Dependencies/LocalDependency/parsers/mavenParser.ts +0 -209
  315. package/src/sdk/Dependencies/LocalDependency/parsers/npmParser.ts +0 -227
  316. package/src/sdk/Dependencies/LocalDependency/parsers/nugetParser.ts +0 -64
  317. package/src/sdk/Dependencies/LocalDependency/parsers/pyParser.ts +0 -58
  318. package/src/sdk/Dependencies/LocalDependency/parsers/rubyParser.ts +0 -174
  319. package/src/sdk/Dependencies/LocalDependency/parsers/utils.ts +0 -15
  320. package/src/sdk/FileCount/FileCount.ts +0 -81
  321. package/src/sdk/FileCount/FileCountFilter.ts +0 -14
  322. package/src/sdk/FileCount/Interfaces.ts +0 -23
  323. package/src/sdk/Filtering/DefaultFilterForDependencies.ts +0 -148
  324. package/src/sdk/Filtering/DefaultFilterForScanning.ts +0 -206
  325. package/src/sdk/Filtering/Filtering.ts +0 -273
  326. package/src/sdk/Report/Report.ts +0 -30
  327. package/src/sdk/grpc/GrpcDependencyService.ts +0 -72
  328. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.d.ts +0 -1
  329. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_grpc_pb.js +0 -1
  330. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.d.ts +0 -79
  331. package/src/sdk/grpc/scanoss/api/common/v2/scanoss-common_pb.js +0 -482
  332. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.d.ts +0 -30
  333. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_grpc_pb.js +0 -109
  334. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.d.ts +0 -206
  335. package/src/sdk/grpc/scanoss/api/dependencies/v2/scanoss-dependencies_pb.js +0 -1489
  336. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.d.ts +0 -25
  337. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_grpc_pb.js +0 -73
  338. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.d.ts +0 -6
  339. package/src/sdk/grpc/scanoss/api/scanning/v2/scanoss-scanning_pb.js +0 -15
  340. package/src/sdk/scanner/Dispatcher/DispatchableItem.ts +0 -62
  341. package/src/sdk/scanner/Dispatcher/Dispatcher.ts +0 -173
  342. package/src/sdk/scanner/Dispatcher/DispatcherResponse.ts +0 -40
  343. package/src/sdk/scanner/Dispatcher/GlobalControllerAborter.ts +0 -33
  344. package/src/sdk/scanner/Fingerprint.ts +0 -82
  345. package/src/sdk/scanner/Scannable/ScannableItem.ts +0 -43
  346. package/src/sdk/scanner/Scanner.ts +0 -360
  347. package/src/sdk/scanner/ScannerCfg.ts +0 -43
  348. package/src/sdk/scanner/ScannerTypes.ts +0 -127
  349. package/src/sdk/scanner/WfpProvider/FingerprintPackage.ts +0 -34
  350. package/src/sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator.ts +0 -516
  351. package/src/sdk/scanner/WfpProvider/WfpProvider.ts +0 -105
  352. package/src/sdk/scanner/WfpProvider/WfpSplitter/WfpSplitter.ts +0 -184
  353. package/src/sdk/tree/File.ts +0 -22
  354. package/src/sdk/tree/Filters/DecompressionFilter.ts +0 -22
  355. package/src/sdk/tree/Filters/DependencyFilter.ts +0 -22
  356. package/src/sdk/tree/Filters/Filter.ts +0 -5
  357. package/src/sdk/tree/Filters/ScanFilter.ts +0 -22
  358. package/src/sdk/tree/Folder.ts +0 -57
  359. package/src/sdk/tree/Node.ts +0 -39
  360. package/src/sdk/tree/Tree.ts +0 -82
  361. package/tests/scanoss.sh +0 -56
  362. package/tests/sdk/DataLayer/DataProviders/ComponentDataProvider.spec.ts +0 -176
  363. package/tests/sdk/DataLayer/DataProviders/DependencyDataProvider.spec.ts +0 -51
  364. package/tests/sdk/DataLayer/DataProviders/SummaryDataProvider.spec.ts +0 -35
  365. package/tests/sdk/DataLayer/DataProviders/samples/results-with-dep.json +0 -665
  366. package/tests/sdk/DataLayer/DataProviders/samples/results.json +0 -556
  367. package/tests/sdk/DataLayer/samples/simple/results-with-dep.json +0 -665
  368. package/tests/sdk/DataLayer/samples/simple-1/output1.json +0 -1196
  369. package/tests/sdk/Dependencies/LocalDependency/LocalDependency.spec.ts +0 -24
  370. package/tests/sdk/Dependencies/LocalDependency/Parsers/buildGradle.spec.ts +0 -48
  371. package/tests/sdk/Dependencies/LocalDependency/Parsers/golangParser.spec.ts +0 -146
  372. package/tests/sdk/Dependencies/LocalDependency/Parsers/npmParser.spec.ts +0 -135
  373. package/tests/sdk/Dependencies/LocalDependency/Parsers/nugetParser.spec.ts +0 -73
  374. package/tests/sdk/Dependencies/LocalDependency/Parsers/pomParser.spec.ts +0 -45
  375. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/1/Gemfile +0 -6
  376. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/1/Gemfile~ +0 -0
  377. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/2/Gemfile +0 -3
  378. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/2/Gemfile~ +0 -6
  379. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/3/Gemfile +0 -7
  380. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/3/Gemfile~ +0 -6
  381. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/4/Gemfile +0 -31
  382. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile/4/Gemfile~ +0 -7
  383. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile.lock/1/Gemfile.lock +0 -180
  384. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile.lock/2/Gemfile.lock +0 -60
  385. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/Gemfile.lock/2/Gemfile.lock~ +0 -0
  386. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/go.sum/1/go.sum +0 -119
  387. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/go.sum/depJSON.sh +0 -23
  388. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/gradle/1/build.gradle +0 -26
  389. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/gradle/2/build.gradle +0 -16
  390. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/NoDependencies.csproj +0 -115
  391. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/netcore-2.csproj +0 -18
  392. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/netcore.csproj +0 -14
  393. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/nuget/packageConfig-1/packages.config +0 -5
  394. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/pom.xml/1/pom.xml +0 -670
  395. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/pom.xml/2/pom.xml +0 -780
  396. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/generate_expected_output.sh +0 -4
  397. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1/yarn.lock +0 -50
  398. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1/yarn.lock-expected +0 -13
  399. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1-complex/yarn.lock +0 -27
  400. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1-complex/yarn.lock-expected +0 -8
  401. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1_2/scancode-out.json +0 -149662
  402. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1_2/yarn.lock +0 -8409
  403. package/tests/sdk/Dependencies/LocalDependency/Parsers/samples/yarn-lock/v1_2/yarn.lock-expected +0 -1153
  404. package/tests/sdk/FileCount/FileCount.spec.ts +0 -35
  405. package/tests/sdk/FileCount/samples/16557/.y.ts +0 -27
  406. package/tests/sdk/FileCount/samples/16557/.z.ts +0 -129
  407. package/tests/sdk/FileCount/samples/16557/files/a.ts +0 -195
  408. package/tests/sdk/FileCount/samples/16557/files/b.ts +0 -184
  409. package/tests/sdk/FileCount/samples/16557/files/c.ts +0 -47
  410. package/tests/sdk/FileCount/samples/22036/files/a.ts +0 -195
  411. package/tests/sdk/FileCount/samples/22036/files/b.ts +0 -184
  412. package/tests/sdk/FileCount/samples/22036/files/c.ts +0 -47
  413. package/tests/sdk/FileCount/samples/22036/files/d.ts +0 -48
  414. package/tests/sdk/FileCount/samples/22036/y.ts +0 -27
  415. package/tests/sdk/FileCount/samples/22036/z.ts +0 -129
  416. package/tests/sdk/Scanner/WfpProvider/WfpCalculator/WfpCalculator.spec.ts +0 -102
  417. package/tests/sdk/Scanner/WfpProvider/WfpCalculator/samples/file1.c +0 -41
  418. package/tests/sdk/Scanner/WfpProvider/WfpCalculator/samples/file2.go +0 -87
  419. package/tests/sdk/Scanner/WfpProvider/WfpSplitter/WfpSplitter.spec.ts +0 -35
  420. package/tests/sdk/Scanner/WfpProvider/WfpSplitter/samples/wfp.wfp +0 -68
  421. package/tests/sdk/Scanner/WfpProvider/WfpSplitter/samples/wfp.wfp~ +0 -68
  422. package/tsconfig.json +0 -31
  423. package/tsconfig.module.json +0 -11
  424. package/yarn.lock +0 -5481
@@ -1,81 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import { program } from 'commander';
4
- import { depHandler } from '../commands/dep';
5
- import { wfpHandler } from '../commands/wfp';
6
- import { scanHandler } from '../commands/scan';
7
- import path from 'path';
8
- import fs from 'fs';
9
-
10
-
11
- export const PackageJSONPath = path.join(__dirname,"../../../../package.json");
12
- export const PackageJSON = JSON.parse(fs.readFileSync(PackageJSONPath, 'utf-8'));
13
-
14
- function CLIErrorHandler(e: Error) {
15
- console.error(' ');
16
- console.error(e);
17
- process.exit(1);
18
- }
19
-
20
- async function main() {
21
- program
22
- .version(PackageJSON.version)
23
- .description('The SCANOSS JS package provides a simple, easy to consume module for interacting with SCANOSS APIs/Engine.')
24
-
25
- program
26
- .command('scan <source>')
27
- .description('Scan a folder/file')
28
- .option('-w, --wfp', 'Scan a .wfp file instead of a folder')
29
- .option('-H, --hpsm', 'Scan using winnowing high precision matching')
30
- .option('-x, --extract', 'Extract compressed files before launch scan in folder <<zip_name>>-unzipped')
31
- .option(' --extract-overwrite', 'Overwrite folder when decompressing if exists')
32
- .option(' --extract-deep <number>', 'Sets uncompress recursion level')
33
- .option(' --extract-suffix <suffix>', 'Sets suffix for the folder name')
34
- .option('-c, --concurrency <number>', 'Number of concurrent connections to use while scanning (optional -default 10)')
35
- .option('-n, --ignore <ignore>', 'Ignore components specified in the SBOM file')
36
- .option('-o, --output <filename>', 'Output result file name (optional - default stdout)')
37
- .option('-f, --format <format>', 'Result output format. {JSON, HTML} Default: JSON')
38
- .option('-F, --flags <flags>', 'Scanning engine flags (1: disable snippet matching, 2 enable snippet ids, 4: disable dependencies, 8: disable licenses, 16: disable copyrights,32: disable vulnerabilities, 64: disable quality, 128: disable cryptography,256: disable best match, 512: Report identified files)')
39
- .option('-P, --post-size <postsize>', 'Number of kilobytes to limit the post to while scanning (optional - default 64)')
40
- .option('-R, --max-retry <retry>', 'Max number of retries for each POST (optional -default 5)')
41
- .option('-M, --timeout <timeout>', 'Timeout (in seconds) for API communication (optional -default 120)')
42
- .option('-D, --dependencies', 'Add dependency scanning')
43
- .option('-a, --apiurl <apiurl>', 'SCANOSS API URL (optional - default: https://osskb.org/api/scan/direct)')
44
- .option('-a, --api2url <api2url>', 'SCANOSS gRPC API 2.0 URL (optional - default: scanoss.com)')
45
- .option('-k, --key <key>', 'SCANOSS API Key token (optional - not required for default OSSKB URL)')
46
- .option('--ignore-cert-errors', 'Ignore self signed certificate errors')
47
- .option('--ca-cert <cert>', 'Specify a path for a cert used in SSL/TLS connection')
48
- .option('--proxy <proxy>', 'Use proxy')
49
- .option('-v, --verbose', 'Makes scan operation verbose')
50
- .action((source, options) => {scanHandler(source, options).catch((e) => {CLIErrorHandler(e)})})
51
- .addHelpText('after', `
52
- Examples:
53
- $ scanoss-js scan -o scan-output.json <source-folder>`
54
- );
55
-
56
- program
57
- .command('dep <source>')
58
- .description('Scan for dependencies')
59
- .option('-o, --output <filename>', 'Output result file name (optional - default stdout)')
60
- .option('-a, --grpc-host <host>', 'SCANOSS GRPC HOST (optional - default: scanoss.com)')
61
- .option('-p, --grpc-port <port>', 'SCANOSS GRPC PORT (optional - default: 443)')
62
- .action((source, options) => {depHandler(source, options).catch((e) => {CLIErrorHandler(e)})})
63
-
64
- program
65
- .command('wfp <source>')
66
- .description('Generates fingerprints for a folder/file')
67
- .option('-H, --hpsm', 'Scan using winnowing high precision matching')
68
- .option('-o, --output <filename>', 'Output result file name (optional - default stdout)')
69
- .option('-p, --block-size <size>', 'Maximum size in Kb for each fingerprint block (optional - default 64Kb)')
70
- .action((source, options) => {wfpHandler(source, options).catch((e) => {CLIErrorHandler(e)})})
71
-
72
- await program.parseAsync(process.argv);
73
- }
74
-
75
-
76
- try {
77
- main();
78
- } catch (e) {
79
- console.error(e);
80
- process.exit(1);
81
- }
@@ -1,37 +0,0 @@
1
- import fs from "fs";
2
- import { DependencyScanner } from "../../sdk/Dependencies/DependencyScanner";
3
- import { DependencyScannerCfg } from "../../sdk/Dependencies/DependencyScannerCfg";
4
- import { Tree } from "../../sdk/tree/Tree";
5
- import { DependencyFilter } from '../../sdk/tree/Filters/DependencyFilter';
6
- import { isFolder } from "./helpers";
7
-
8
-
9
- export async function depHandler(rootPath: string, options: any): Promise<void> {
10
-
11
- rootPath = rootPath.replace(/\/$/, ''); // Remove trailing slash if exists
12
- rootPath = rootPath.replace(/^\./, process.env.PWD); // Convert relative path to absolute path.
13
- const pathIsFolder = await isFolder(rootPath);
14
- const dependencyScannerCfg = new DependencyScannerCfg();
15
- if(options.grpcHost) dependencyScannerCfg.DEFAULT_GRPC_HOST = options.grpcHost;
16
- if(options.grpcPort) dependencyScannerCfg.DEFAULT_GRPC_PORT = options.grpcPort;
17
-
18
- const dependencyScanner = new DependencyScanner(dependencyScannerCfg);
19
-
20
- let fileList: Array<string> = [];
21
- fileList.push(rootPath);
22
-
23
- if (pathIsFolder) {
24
- const tree = new Tree(rootPath);
25
- tree.build();
26
- fileList = tree.getFileList(new DependencyFilter(""));
27
- }
28
-
29
- const results = await dependencyScanner.scan(fileList);
30
-
31
- if(options.output) {
32
- fs.promises.writeFile(options.output, JSON.stringify(results, null, 2));
33
- } else {
34
- console.log(JSON.stringify(results, null, 2));
35
- }
36
-
37
- }
@@ -1,19 +0,0 @@
1
- import pathLib from 'path';
2
- import fs from 'fs';
3
-
4
- // Async function that verify if a path is a folder. If the path is not valid the promise will be rejected
5
- export const isFolder = (path: string): Promise<boolean> => {
6
- return new Promise((resolve, reject) => {
7
- fs.stat(path, (err, stats) => {
8
- if (err) {
9
- reject(err);
10
- } else {
11
- resolve(stats.isDirectory());
12
- }
13
- });
14
- });
15
- }
16
-
17
- export function getProjectNameFromPath(path: string): string {
18
- return pathLib.basename(path,pathLib.extname(path))
19
- }
@@ -1,173 +0,0 @@
1
- import os from 'os';
2
- import fs from 'fs';
3
-
4
- import { Scanner } from '../../sdk/scanner/Scanner';
5
- import {
6
- SbomMode,
7
- ScannerEvents,
8
- ScannerInput, ScannerComponent, ScannerResults,
9
- WinnowingMode
10
- } from '../../sdk/scanner/ScannerTypes';
11
- import { ScannerCfg } from '../../sdk/scanner/ScannerCfg';
12
- import { Tree } from '../../sdk/tree/Tree';
13
- import cliProgress from 'cli-progress';
14
- import { DispatcherResponse } from '../../sdk/scanner/Dispatcher/DispatcherResponse';
15
- import { getProjectNameFromPath, isFolder } from './helpers';
16
-
17
-
18
- import { DependencyScannerCfg } from '../../sdk/Dependencies/DependencyScannerCfg';
19
- import { DependencyScanner } from '../../sdk/Dependencies/DependencyScanner';
20
- import { IDependencyResponse } from '../../sdk/Dependencies/DependencyTypes';
21
- import { ScanFilter } from '../../sdk/tree/Filters/ScanFilter';
22
- import { DependencyFilter } from '../../sdk/tree/Filters/DependencyFilter';
23
- import { Report } from '../../sdk/Report/Report';
24
- import { DataProviderManager } from '../../sdk/DataLayer/DataProviderManager';
25
- import {
26
- ComponentDataProvider
27
- } from '../../sdk/DataLayer/DataProviders/ComponentDataProvider';
28
- import {
29
- DependencyDataProvider
30
- } from '../../sdk/DataLayer/DataProviders/DependencyDataProvider';
31
- import {
32
- LicenseDataProvider
33
- } from '../../sdk/DataLayer/DataProviders/LicenseDataProvider';
34
- import {
35
- SummaryDataProvider
36
- } from '../../sdk/DataLayer/DataProviders/SummaryDataProvider';
37
- import {
38
- DecompressionFilter
39
- } from '../../sdk/tree/Filters/DecompressionFilter';
40
- import {
41
- DecompressionManager
42
- } from '../../sdk/Decompress/DecompressionManager';
43
-
44
-
45
- export async function scanHandler(rootPath: string, options: any): Promise<void> {
46
-
47
- rootPath = rootPath.replace(/\/$/, ''); // Remove trailing slash if exists
48
- rootPath = rootPath.replace(/^\./, process.env.PWD); // Convert relative path to absolute path.
49
- const pathIsFolder = await isFolder(rootPath);
50
-
51
-
52
- const projectName = getProjectNameFromPath(rootPath)
53
-
54
- // Create dependency scanner and set parameters
55
- const dependencyScannerCfg = new DependencyScannerCfg();
56
- if (options.api2url) dependencyScannerCfg.DEFAULT_GRPC_HOST = options.api2url;
57
- const dependencyScanner = new DependencyScanner(dependencyScannerCfg);
58
- let dependencyInput: Array<string> = [];
59
-
60
-
61
- // Create scanner and set connections parameters
62
- const scannerCfg = new ScannerCfg();
63
- if(options.concurrency) scannerCfg.CONCURRENCY_LIMIT = parseInt(options.concurrency);
64
- if(options.postSize) scannerCfg.WFP_FILE_MAX_SIZE = parseInt(options.postSize) * 1024;
65
- if(options.apiurl) scannerCfg.API_URL = options.apiurl;
66
- if(options.key) scannerCfg.API_KEY = options.key;
67
- if(options.timeout) scannerCfg.TIMEOUT = options.timeout * 1000;
68
- if(options.maxRetry) scannerCfg.MAX_RETRIES_FOR_RECOVERABLES_ERRORS = options.maxRetry;
69
- if(options.proxy) scannerCfg.PROXY = options.proxy;
70
- if(options.caCert) scannerCfg.CA_CERT = options.caCert;
71
- if(options.ignoreCertErrors) scannerCfg.IGNORE_CERT_ERRORS=true;
72
- const scanner = new Scanner(scannerCfg);
73
-
74
- let scannerInput: ScannerInput = {fileList: []};
75
- scannerInput.folderRoot = rootPath + '/'; // This will remove the project root path from the results.
76
- if(options.flags) scannerInput.engineFlags = options.flags;
77
-
78
-
79
-
80
- if(!options.wfp) {
81
- if(pathIsFolder) {
82
- console.error('Reading directory... ');
83
- const tree = new Tree(rootPath);
84
- tree.build();
85
-
86
- if(options.extract) {
87
- const archives = tree.getFileList(new DecompressionFilter(""));
88
- console.error("Searching archives files...")
89
- if(archives.length) {
90
- console.error("Extracting archives...")
91
- const decompressionManager = new DecompressionManager(options.extractDeep,options.extractSuffix,options.extractOverwrite);
92
- await decompressionManager.decompress(archives);
93
- console.error("Reindexing files...")
94
- tree.build();
95
- } else console.error("No archives found.");
96
- }
97
-
98
- scannerInput.fileList = tree.getFileList(new ScanFilter(""));
99
- dependencyInput = tree.getFileList(new DependencyFilter(""));
100
-
101
-
102
- } else {
103
- scannerInput.fileList = [rootPath];
104
- dependencyInput = [rootPath];
105
- }
106
- } else {
107
- const winnowing = fs.readFileSync(rootPath, {encoding: 'utf-8'});
108
- scannerInput.fileList.length = [...winnowing.matchAll(/file=/g)].length;
109
- }
110
-
111
- if (!options.verbose) {
112
- const optBar1 = { format: 'Scan Progress: [{bar}] {percentage}% | Scanned {value} files of {total}' };
113
- const bar1 = new cliProgress.SingleBar(optBar1, cliProgress.Presets.shades_classic);
114
- bar1.start(scannerInput.fileList.length, 0);
115
-
116
- scanner.on(ScannerEvents.DISPATCHER_NEW_DATA, (dispResp: DispatcherResponse) => {
117
- bar1.increment(dispResp.getFilesScanned().length);
118
- });
119
-
120
- scanner.on(ScannerEvents.SCAN_DONE, async (resultPath) => {bar1.stop();});
121
- } else {
122
- scanner.on(ScannerEvents.SCANNER_LOG, (logText) => console.error(logText));
123
- }
124
-
125
- if (options.wfp) scannerInput.wfpPath = rootPath;
126
- if (options.hpsm) scannerInput.winnowingMode = WinnowingMode.FULL_WINNOWING_HPSM
127
-
128
- if (options.ignore) {
129
- scannerInput.sbom = fs.readFileSync(options.ignore, 'utf-8');
130
- scannerInput.sbomMode = SbomMode.SBOM_IGNORE
131
- }
132
-
133
-
134
-
135
- // Dependency scanner
136
- let pDependencyScanner = Promise.resolve(<IDependencyResponse>{});
137
- if (options.dependencies) {
138
- pDependencyScanner = dependencyScanner.scan(dependencyInput);
139
- }
140
-
141
- //Launch parallel scanners
142
- const pScanner = scanner.scan([scannerInput]);
143
-
144
- const [scannerResultPath, depResults] = await Promise.all([pScanner, pDependencyScanner])
145
- const scannerResults = JSON.parse(await fs.promises.readFile(scannerResultPath, 'utf-8'));
146
-
147
- //TODO Unify results.json and dependency.json. What happens with result.json that includes dependencies?
148
- const scannersResults = {
149
- scanner: scannerResults as ScannerResults,
150
- ...(options.dependencies && {dependencies: depResults})
151
- };
152
-
153
- let scannerResultsString = JSON.stringify(scannersResults, null, 2);
154
-
155
- if (options.format && options.format.toLowerCase() === "html") {
156
-
157
- const dataProviderManager = new DataProviderManager();
158
- dataProviderManager.addDataProvider(new ComponentDataProvider(scannersResults.scanner, scannersResults.dependencies))
159
- dataProviderManager.addDataProvider(new DependencyDataProvider(scannersResults.dependencies))
160
- dataProviderManager.addDataProvider(new LicenseDataProvider(scannersResults.scanner, scannersResults.dependencies));
161
- dataProviderManager.addDataProvider(new SummaryDataProvider(projectName, new Date(), scannersResults.scanner));
162
- const report = new Report(dataProviderManager);
163
- scannerResultsString = await report.getHTML();
164
-
165
- }
166
-
167
- if(options.output)
168
- await fs.promises.writeFile(options.output, scannerResultsString)
169
- else
170
- console.log(scannerResultsString);
171
- }
172
-
173
-
@@ -1,60 +0,0 @@
1
- import fs from 'fs';
2
-
3
- import cliProgress from 'cli-progress';
4
-
5
- import { isFolder } from './helpers';
6
- import { ScannerEvents, WinnowingMode } from '../../sdk/scanner/ScannerTypes';
7
- import { IWfpProviderInput } from '../../sdk/scanner/WfpProvider/WfpProvider';
8
- import { WfpCalculator } from '../../sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator';
9
- import { FingerprintPackage } from '../../sdk/scanner/WfpProvider/FingerprintPackage';
10
- import { Tree } from '../../sdk/tree/Tree';
11
- import { DependencyFilter } from '../../sdk/tree/Filters/DependencyFilter';
12
-
13
-
14
- export async function wfpHandler(rootPath: string, options: any): Promise<void> {
15
-
16
- rootPath = rootPath.replace(/\/$/, ''); // Remove trailing slash if exists
17
- rootPath = rootPath.replace(/^\./, process.env.PWD); // Convert relative path to absolute path.
18
- const pathIsFolder = await isFolder(rootPath);
19
- const wfpCalculator = new WfpCalculator();
20
-
21
- let filesToFingerprint: string[] = [];
22
- if (pathIsFolder) {
23
- const tree = new Tree(rootPath);
24
- tree.build();
25
- filesToFingerprint = tree.getFileList(new DependencyFilter(""));
26
- } else {
27
- filesToFingerprint.push(rootPath)
28
- }
29
-
30
-
31
- const optBar1 = { format: 'Fingerprinting Progress: [{bar}] {percentage}% | Fingerprinted {value} files of {total}' };
32
- const bar1 = new cliProgress.SingleBar(optBar1, cliProgress.Presets.shades_classic);
33
- bar1.start(filesToFingerprint.length, 0);
34
-
35
- let fingerprints = '';
36
- wfpCalculator.on(ScannerEvents.WINNOWING_NEW_CONTENT, (fingerprintPackage: FingerprintPackage) => {
37
- bar1.increment(fingerprintPackage.getNumberFilesFingerprinted());
38
- fingerprints = fingerprints.concat( fingerprintPackage.getContent() );
39
- });
40
-
41
- if (options.verbose)
42
- wfpCalculator.on(ScannerEvents.WINNOWER_LOG, (log: string) => {
43
- console.error(log);
44
- });
45
-
46
- wfpCalculator.on(ScannerEvents.WINNOWING_FINISHED, () => {
47
- bar1.stop();
48
- if(options.output) {
49
- fs.writeFileSync(options.output, fingerprints);
50
- } else {
51
- console.log(fingerprints);
52
- }
53
- });
54
-
55
- const wfpInput: IWfpProviderInput = {fileList: filesToFingerprint, folderRoot: rootPath}
56
- if(options.hpsm) wfpInput.winnowingMode = WinnowingMode.FULL_WINNOWING_HPSM;
57
- wfpCalculator.start(wfpInput);
58
-
59
-
60
- }
package/src/index.ts DELETED
@@ -1,31 +0,0 @@
1
- // *** Code scanner exports *** //
2
- export * from './sdk/scanner/Scanner';
3
- export * from './sdk/scanner/ScannerTypes';
4
- export * from './sdk/scanner/ScannerCfg';
5
- export * from './sdk/scanner/WfpProvider/WfpCalculator/WfpCalculator';
6
-
7
- // *** Fingerprint exports *** //
8
- export * from './sdk/scanner/Fingerprint';
9
- export {IWfpProviderInput} from './sdk/scanner/WfpProvider/WfpProvider';
10
-
11
- // *** Dependency scanner exports *** //
12
- export * from './sdk/Dependencies/DependencyTypes';
13
- export * from './sdk/Dependencies/DependencyScannerCfg';
14
- export * from './sdk/Dependencies/DependencyScanner';
15
- export * from './sdk/Dependencies/LocalDependency/LocalDependency'
16
-
17
- // *** Data layers export *** //
18
- export * from './sdk/DataLayer/DataLayerTypes';
19
- export * from './sdk/DataLayer/DataProviderManager';
20
- export * from './sdk/DataLayer/DataProviders/LicenseDataProvider';
21
- export * from './sdk/DataLayer/DataProviders/SummaryDataProvider';
22
- export * from './sdk/DataLayer/DataProviders/DependencyDataProvider';
23
- export * from './sdk/DataLayer/DataProviders/ComponentDataProvider';
24
-
25
- // *** Unzip *** //
26
- export * from './sdk/Decompress/DecompressionManager';
27
-
28
-
29
- // *** FileCount *** //
30
- export * from './sdk/FileCount/FileCount';
31
- export {IDirSummary} from './sdk/FileCount/Interfaces';
@@ -1,129 +0,0 @@
1
- /************* Component interface definition *************/
2
- export interface ComponentDataLayer {
3
- key: string; // purl[0]
4
- purls: string[];
5
- name: string;
6
- vendor: string;
7
- url: string;
8
- health: Health;
9
- versions: Version[];
10
- }
11
-
12
- export interface Version {
13
- version: string;
14
- licenses: string[]
15
- copyrights: Copyright[]
16
- cryptography: Cryptography[];
17
- quality: Quality;
18
- }
19
-
20
- export interface Copyright {
21
- name: string;
22
- source: string;
23
- };
24
-
25
- export interface Cryptography {
26
- algorithm: string;
27
- strength: string;
28
- };
29
-
30
- export interface Quality {
31
- scoreAvg: number;
32
- count: number;
33
- sum: number; //TODO remove
34
- };
35
-
36
- export interface Health {
37
- creation_date: string;
38
- issues: number;
39
- last_push: string;
40
- last_update: string;
41
- watchers: number;
42
- country: string;
43
- stars: number;
44
- forks: number;
45
- }
46
- /************* Component interface definition *************/
47
-
48
-
49
- /************* Dependency interface definition *************/
50
- export interface DependencyDataLayer {
51
- file: string;
52
- dependencies: Dependency[];
53
- }
54
-
55
- export interface License {
56
- name: string;
57
- spdxid: string;
58
- }
59
-
60
- export interface Dependency {
61
- purl: string;
62
- component: string;
63
- version: string;
64
- licenses: License[]
65
- }
66
- /************* Dependency interface definition *************/
67
-
68
- /************* Vulnerability interface definition *************/
69
- export interface Vulnerability {
70
- id: string;
71
- cve: string;
72
- url: string;
73
- summary: string;
74
- severity: string;
75
- published: string;
76
- modified: string;
77
- source: string;
78
- }
79
-
80
- export interface VulnerabilityDataLayer {
81
- purl: string;
82
- vulnerability: Vulnerability[];
83
- }
84
- /************* Vulnerability interface definition *************/
85
-
86
-
87
- /************* License interface definition *************/
88
- export interface LicenseDataLayer {
89
- label: string;
90
- value: number; //Number of licenses found
91
- components: Array<LicenseComponent>;
92
- incompatibleWith: Array<string>;
93
- hasIncompatibles: Array<string>;
94
- copyleft:boolean;
95
- }
96
-
97
-
98
- export interface LicenseComponent {
99
- purl: string;
100
- name: string;
101
- versions: Array<string>;
102
- url:string;
103
- vendor:string;
104
- }
105
- /************* License interface definition *************/
106
-
107
- export interface SummaryDataLayer {
108
- projectName: string;
109
- timestamp: Date;
110
- matchedFiles: number;
111
- noMatchFiles: number;
112
- totalFiles: number;
113
- }
114
-
115
- // Each layer is created to group by differents criteria.
116
- export interface IDataLayers {
117
- licenses: LicenseDataLayer[];
118
- component: ComponentDataLayer[];
119
- dependencies: DependencyDataLayer[];
120
- vulnerabilities: VulnerabilityDataLayer[];
121
- summary: SummaryDataLayer;
122
- }
123
-
124
-
125
- export interface DataProvider {
126
- getData(): IDataLayers;
127
- getLayerName(): string;
128
- }
129
-
@@ -1,27 +0,0 @@
1
- import { DataProvider, IDataLayers } from './DataLayerTypes';
2
-
3
- export class DataProviderManager {
4
- private dataLayersProviders: Array<DataProvider>;
5
-
6
- constructor() {
7
- this.dataLayersProviders = [];
8
- }
9
-
10
- public addDataProvider(l: DataProvider) {
11
- this.dataLayersProviders.push(l)
12
- }
13
-
14
- public generateData(): IDataLayers {
15
-
16
- let dataLayer: IDataLayers = {
17
- component: null,
18
- dependencies: null,
19
- vulnerabilities: null,
20
- summary: null,
21
- licenses: null
22
- };
23
-
24
- for (const layer of this.dataLayersProviders) Object.assign(dataLayer, layer.getData());
25
- return dataLayer;
26
- }
27
- }