@contrast/contrast 2.0.2-beta.3 → 2.0.2-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -1
- package/dist/audit/catalogueApplication/catalogueApplication.js +6 -10
- package/dist/audit/catalogueApplication/catalogueApplication.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/commonApi.js +3 -6
- package/dist/audit/languageAnalysisEngine/commonApi.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/filterProjectPath.js +1 -0
- package/dist/audit/languageAnalysisEngine/filterProjectPath.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js +9 -12
- package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/sendSnapshot.js +15 -19
- package/dist/audit/languageAnalysisEngine/sendSnapshot.js.map +1 -0
- package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +9 -9
- package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js.map +1 -0
- package/dist/audit/report/commonReportingFunctions.js +33 -48
- package/dist/audit/report/commonReportingFunctions.js.map +1 -0
- package/dist/audit/report/models/reportGuidanceModel.js +2 -5
- package/dist/audit/report/models/reportGuidanceModel.js.map +1 -0
- package/dist/audit/report/models/reportLibraryModel.js +3 -7
- package/dist/audit/report/models/reportLibraryModel.js.map +1 -0
- package/dist/audit/report/models/reportListModel.js +4 -9
- package/dist/audit/report/models/reportListModel.js.map +1 -0
- package/dist/audit/report/models/reportOutputModel.js +4 -9
- package/dist/audit/report/models/reportOutputModel.js.map +1 -0
- package/dist/audit/report/models/reportSeverityModel.js +2 -5
- package/dist/audit/report/models/reportSeverityModel.js.map +1 -0
- package/dist/audit/report/models/severityCountModel.js +3 -5
- package/dist/audit/report/models/severityCountModel.js.map +1 -0
- package/dist/audit/report/reportingFeature.js +27 -55
- package/dist/audit/report/reportingFeature.js.map +1 -0
- package/dist/audit/report/utils/reportUtils.js +28 -59
- package/dist/audit/report/utils/reportUtils.js.map +1 -0
- package/dist/audit/save.js +14 -16
- package/dist/audit/save.js.map +1 -0
- package/dist/cliConstants.js +17 -18
- package/dist/cliConstants.js.map +1 -0
- package/dist/commands/audit/auditConfig.js +7 -10
- package/dist/commands/audit/auditConfig.js.map +1 -0
- package/dist/commands/audit/auditController.js +9 -13
- package/dist/commands/audit/auditController.js.map +1 -0
- package/dist/commands/audit/help.js +23 -25
- package/dist/commands/audit/help.js.map +1 -0
- package/dist/commands/audit/processAudit.js +9 -12
- package/dist/commands/audit/processAudit.js.map +1 -0
- package/dist/commands/audit/saveFile.js +3 -6
- package/dist/commands/audit/saveFile.js.map +1 -0
- package/dist/commands/auth/auth.js +25 -24
- package/dist/commands/auth/auth.js.map +1 -0
- package/dist/commands/config/config.js +12 -13
- package/dist/commands/config/config.js.map +1 -0
- package/dist/commands/github/fingerprintConfig.js +8 -11
- package/dist/commands/github/fingerprintConfig.js.map +1 -0
- package/dist/commands/github/processFingerprint.js +12 -15
- package/dist/commands/github/processFingerprint.js.map +1 -0
- package/dist/commands/github/projectGroup.js +25 -32
- package/dist/commands/github/projectGroup.js.map +1 -0
- package/dist/commands/github/repoServices.js +11 -21
- package/dist/commands/github/repoServices.js.map +1 -0
- package/dist/commands/learn/learn.js +3 -6
- package/dist/commands/learn/learn.js.map +1 -0
- package/dist/commands/learn/processLearn.js +3 -6
- package/dist/commands/learn/processLearn.js.map +1 -0
- package/dist/commands/scan/processScan.js +11 -14
- package/dist/commands/scan/processScan.js.map +1 -0
- package/dist/common/HTTPClient.js +123 -94
- package/dist/common/HTTPClient.js.map +1 -0
- package/dist/common/autoDetection.js +26 -33
- package/dist/common/autoDetection.js.map +1 -0
- package/dist/common/baseRequest.js +14 -18
- package/dist/common/baseRequest.js.map +1 -0
- package/dist/common/commonHelp.js +13 -13
- package/dist/common/commonHelp.js.map +1 -0
- package/dist/common/errorHandling.js +30 -39
- package/dist/common/errorHandling.js.map +1 -0
- package/dist/common/fail.js +6 -12
- package/dist/common/fail.js.map +1 -0
- package/dist/common/versionChecker.js +16 -19
- package/dist/common/versionChecker.js.map +1 -0
- package/dist/constants/constants.js +44 -65
- package/dist/constants/constants.js.map +1 -0
- package/dist/constants/lambda.js +8 -5
- package/dist/constants/lambda.js.map +1 -0
- package/dist/constants/locales.js +6 -9
- package/dist/constants/locales.js.map +1 -0
- package/dist/index.js +36 -39
- package/dist/index.js.map +1 -0
- package/dist/lambda/analytics.js +6 -9
- package/dist/lambda/analytics.js.map +1 -0
- package/dist/lambda/arn.js +6 -9
- package/dist/lambda/arn.js.map +1 -0
- package/dist/lambda/aws.js +29 -34
- package/dist/lambda/aws.js.map +1 -0
- package/dist/lambda/cliError.js +13 -41
- package/dist/lambda/cliError.js.map +1 -0
- package/dist/lambda/constants.js +3 -4
- package/dist/lambda/constants.js.map +1 -0
- package/dist/lambda/help.js +39 -44
- package/dist/lambda/help.js.map +1 -0
- package/dist/lambda/lambda.js +61 -65
- package/dist/lambda/lambda.js.map +1 -0
- package/dist/lambda/lambdaUtils.js +38 -32
- package/dist/lambda/lambdaUtils.js.map +1 -0
- package/dist/lambda/logUtils.js +21 -17
- package/dist/lambda/logUtils.js.map +1 -0
- package/dist/lambda/scanDetailCompletion.js +19 -25
- package/dist/lambda/scanDetailCompletion.js.map +1 -0
- package/dist/lambda/scanRequest.js +34 -41
- package/dist/lambda/scanRequest.js.map +1 -0
- package/dist/lambda/scanResults.js +8 -10
- package/dist/lambda/scanResults.js.map +1 -0
- package/dist/lambda/types.js +5 -7
- package/dist/lambda/types.js.map +1 -0
- package/dist/lambda/utils.js +33 -35
- package/dist/lambda/utils.js.map +1 -0
- package/dist/sbom/generateSbom.js +6 -10
- package/dist/sbom/generateSbom.js.map +1 -0
- package/dist/scaAnalysis/common/auditReport.js +8 -12
- package/dist/scaAnalysis/common/auditReport.js.map +1 -0
- package/dist/scaAnalysis/common/commonReportingFunctionsSca.js +26 -32
- package/dist/scaAnalysis/common/commonReportingFunctionsSca.js.map +1 -0
- package/dist/scaAnalysis/common/formatMessage.js +8 -17
- package/dist/scaAnalysis/common/formatMessage.js.map +1 -0
- package/dist/scaAnalysis/common/models/ScaReportModel.js +4 -9
- package/dist/scaAnalysis/common/models/ScaReportModel.js.map +1 -0
- package/dist/scaAnalysis/common/scaParserForGoAndJava.js +10 -9
- package/dist/scaAnalysis/common/scaParserForGoAndJava.js.map +1 -0
- package/dist/scaAnalysis/common/scaServicesUpload.js +21 -22
- package/dist/scaAnalysis/common/scaServicesUpload.js.map +1 -0
- package/dist/scaAnalysis/common/treeUpload.js +7 -10
- package/dist/scaAnalysis/common/treeUpload.js.map +1 -0
- package/dist/scaAnalysis/common/utils/reportUtilsSca.js +21 -29
- package/dist/scaAnalysis/common/utils/reportUtilsSca.js.map +1 -0
- package/dist/scaAnalysis/dotnet/analysis.js +12 -18
- package/dist/scaAnalysis/dotnet/analysis.js.map +1 -0
- package/dist/scaAnalysis/dotnet/index.js +4 -7
- package/dist/scaAnalysis/dotnet/index.js.map +1 -0
- package/dist/scaAnalysis/go/goAnalysis.js +8 -11
- package/dist/scaAnalysis/go/goAnalysis.js.map +1 -0
- package/dist/scaAnalysis/go/goParseDeps.js +9 -7
- package/dist/scaAnalysis/go/goParseDeps.js.map +1 -0
- package/dist/scaAnalysis/go/goReadDepFile.js +10 -8
- package/dist/scaAnalysis/go/goReadDepFile.js.map +1 -0
- package/dist/scaAnalysis/java/analysis.js +23 -20
- package/dist/scaAnalysis/java/analysis.js.map +1 -0
- package/dist/scaAnalysis/java/index.js +7 -10
- package/dist/scaAnalysis/java/index.js.map +1 -0
- package/dist/scaAnalysis/java/javaBuildDepsParser.js +43 -43
- package/dist/scaAnalysis/java/javaBuildDepsParser.js.map +1 -0
- package/dist/scaAnalysis/javascript/analysis.js +16 -20
- package/dist/scaAnalysis/javascript/analysis.js.map +1 -0
- package/dist/scaAnalysis/javascript/index.js +17 -19
- package/dist/scaAnalysis/javascript/index.js.map +1 -0
- package/dist/scaAnalysis/javascript/scaServiceParser.js +8 -15
- package/dist/scaAnalysis/javascript/scaServiceParser.js.map +1 -0
- package/dist/scaAnalysis/legacy/legacyFlow.js +13 -15
- package/dist/scaAnalysis/legacy/legacyFlow.js.map +1 -0
- package/dist/scaAnalysis/php/analysis.js +15 -16
- package/dist/scaAnalysis/php/analysis.js.map +1 -0
- package/dist/scaAnalysis/php/index.js +5 -8
- package/dist/scaAnalysis/php/index.js.map +1 -0
- package/dist/scaAnalysis/php/phpNewServicesMapper.js +9 -12
- package/dist/scaAnalysis/php/phpNewServicesMapper.js.map +1 -0
- package/dist/scaAnalysis/processServicesFlow.js +50 -25
- package/dist/scaAnalysis/processServicesFlow.js.map +1 -0
- package/dist/scaAnalysis/python/analysis.js +16 -23
- package/dist/scaAnalysis/python/analysis.js.map +1 -0
- package/dist/scaAnalysis/python/index.js +4 -7
- package/dist/scaAnalysis/python/index.js.map +1 -0
- package/dist/scaAnalysis/repoMode/gradleParser.js +7 -13
- package/dist/scaAnalysis/repoMode/gradleParser.js.map +1 -0
- package/dist/scaAnalysis/repoMode/index.js +9 -12
- package/dist/scaAnalysis/repoMode/index.js.map +1 -0
- package/dist/scaAnalysis/repoMode/mavenParser.js +12 -12
- package/dist/scaAnalysis/repoMode/mavenParser.js.map +1 -0
- package/dist/scaAnalysis/ruby/analysis.js +32 -46
- package/dist/scaAnalysis/ruby/analysis.js.map +1 -0
- package/dist/scaAnalysis/ruby/index.js +5 -8
- package/dist/scaAnalysis/ruby/index.js.map +1 -0
- package/dist/scaAnalysis/scaAnalysis.js +49 -51
- package/dist/scaAnalysis/scaAnalysis.js.map +1 -0
- package/dist/scan/fileUtils.js +27 -36
- package/dist/scan/fileUtils.js.map +1 -0
- package/dist/scan/formatScanOutput.js +47 -61
- package/dist/scan/formatScanOutput.js.map +1 -0
- package/dist/scan/help.js +8 -11
- package/dist/scan/help.js.map +1 -0
- package/dist/scan/models/groupedResultsModel.js +2 -5
- package/dist/scan/models/groupedResultsModel.js.map +1 -0
- package/dist/scan/models/resultContentModel.js +2 -2
- package/dist/scan/models/resultContentModel.js.map +1 -0
- package/dist/scan/models/scanResultsModel.js +2 -5
- package/dist/scan/models/scanResultsModel.js.map +1 -0
- package/dist/scan/populateProjectIdAndProjectName.js +9 -12
- package/dist/scan/populateProjectIdAndProjectName.js.map +1 -0
- package/dist/scan/saveResults.js +3 -6
- package/dist/scan/saveResults.js.map +1 -0
- package/dist/scan/scan.js +24 -31
- package/dist/scan/scan.js.map +1 -0
- package/dist/scan/scanConfig.js +14 -12
- package/dist/scan/scanConfig.js.map +1 -0
- package/dist/scan/scanController.js +17 -20
- package/dist/scan/scanController.js.map +1 -0
- package/dist/scan/scanResults.js +27 -34
- package/dist/scan/scanResults.js.map +1 -0
- package/dist/telemetry/telemetry.js +29 -59
- package/dist/telemetry/telemetry.js.map +1 -0
- package/dist/utils/capabilities.js +1 -0
- package/dist/utils/capabilities.js.map +1 -0
- package/dist/utils/commonApi.js +15 -24
- package/dist/utils/commonApi.js.map +1 -0
- package/dist/utils/filterProjectPath.js +1 -0
- package/dist/utils/filterProjectPath.js.map +1 -0
- package/dist/utils/generalAPI.js +11 -17
- package/dist/utils/generalAPI.js.map +1 -0
- package/dist/utils/getConfig.js +7 -13
- package/dist/utils/getConfig.js.map +1 -0
- package/dist/utils/oraWrapper.js +7 -14
- package/dist/utils/oraWrapper.js.map +1 -0
- package/dist/utils/paramsUtil/commandlineParams.js +2 -5
- package/dist/utils/paramsUtil/commandlineParams.js.map +1 -0
- package/dist/utils/paramsUtil/configStoreParams.js +9 -10
- package/dist/utils/paramsUtil/configStoreParams.js.map +1 -0
- package/dist/utils/paramsUtil/envVariableParams.js +2 -3
- package/dist/utils/paramsUtil/envVariableParams.js.map +1 -0
- package/dist/utils/paramsUtil/paramHandler.js +12 -13
- package/dist/utils/paramsUtil/paramHandler.js.map +1 -0
- package/dist/utils/parsedCLIOptions.js +4 -7
- package/dist/utils/parsedCLIOptions.js.map +1 -0
- package/dist/utils/requestUtils.js +7 -13
- package/dist/utils/requestUtils.js.map +1 -0
- package/dist/utils/saveFile.js +8 -11
- package/dist/utils/saveFile.js.map +1 -0
- package/dist/utils/validationCheck.js +5 -11
- package/dist/utils/validationCheck.js.map +1 -0
- package/package.json +32 -41
- package/.prettierignore +0 -1
- package/bin/contrast.js +0 -2
- package/dist/audit/languageAnalysisEngine/util/requestUtils.js +0 -14
- package/dist/lambda/__mocks__/aws.js +0 -21
- package/dist/lambda/__mocks__/lambdaConfig.json +0 -42
- package/src/audit/catalogueApplication/catalogueApplication.js +0 -51
- package/src/audit/languageAnalysisEngine/commonApi.js +0 -20
- package/src/audit/languageAnalysisEngine/filterProjectPath.js +0 -21
- package/src/audit/languageAnalysisEngine/getProjectRootFilenames.js +0 -36
- package/src/audit/languageAnalysisEngine/sendSnapshot.js +0 -57
- package/src/audit/languageAnalysisEngine/util/requestUtils.js +0 -17
- package/src/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +0 -63
- package/src/audit/report/commonReportingFunctions.js +0 -412
- package/src/audit/report/models/reportGuidanceModel.ts +0 -5
- package/src/audit/report/models/reportLibraryModel.ts +0 -30
- package/src/audit/report/models/reportListModel.ts +0 -49
- package/src/audit/report/models/reportOutputModel.ts +0 -29
- package/src/audit/report/models/reportSeverityModel.ts +0 -18
- package/src/audit/report/models/severityCountModel.ts +0 -22
- package/src/audit/report/reportingFeature.ts +0 -110
- package/src/audit/report/utils/reportUtils.ts +0 -165
- package/src/audit/save.js +0 -67
- package/src/cliConstants.js +0 -523
- package/src/commands/audit/auditConfig.js +0 -18
- package/src/commands/audit/auditController.js +0 -50
- package/src/commands/audit/help.js +0 -72
- package/src/commands/audit/processAudit.js +0 -34
- package/src/commands/audit/saveFile.js +0 -15
- package/src/commands/auth/auth.js +0 -146
- package/src/commands/config/config.js +0 -41
- package/src/commands/github/fingerprintConfig.js +0 -19
- package/src/commands/github/processFingerprint.js +0 -37
- package/src/commands/github/projectGroup.js +0 -298
- package/src/commands/github/repoServices.js +0 -122
- package/src/commands/learn/learn.js +0 -10
- package/src/commands/learn/processLearn.js +0 -13
- package/src/commands/scan/processScan.js +0 -42
- package/src/common/HTTPClient.js +0 -775
- package/src/common/autoDetection.js +0 -209
- package/src/common/baseRequest.ts +0 -83
- package/src/common/commonHelp.js +0 -53
- package/src/common/errorHandling.js +0 -157
- package/src/common/fail.js +0 -79
- package/src/common/versionChecker.js +0 -75
- package/src/constants/constants.js +0 -71
- package/src/constants/lambda.js +0 -85
- package/src/constants/locales.js +0 -365
- package/src/index.ts +0 -142
- package/src/lambda/__mocks__/aws.ts +0 -32
- package/src/lambda/__mocks__/lambdaConfig.json +0 -42
- package/src/lambda/analytics.ts +0 -9
- package/src/lambda/arn.ts +0 -33
- package/src/lambda/aws.ts +0 -248
- package/src/lambda/cliError.ts +0 -72
- package/src/lambda/constants.ts +0 -11
- package/src/lambda/help.ts +0 -92
- package/src/lambda/lambda.ts +0 -230
- package/src/lambda/lambdaUtils.ts +0 -111
- package/src/lambda/logUtils.ts +0 -64
- package/src/lambda/scanDetailCompletion.ts +0 -78
- package/src/lambda/scanRequest.ts +0 -169
- package/src/lambda/scanResults.ts +0 -29
- package/src/lambda/types.ts +0 -36
- package/src/lambda/utils.ts +0 -188
- package/src/sbom/generateSbom.ts +0 -45
- package/src/scaAnalysis/common/auditReport.js +0 -59
- package/src/scaAnalysis/common/commonReportingFunctionsSca.js +0 -276
- package/src/scaAnalysis/common/formatMessage.js +0 -67
- package/src/scaAnalysis/common/models/ScaReportModel.ts +0 -81
- package/src/scaAnalysis/common/scaParserForGoAndJava.js +0 -41
- package/src/scaAnalysis/common/scaServicesUpload.js +0 -159
- package/src/scaAnalysis/common/treeUpload.js +0 -51
- package/src/scaAnalysis/common/utils/reportUtilsSca.ts +0 -123
- package/src/scaAnalysis/dotnet/analysis.js +0 -72
- package/src/scaAnalysis/dotnet/index.js +0 -11
- package/src/scaAnalysis/go/goAnalysis.js +0 -26
- package/src/scaAnalysis/go/goParseDeps.js +0 -203
- package/src/scaAnalysis/go/goReadDepFile.js +0 -34
- package/src/scaAnalysis/java/analysis.js +0 -148
- package/src/scaAnalysis/java/index.js +0 -29
- package/src/scaAnalysis/java/javaBuildDepsParser.js +0 -439
- package/src/scaAnalysis/javascript/analysis.js +0 -111
- package/src/scaAnalysis/javascript/index.js +0 -104
- package/src/scaAnalysis/javascript/scaServiceParser.js +0 -151
- package/src/scaAnalysis/legacy/legacyFlow.js +0 -43
- package/src/scaAnalysis/php/analysis.js +0 -78
- package/src/scaAnalysis/php/index.js +0 -28
- package/src/scaAnalysis/php/phpNewServicesMapper.js +0 -77
- package/src/scaAnalysis/processServicesFlow.js +0 -126
- package/src/scaAnalysis/python/analysis.js +0 -93
- package/src/scaAnalysis/python/index.js +0 -16
- package/src/scaAnalysis/repoMode/gradleParser.js +0 -88
- package/src/scaAnalysis/repoMode/index.js +0 -21
- package/src/scaAnalysis/repoMode/mavenParser.js +0 -138
- package/src/scaAnalysis/ruby/analysis.js +0 -413
- package/src/scaAnalysis/ruby/index.js +0 -16
- package/src/scaAnalysis/scaAnalysis.js +0 -172
- package/src/scan/fileUtils.js +0 -218
- package/src/scan/formatScanOutput.ts +0 -225
- package/src/scan/help.js +0 -56
- package/src/scan/models/groupedResultsModel.ts +0 -20
- package/src/scan/models/resultContentModel.ts +0 -86
- package/src/scan/models/scanResultsModel.ts +0 -55
- package/src/scan/populateProjectIdAndProjectName.js +0 -73
- package/src/scan/saveResults.js +0 -14
- package/src/scan/scan.ts +0 -68
- package/src/scan/scanConfig.js +0 -58
- package/src/scan/scanController.js +0 -98
- package/src/scan/scanResults.js +0 -171
- package/src/telemetry/telemetry.ts +0 -154
- package/src/utils/capabilities.js +0 -12
- package/src/utils/commonApi.js +0 -103
- package/src/utils/filterProjectPath.js +0 -25
- package/src/utils/generalAPI.js +0 -52
- package/src/utils/getConfig.ts +0 -34
- package/src/utils/oraWrapper.js +0 -29
- package/src/utils/paramsUtil/commandlineParams.js +0 -12
- package/src/utils/paramsUtil/configStoreParams.js +0 -19
- package/src/utils/paramsUtil/envVariableParams.js +0 -10
- package/src/utils/paramsUtil/paramHandler.js +0 -38
- package/src/utils/parsedCLIOptions.js +0 -32
- package/src/utils/requestUtils.js +0 -29
- package/src/utils/saveFile.js +0 -20
- package/src/utils/validationCheck.js +0 -39
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const goAnalysis = config => {
|
|
1
|
+
import { getGoDependencies } from './goReadDepFile.js';
|
|
2
|
+
import { parseGoDependencies } from './goParseDeps.js';
|
|
3
|
+
import { parseDependenciesForSCAServices } from '../common/scaParserForGoAndJava.js';
|
|
4
|
+
import { createGoTSMessage } from '../common/formatMessage.js';
|
|
5
|
+
export const goAnalysis = config => {
|
|
7
6
|
try {
|
|
8
|
-
const rawGoDependencies =
|
|
9
|
-
const parsedGoDependencies =
|
|
7
|
+
const rawGoDependencies = getGoDependencies(config);
|
|
8
|
+
const parsedGoDependencies = parseGoDependencies(rawGoDependencies);
|
|
10
9
|
if (config.legacy === false) {
|
|
11
10
|
return parseDependenciesForSCAServices(parsedGoDependencies);
|
|
12
11
|
}
|
|
@@ -18,6 +17,4 @@ const goAnalysis = config => {
|
|
|
18
17
|
console.log(e.message.toString());
|
|
19
18
|
}
|
|
20
19
|
};
|
|
21
|
-
|
|
22
|
-
goAnalysis
|
|
23
|
-
};
|
|
20
|
+
//# sourceMappingURL=goAnalysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goAnalysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goAnalysis.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE;IACjC,IAAI;QACF,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QACnD,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAA;QAEnE,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;YAC3B,OAAO,+BAA+B,CAAC,oBAAoB,CAAC,CAAA;SAC7D;aAAM;YACL,OAAO,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;SAC/C;KACF;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;KAClC;AACH,CAAC,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
const
|
|
3
|
-
const parseGoDependencies = goDeps => {
|
|
1
|
+
import { createHash } from 'crypto';
|
|
2
|
+
export const parseGoDependencies = goDeps => {
|
|
4
3
|
return parseGo(goDeps);
|
|
5
4
|
};
|
|
6
5
|
const parseGo = modGraphOutput => {
|
|
@@ -51,6 +50,7 @@ const createRootNodes = deps => {
|
|
|
51
50
|
let group = splitEdge[0].substring(0, lastSlash);
|
|
52
51
|
const hash = getHash(splitEdge[0]);
|
|
53
52
|
group = checkGroupExists(group, name);
|
|
53
|
+
//get the edges of the root dependency
|
|
54
54
|
const edgesOfDep = getAllDepsOfADepAsEdge(edge, deps);
|
|
55
55
|
rootDep[rootDeps[0].split(' ')[0]][edge] = {
|
|
56
56
|
artifactID: name,
|
|
@@ -74,7 +74,7 @@ const getRootDeps = deps => {
|
|
|
74
74
|
return rootDeps;
|
|
75
75
|
};
|
|
76
76
|
const getHash = library => {
|
|
77
|
-
let shaSum =
|
|
77
|
+
let shaSum = createHash('sha1');
|
|
78
78
|
shaSum.update(library);
|
|
79
79
|
return shaSum.digest('hex');
|
|
80
80
|
};
|
|
@@ -112,6 +112,7 @@ const checkGroupExists = (group, name) => {
|
|
|
112
112
|
};
|
|
113
113
|
const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
|
|
114
114
|
transitiveDeps.forEach(dep => {
|
|
115
|
+
//create transitive dep
|
|
115
116
|
const splitEdge = dep.split('@');
|
|
116
117
|
const splitGroupName = splitEdge[0].split('/');
|
|
117
118
|
const name = splitGroupName.pop();
|
|
@@ -128,8 +129,10 @@ const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
|
|
|
128
129
|
hash: hash,
|
|
129
130
|
edges: {}
|
|
130
131
|
};
|
|
132
|
+
//add edges to transitiveDep
|
|
131
133
|
const edges = getAllDepsOfADepAsEdge(dep, splitLines);
|
|
132
134
|
transitiveDep.edges = edges;
|
|
135
|
+
//add all edges as a transitive dependency to rootNodes
|
|
133
136
|
const edgesAsName = getAllDepsOfADepAsName(dep, splitLines);
|
|
134
137
|
edgesAsName.forEach(dep => {
|
|
135
138
|
const splitEdge = dep.split('@');
|
|
@@ -150,9 +153,8 @@ const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
|
|
|
150
153
|
};
|
|
151
154
|
rootNodes[Object.keys(rootNodes)[0]][dep] = transitiveDep;
|
|
152
155
|
});
|
|
156
|
+
//add transitive dependency to rootNodes
|
|
153
157
|
rootNodes[Object.keys(rootNodes)[0]][dep] = transitiveDep;
|
|
154
158
|
});
|
|
155
159
|
};
|
|
156
|
-
|
|
157
|
-
parseGoDependencies
|
|
158
|
-
};
|
|
160
|
+
//# sourceMappingURL=goParseDeps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goParseDeps.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goParseDeps.js"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
const getGoDependencies = config => {
|
|
1
|
+
import childProcess from 'child_process';
|
|
2
|
+
import i18n from 'i18n';
|
|
3
|
+
export const getGoDependencies = config => {
|
|
5
4
|
let cmdStdout;
|
|
6
5
|
let cwd = config.file ? config.file.replace('go.mod', '') : process.cwd();
|
|
7
6
|
try {
|
|
8
|
-
|
|
7
|
+
// A sample of this output can be found
|
|
8
|
+
// in the go test folder data/goModGraphResults.text
|
|
9
|
+
cmdStdout = childProcess.execSync('go mod graph', {
|
|
9
10
|
cwd: cwd,
|
|
10
11
|
maxBuffer: 50 * 1024 * 1024
|
|
11
12
|
});
|
|
@@ -17,9 +18,10 @@ const getGoDependencies = config => {
|
|
|
17
18
|
'\n\n*************** No transitive dependencies ***************\n\nWe are unable to build a dependency tree view from your repository as there were no transitive dependencies found.';
|
|
18
19
|
}
|
|
19
20
|
console.log(i18n.__('goReadProjectFile', cwd, `${err.message ? err.message : ''}`));
|
|
21
|
+
// throw new Error(
|
|
22
|
+
// i18n.__('goReadProjectFile', cwd, `${err.message ? err.message : ''}`)
|
|
23
|
+
// )
|
|
20
24
|
process.exit(1);
|
|
21
25
|
}
|
|
22
26
|
};
|
|
23
|
-
|
|
24
|
-
getGoDependencies
|
|
25
|
-
};
|
|
27
|
+
//# sourceMappingURL=goReadDepFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goReadDepFile.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goReadDepFile.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE;IACxC,IAAI,SAAS,CAAA;IACb,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IAEzE,IAAI;QACF,uCAAuC;QACvC,oDAAoD;QACpD,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE;YAChD,GAAG,EAAE,GAAG;YACR,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;SAC5B,CAAC,CAAA;QAEF,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAA;KAC5B;IAAC,OAAO,GAAG,EAAE;QACZ,IAAI,GAAG,CAAC,OAAO,KAAK,0BAA0B,EAAE;YAC9C,GAAG,CAAC,OAAO;gBACT,sLAAsL,CAAA;SACzL;QACD,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvE,CAAA;QACD,mBAAmB;QACnB,2EAA2E;QAC3E,IAAI;QACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;AACH,CAAC,CAAA"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const fs = require('fs');
|
|
1
|
+
import childProcess from 'child_process';
|
|
2
|
+
import crossSpawn from 'cross-spawn';
|
|
3
|
+
import { sep } from 'path';
|
|
4
|
+
import i18n from 'i18n';
|
|
5
|
+
import fs from 'fs';
|
|
7
6
|
const MAVEN = 'maven';
|
|
8
7
|
const GRADLE = 'gradle';
|
|
9
|
-
const determineProjectTypeAndCwd = (files, config) => {
|
|
8
|
+
export const determineProjectTypeAndCwd = (files, config) => {
|
|
10
9
|
const projectData = {};
|
|
11
10
|
if (files.length > 1) {
|
|
12
11
|
files = files.filter(i => config.fileName.includes(i));
|
|
@@ -17,6 +16,7 @@ const determineProjectTypeAndCwd = (files, config) => {
|
|
|
17
16
|
else if (files[0].includes('build.gradle')) {
|
|
18
17
|
projectData.projectType = GRADLE;
|
|
19
18
|
}
|
|
19
|
+
//clean up the path to be a folder not a file
|
|
20
20
|
projectData.cwd = config.file
|
|
21
21
|
? config.file.replace('pom.xml', '').replace('build.gradle', '')
|
|
22
22
|
: config.file;
|
|
@@ -29,27 +29,35 @@ const buildMaven = (config, projectData, timeout) => {
|
|
|
29
29
|
args.push('-s');
|
|
30
30
|
args.push(config.mavenSettingsPath);
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
// Allow users to provide a custom location for their settings.xml
|
|
33
|
+
const cmdDepTree = crossSpawn.sync(command, args, {
|
|
33
34
|
env: process.env,
|
|
34
35
|
cwd: projectData.cwd,
|
|
35
36
|
timeout
|
|
36
37
|
});
|
|
38
|
+
checkMavenExists(cmdDepTree, config, projectData);
|
|
39
|
+
return cmdDepTree.stdout.toString();
|
|
40
|
+
};
|
|
41
|
+
export const checkMavenExists = (cmdDepTree, config, projectData) => {
|
|
37
42
|
if (cmdDepTree.status !== 0) {
|
|
43
|
+
//if maven not found
|
|
38
44
|
if (config.debug && cmdDepTree.error.code === 'ENOENT') {
|
|
39
45
|
console.log(`ERROR: mvn not found`);
|
|
40
46
|
console.log('Please make sure mvn is installed and accessible');
|
|
41
47
|
}
|
|
42
48
|
throw new Error(i18n.__('mavenDependencyTreeNonZero', projectData.cwd));
|
|
43
49
|
}
|
|
44
|
-
return cmdDepTree.stdout.toString();
|
|
45
50
|
};
|
|
46
51
|
const buildGradle = (config, projectData, timeout) => {
|
|
47
52
|
let cmdStdout;
|
|
48
53
|
let output = {};
|
|
49
54
|
try {
|
|
55
|
+
// path.sep is user here to either execute as "./gradlew" for UNIX/Linux/MacOS
|
|
56
|
+
// & ".\gradlew" for Windows
|
|
57
|
+
// Check if the user has specified a sub-project
|
|
50
58
|
if (config.subProject) {
|
|
51
|
-
cmdStdout =
|
|
52
|
-
|
|
59
|
+
cmdStdout = childProcess.execSync('.' +
|
|
60
|
+
sep +
|
|
53
61
|
'gradlew :' +
|
|
54
62
|
config.subProject +
|
|
55
63
|
':dependencies --configuration runtimeClasspath', {
|
|
@@ -58,9 +66,7 @@ const buildGradle = (config, projectData, timeout) => {
|
|
|
58
66
|
});
|
|
59
67
|
}
|
|
60
68
|
else {
|
|
61
|
-
cmdStdout =
|
|
62
|
-
path.sep +
|
|
63
|
-
'gradlew dependencies --configuration runtimeClasspath', {
|
|
69
|
+
cmdStdout = childProcess.execSync('.' + sep + 'gradlew dependencies --configuration runtimeClasspath', {
|
|
64
70
|
cwd: projectData.cwd,
|
|
65
71
|
timeout
|
|
66
72
|
});
|
|
@@ -69,7 +75,7 @@ const buildGradle = (config, projectData, timeout) => {
|
|
|
69
75
|
.toString()
|
|
70
76
|
.includes("runtimeClasspath - Runtime classpath of source set 'main'.\n" +
|
|
71
77
|
'No dependencies')) {
|
|
72
|
-
cmdStdout =
|
|
78
|
+
cmdStdout = childProcess.execSync('.' + sep + 'gradlew dependencies', {
|
|
73
79
|
cwd: projectData.cwd,
|
|
74
80
|
timeout
|
|
75
81
|
});
|
|
@@ -87,7 +93,7 @@ const buildGradle = (config, projectData, timeout) => {
|
|
|
87
93
|
}
|
|
88
94
|
}
|
|
89
95
|
};
|
|
90
|
-
const getJavaBuildDeps = (config, files) => {
|
|
96
|
+
export const getJavaBuildDeps = (config, files) => {
|
|
91
97
|
const timeout = 960000;
|
|
92
98
|
let output = {
|
|
93
99
|
mvnDependancyTreeOutput: undefined,
|
|
@@ -103,7 +109,4 @@ const getJavaBuildDeps = (config, files) => {
|
|
|
103
109
|
output.projectType = projectData.projectType;
|
|
104
110
|
return output;
|
|
105
111
|
};
|
|
106
|
-
|
|
107
|
-
getJavaBuildDeps,
|
|
108
|
-
determineProjectTypeAndCwd
|
|
109
|
-
};
|
|
112
|
+
//# sourceMappingURL=analysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/analysis.js"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const javaAnalysis = async (config, languageFiles) => {
|
|
1
|
+
import { getJavaBuildDeps } from './analysis.js';
|
|
2
|
+
import { parseBuildDeps } from './javaBuildDepsParser.js';
|
|
3
|
+
import { createJavaTSMessage } from '../common/formatMessage.js';
|
|
4
|
+
import { parseDependenciesForSCAServices } from '../common/scaParserForGoAndJava.js';
|
|
5
|
+
export const javaAnalysis = async (config, languageFiles) => {
|
|
7
6
|
languageFiles.JAVA.forEach(file => {
|
|
8
7
|
file.replace('build.gradle.kts', 'build.gradle');
|
|
9
8
|
});
|
|
@@ -16,9 +15,7 @@ const javaAnalysis = async (config, languageFiles) => {
|
|
|
16
15
|
}
|
|
17
16
|
};
|
|
18
17
|
const buildJavaTree = (config, files) => {
|
|
19
|
-
const javaBuildDeps =
|
|
18
|
+
const javaBuildDeps = getJavaBuildDeps(config, files);
|
|
20
19
|
return parseBuildDeps(config, javaBuildDeps);
|
|
21
20
|
};
|
|
22
|
-
|
|
23
|
-
javaAnalysis
|
|
24
|
-
};
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AAEpF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE;IAC1D,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAChC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,CAAA;IAE1D,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;QAC3B,OAAO,+BAA+B,CAAC,QAAQ,CAAC,CAAA;KACjD;SAAM;QACL,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAA;KACrC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;IACtC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACrD,OAAO,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAC9C,CAAC,CAAA"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const StringBuilder = require('string-builder');
|
|
1
|
+
import i18n from 'i18n';
|
|
2
|
+
import StringBuilder from 'string-builder';
|
|
4
3
|
let sb = new StringBuilder();
|
|
5
|
-
const parseBuildDeps = (config, input) => {
|
|
4
|
+
export const parseBuildDeps = (config, input) => {
|
|
6
5
|
const { mvnDependancyTreeOutput, projectType } = input;
|
|
7
6
|
try {
|
|
8
7
|
return parseGradle(mvnDependancyTreeOutput, config, projectType);
|
|
@@ -11,7 +10,7 @@ const parseBuildDeps = (config, input) => {
|
|
|
11
10
|
throw new Error(i18n.__('javaParseProjectFile') + `${err.message}`);
|
|
12
11
|
}
|
|
13
12
|
};
|
|
14
|
-
const preParser = shavedOutput => {
|
|
13
|
+
export const preParser = shavedOutput => {
|
|
15
14
|
let obj = [];
|
|
16
15
|
for (let dep in shavedOutput) {
|
|
17
16
|
shavedOutput[dep] = shaveDependencyType(shavedOutput[dep]);
|
|
@@ -49,7 +48,7 @@ const preParser = shavedOutput => {
|
|
|
49
48
|
}
|
|
50
49
|
return depTree;
|
|
51
50
|
};
|
|
52
|
-
const shaveDependencyType = dep => {
|
|
51
|
+
export const shaveDependencyType = dep => {
|
|
53
52
|
if (dep.endsWith('\r')) {
|
|
54
53
|
dep = dep.slice(0, -1);
|
|
55
54
|
}
|
|
@@ -64,7 +63,7 @@ const shaveDependencyType = dep => {
|
|
|
64
63
|
}
|
|
65
64
|
return dep;
|
|
66
65
|
};
|
|
67
|
-
const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
|
|
66
|
+
export const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
|
|
68
67
|
let shavedOutput = gradleDependencyTreeOutput.split('\n');
|
|
69
68
|
if (projectType === 'maven') {
|
|
70
69
|
shavedOutput = preParser(shavedOutput);
|
|
@@ -72,6 +71,7 @@ const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
|
|
|
72
71
|
let obj = [];
|
|
73
72
|
for (let key in shavedOutput) {
|
|
74
73
|
if (shavedOutput[key].includes('project :')) {
|
|
74
|
+
//skip
|
|
75
75
|
}
|
|
76
76
|
else if (shavedOutput[key].includes('+---') ||
|
|
77
77
|
shavedOutput[key].includes('\\---')) {
|
|
@@ -80,7 +80,7 @@ const shaveOutput = (gradleDependencyTreeOutput, projectType) => {
|
|
|
80
80
|
}
|
|
81
81
|
return obj;
|
|
82
82
|
};
|
|
83
|
-
const computeIndentation = element => {
|
|
83
|
+
export const computeIndentation = element => {
|
|
84
84
|
let hasPlus = element.includes('+');
|
|
85
85
|
let hasSlash = element.includes('\\');
|
|
86
86
|
if (hasPlus) {
|
|
@@ -90,7 +90,7 @@ const computeIndentation = element => {
|
|
|
90
90
|
return element.substring(element.indexOf('\\'));
|
|
91
91
|
}
|
|
92
92
|
};
|
|
93
|
-
const computeLevel = nodeLevel => {
|
|
93
|
+
export const computeLevel = nodeLevel => {
|
|
94
94
|
let num = [5, 8, 11, 14, 17, 20];
|
|
95
95
|
for (let z in num) {
|
|
96
96
|
if (num[z] === nodeLevel) {
|
|
@@ -99,16 +99,16 @@ const computeLevel = nodeLevel => {
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
};
|
|
102
|
-
const addIndentation = (number, str) => {
|
|
102
|
+
export const addIndentation = (number, str) => {
|
|
103
103
|
str = computeIndentation(str);
|
|
104
|
-
sb.clear();
|
|
104
|
+
sb.clear(); // need to clear so each dep doesn't append to the string
|
|
105
105
|
for (let j = 0; j < number; j++) {
|
|
106
106
|
sb.append(' ');
|
|
107
107
|
}
|
|
108
108
|
sb.append(str);
|
|
109
109
|
return sb.toString();
|
|
110
110
|
};
|
|
111
|
-
const computeRelationToLastElement = element => {
|
|
111
|
+
export const computeRelationToLastElement = element => {
|
|
112
112
|
let hasPlus = element.includes('+---');
|
|
113
113
|
let hasSlash = element.includes('\\---');
|
|
114
114
|
if (hasPlus) {
|
|
@@ -118,7 +118,7 @@ const computeRelationToLastElement = element => {
|
|
|
118
118
|
return element.split('\\---')[0].length;
|
|
119
119
|
}
|
|
120
120
|
};
|
|
121
|
-
const stripElement = element => {
|
|
121
|
+
export const stripElement = element => {
|
|
122
122
|
const initialStrippedElement = element
|
|
123
123
|
.replace(/[|]/g, '')
|
|
124
124
|
.replace('+---', '')
|
|
@@ -127,6 +127,8 @@ const stripElement = element => {
|
|
|
127
127
|
.replace('(c)', '')
|
|
128
128
|
.replace('->', '@')
|
|
129
129
|
.replace('(*)', '');
|
|
130
|
+
//work out Gradle resolved versioning e.g. org.slf4j:slf4j-api:1.7.25 -> 1.7.22
|
|
131
|
+
//take 1.7.22
|
|
130
132
|
const splitElements = initialStrippedElement.split(':');
|
|
131
133
|
if (splitElements[2] !== undefined &&
|
|
132
134
|
splitElements[2] !== null &&
|
|
@@ -138,11 +140,11 @@ const stripElement = element => {
|
|
|
138
140
|
}
|
|
139
141
|
return initialStrippedElement;
|
|
140
142
|
};
|
|
141
|
-
const checkVersion = element => {
|
|
143
|
+
export const checkVersion = element => {
|
|
142
144
|
let version = element.split(':');
|
|
143
145
|
return version[version.length - 1];
|
|
144
146
|
};
|
|
145
|
-
const createElement = (element, isRoot) => {
|
|
147
|
+
export const createElement = (element, isRoot) => {
|
|
146
148
|
let tree;
|
|
147
149
|
let cleanElement = stripElement(element);
|
|
148
150
|
let splitGroupName = cleanElement.split(':');
|
|
@@ -162,42 +164,44 @@ const createElement = (element, isRoot) => {
|
|
|
162
164
|
};
|
|
163
165
|
return tree;
|
|
164
166
|
};
|
|
165
|
-
const getElementHeader = element => {
|
|
167
|
+
export const getElementHeader = element => {
|
|
166
168
|
let elementHeader = stripElement(element);
|
|
167
169
|
elementHeader = elementHeader.replace(':', '/');
|
|
168
170
|
elementHeader = elementHeader.replace(':', '@');
|
|
169
171
|
return elementHeader;
|
|
170
172
|
};
|
|
171
|
-
const buildElement = (element, rootElement, parentOfCurrent, tree, isRoot) => {
|
|
173
|
+
export const buildElement = (element, rootElement, parentOfCurrent, tree, isRoot) => {
|
|
172
174
|
let childElement = createElement(element, isRoot);
|
|
173
175
|
let elementHeader = getElementHeader(element);
|
|
174
176
|
let levelsArray = [rootElement, parentOfCurrent];
|
|
175
177
|
const treeNode = getNestedObject(tree, levelsArray);
|
|
176
178
|
const rootNode = getNestedObject(tree, [rootElement]);
|
|
179
|
+
// eslint-disable-next-line
|
|
177
180
|
if (!rootNode.hasOwnProperty(elementHeader)) {
|
|
178
181
|
tree[rootElement][elementHeader] = childElement;
|
|
179
182
|
}
|
|
180
183
|
treeNode.edges[elementHeader] = elementHeader;
|
|
181
184
|
};
|
|
182
|
-
const hasChildren = (nextNodeLevel, nodeLevel) => {
|
|
185
|
+
export const hasChildren = (nextNodeLevel, nodeLevel) => {
|
|
183
186
|
if (nextNodeLevel > nodeLevel) {
|
|
184
187
|
return true;
|
|
185
188
|
}
|
|
186
189
|
};
|
|
187
|
-
const lastChild = (nextNodeLevel, nodeLevel) => {
|
|
190
|
+
export const lastChild = (nextNodeLevel, nodeLevel) => {
|
|
188
191
|
if (nextNodeLevel < nodeLevel) {
|
|
189
192
|
return true;
|
|
190
193
|
}
|
|
191
194
|
};
|
|
192
|
-
const calculateLevels = (nextNodeLevel, nodeLevel) => {
|
|
195
|
+
export const calculateLevels = (nextNodeLevel, nodeLevel) => {
|
|
193
196
|
return (nodeLevel - nextNodeLevel) / 5;
|
|
194
197
|
};
|
|
195
|
-
const buildTree = shavedOutput => {
|
|
198
|
+
export const buildTree = shavedOutput => {
|
|
196
199
|
let tree = {};
|
|
197
200
|
let rootElement;
|
|
198
201
|
let levelNodes = [];
|
|
199
202
|
shavedOutput.forEach((element, index) => {
|
|
200
203
|
if (index === 0) {
|
|
204
|
+
// console.log(element, index)
|
|
201
205
|
let cleanElement = stripElement(element);
|
|
202
206
|
let elementHeader = getElementHeader(cleanElement);
|
|
203
207
|
let splitElement = element.split(' ');
|
|
@@ -221,6 +225,7 @@ const buildTree = shavedOutput => {
|
|
|
221
225
|
levelNodes.push(elementHeader);
|
|
222
226
|
}
|
|
223
227
|
if (shavedOutput.length - 1 === index) {
|
|
228
|
+
// console.log(element, index)
|
|
224
229
|
const parentOfCurrent = levelNodes[levelNodes.length - 1];
|
|
225
230
|
let nodeLevel = computeRelationToLastElement(element);
|
|
226
231
|
let validateVersion = false;
|
|
@@ -255,6 +260,17 @@ const buildTree = shavedOutput => {
|
|
|
255
260
|
if (nodeLevel === 0) {
|
|
256
261
|
isRoot = true;
|
|
257
262
|
}
|
|
263
|
+
// useful for debugging
|
|
264
|
+
// console.log(
|
|
265
|
+
// element,
|
|
266
|
+
// index,
|
|
267
|
+
// 'nodeLevel:',
|
|
268
|
+
// nodeLevel,
|
|
269
|
+
// 'nextNodeLevel:',
|
|
270
|
+
// nextNodeLevel,
|
|
271
|
+
// 'parentofCurrent:',
|
|
272
|
+
// parentOfCurrent
|
|
273
|
+
// )
|
|
258
274
|
if (isRoot) {
|
|
259
275
|
let cleanElement = stripElement(element);
|
|
260
276
|
let elementHeader = getElementHeader(cleanElement);
|
|
@@ -299,10 +315,11 @@ const buildTree = shavedOutput => {
|
|
|
299
315
|
});
|
|
300
316
|
return tree;
|
|
301
317
|
};
|
|
302
|
-
const getNestedObject = (nestedObj, pathArr) => {
|
|
318
|
+
export const getNestedObject = (nestedObj, pathArr) => {
|
|
303
319
|
return pathArr.reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), nestedObj);
|
|
304
320
|
};
|
|
305
|
-
|
|
321
|
+
// emit any "+--- project :" within the tree
|
|
322
|
+
export const parseSubProject = shavedOutput => {
|
|
306
323
|
let obj = [];
|
|
307
324
|
for (let key in shavedOutput) {
|
|
308
325
|
if (!shavedOutput[key].includes('project')) {
|
|
@@ -311,7 +328,7 @@ const parseSubProject = shavedOutput => {
|
|
|
311
328
|
}
|
|
312
329
|
return obj;
|
|
313
330
|
};
|
|
314
|
-
const validateIndentation = shavedOutput => {
|
|
331
|
+
export const validateIndentation = shavedOutput => {
|
|
315
332
|
let validatedTree = [];
|
|
316
333
|
shavedOutput.forEach((element, index) => {
|
|
317
334
|
let nextNodeLevel;
|
|
@@ -333,7 +350,7 @@ const validateIndentation = shavedOutput => {
|
|
|
333
350
|
validatedTree.pop();
|
|
334
351
|
return validatedTree;
|
|
335
352
|
};
|
|
336
|
-
const parseGradle = (gradleDependencyTreeOutput, config, projectType) => {
|
|
353
|
+
export const parseGradle = (gradleDependencyTreeOutput, config, projectType) => {
|
|
337
354
|
let shavedOutput = shaveOutput(gradleDependencyTreeOutput, projectType);
|
|
338
355
|
if (config.subProject) {
|
|
339
356
|
let subProject = parseSubProject(shavedOutput);
|
|
@@ -345,21 +362,4 @@ const parseGradle = (gradleDependencyTreeOutput, config, projectType) => {
|
|
|
345
362
|
return buildTree(validatedOutput);
|
|
346
363
|
}
|
|
347
364
|
};
|
|
348
|
-
|
|
349
|
-
parseBuildDeps,
|
|
350
|
-
shaveOutput,
|
|
351
|
-
validateIndentation,
|
|
352
|
-
calculateLevels,
|
|
353
|
-
lastChild,
|
|
354
|
-
hasChildren,
|
|
355
|
-
getElementHeader,
|
|
356
|
-
createElement,
|
|
357
|
-
stripElement,
|
|
358
|
-
checkVersion,
|
|
359
|
-
computeRelationToLastElement,
|
|
360
|
-
addIndentation,
|
|
361
|
-
computeLevel,
|
|
362
|
-
computeIndentation,
|
|
363
|
-
shaveDependencyType,
|
|
364
|
-
preParser
|
|
365
|
-
};
|
|
365
|
+
//# sourceMappingURL=javaBuildDepsParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"javaBuildDepsParser.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/javaBuildDepsParser.js"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const readFile = async (config, languageFiles, nameOfFile) => {
|
|
1
|
+
import { readFileSync } from 'fs';
|
|
2
|
+
import { load } from 'js-yaml';
|
|
3
|
+
import i18n from 'i18n';
|
|
4
|
+
import { formatKey } from '../../audit/nodeAnalysisEngine/parseYarn2LockFileContents.js';
|
|
5
|
+
import yarnpkg from '@yarnpkg/lockfile';
|
|
6
|
+
export const readFile = async (config, languageFiles, nameOfFile) => {
|
|
8
7
|
const index = languageFiles.findIndex(v => v.includes(nameOfFile));
|
|
9
8
|
if (config.file) {
|
|
10
|
-
return
|
|
9
|
+
return readFileSync(config.file.concat(languageFiles[index]), 'utf8');
|
|
11
10
|
}
|
|
12
11
|
else {
|
|
13
12
|
throw new Error('could not find file');
|
|
14
13
|
}
|
|
15
14
|
};
|
|
16
|
-
const readYarn = async (config, languageFiles, nameOfFile) => {
|
|
15
|
+
export const readYarn = async (config, languageFiles, nameOfFile) => {
|
|
17
16
|
let yarn = {
|
|
18
17
|
yarnVersion: 1,
|
|
19
18
|
rawYarnLockFileContents: ''
|
|
@@ -23,7 +22,7 @@ const readYarn = async (config, languageFiles, nameOfFile) => {
|
|
|
23
22
|
yarn.rawYarnLockFileContents = rawYarnLockFileContents;
|
|
24
23
|
if (!yarn.rawYarnLockFileContents.includes('lockfile v1') ||
|
|
25
24
|
yarn.rawYarnLockFileContents.includes('__metadata')) {
|
|
26
|
-
yarn.rawYarnLockFileContents =
|
|
25
|
+
yarn.rawYarnLockFileContents = load(rawYarnLockFileContents);
|
|
27
26
|
yarn.yarnVersion = 2;
|
|
28
27
|
}
|
|
29
28
|
return yarn;
|
|
@@ -32,17 +31,20 @@ const readYarn = async (config, languageFiles, nameOfFile) => {
|
|
|
32
31
|
throw new Error(i18n.__('nodeReadYarnLockFileError') + `${err.message}`);
|
|
33
32
|
}
|
|
34
33
|
};
|
|
35
|
-
const parseNpmLockFile = async (npmLockFile) => {
|
|
34
|
+
export const parseNpmLockFile = async (npmLockFile) => {
|
|
36
35
|
try {
|
|
37
36
|
if (!npmLockFile.parsedPackages) {
|
|
38
37
|
npmLockFile.parsedPackages = {};
|
|
39
38
|
}
|
|
40
39
|
Object.entries(npmLockFile.packages).forEach(([packageKey, packageValue]) => {
|
|
41
40
|
if (packageKey.includes('node_modules/')) {
|
|
41
|
+
//remove object keys node modules prefixing
|
|
42
|
+
//e.g: node_modules/@aws-amplify/datastore/node_modules/uuid --> @aws-amplify/datastore/uuid
|
|
42
43
|
packageKey = packageKey.replace(/(node_modules\/)+/g, '');
|
|
43
44
|
}
|
|
44
45
|
npmLockFile.parsedPackages[packageKey] = packageValue;
|
|
45
46
|
});
|
|
47
|
+
//remove base project package - unneeded
|
|
46
48
|
delete npmLockFile.parsedPackages[''];
|
|
47
49
|
return npmLockFile;
|
|
48
50
|
}
|
|
@@ -50,11 +52,11 @@ const parseNpmLockFile = async (npmLockFile) => {
|
|
|
50
52
|
throw new Error(i18n.__('NodeParseNPM') + `${err.message}`);
|
|
51
53
|
}
|
|
52
54
|
};
|
|
53
|
-
const parseYarnLockFile = async (js) => {
|
|
55
|
+
export const parseYarnLockFile = async (js) => {
|
|
54
56
|
try {
|
|
55
57
|
js.yarn.yarnLockFile = {};
|
|
56
58
|
if (js.yarn.yarnVersion === 1) {
|
|
57
|
-
js.yarn.yarnLockFile =
|
|
59
|
+
js.yarn.yarnLockFile = yarnpkg.parse(js.yarn.rawYarnLockFileContents);
|
|
58
60
|
delete js.yarn.rawYarnLockFileContents;
|
|
59
61
|
return js;
|
|
60
62
|
}
|
|
@@ -76,10 +78,4 @@ const parseYarnLockFile = async (js) => {
|
|
|
76
78
|
throw new Error(i18n.__('NodeParseYarn', js.yarn.yarnVersion) + `${err.message}`);
|
|
77
79
|
}
|
|
78
80
|
};
|
|
79
|
-
|
|
80
|
-
readYarn,
|
|
81
|
-
parseYarnLockFile,
|
|
82
|
-
parseNpmLockFile,
|
|
83
|
-
readFile,
|
|
84
|
-
formatKey
|
|
85
|
-
};
|
|
81
|
+
//# sourceMappingURL=analysis.js.map
|