@dxworks/depinder 0.1.6 → 0.2.1
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/dist/cache/json-cache.js.map +1 -1
- package/dist/cache/mongo-cache.js +20 -11
- package/dist/cache/mongo-cache.js.map +1 -1
- package/dist/commands/analyse.js +28 -27
- package/dist/commands/analyse.js.map +1 -1
- package/dist/commands/cache.js +6 -6
- package/dist/commands/cache.js.map +1 -1
- package/dist/commands/extractFrameworkVersion.js +67 -22
- package/dist/commands/extractFrameworkVersion.js.map +1 -1
- package/dist/commands/transformBlackDuckReports.d.ts +11 -0
- package/dist/commands/transformBlackDuckReports.js +491 -0
- package/dist/commands/transformBlackDuckReports.js.map +1 -0
- package/dist/commands/update.js +3 -4
- package/dist/commands/update.js.map +1 -1
- package/dist/depinder.js +4 -2
- package/dist/depinder.js.map +1 -1
- package/dist/extension-points/registrar.js +7 -8
- package/dist/extension-points/registrar.js.map +1 -1
- package/dist/info/php/parser.js +21 -12
- package/dist/info/php/parser.js.map +1 -1
- package/dist/plugins/dotnet/index.js +8 -16
- package/dist/plugins/dotnet/index.js.map +1 -1
- package/dist/plugins/index.js +3 -3
- package/dist/plugins/index.js.map +1 -1
- package/dist/plugins/java/index.js +15 -23
- package/dist/plugins/java/index.js.map +1 -1
- package/dist/plugins/java/parsers/maven.js +2 -4
- package/dist/plugins/java/parsers/maven.js.map +1 -1
- package/dist/plugins/javascript/index.js +116 -24
- package/dist/plugins/javascript/index.js.map +1 -1
- package/dist/plugins/php/index.js +8 -11
- package/dist/plugins/php/index.js.map +1 -1
- package/dist/plugins/php/php-interfaces.js +4 -6
- package/dist/plugins/php/php-interfaces.js.map +1 -1
- package/dist/plugins/python/index.js +33 -20
- package/dist/plugins/python/index.js.map +1 -1
- package/dist/plugins/ruby/index.js +21 -12
- package/dist/plugins/ruby/index.js.map +1 -1
- package/dist/utils/npm.d.ts +0 -1
- package/dist/utils/projectMapping.d.ts +41 -0
- package/dist/utils/projectMapping.js +310 -0
- package/dist/utils/projectMapping.js.map +1 -0
- package/dist/utils/utils.js +6 -6
- package/dist/utils/utils.js.map +1 -1
- package/dist/utils/vulnerabilities.js +54 -54
- package/dist/utils/vulnerabilities.js.map +1 -1
- package/package.json +45 -49
|
@@ -3,7 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.php = exports.PackagistRegistrar =
|
|
6
|
+
exports.php = exports.PackagistRegistrar = void 0;
|
|
7
|
+
exports.parseComposerFile = parseComposerFile;
|
|
8
|
+
exports.parseComposerLockFile = parseComposerLockFile;
|
|
7
9
|
const path_1 = __importDefault(require("path"));
|
|
8
10
|
const fs_1 = __importDefault(require("fs"));
|
|
9
11
|
const registrar_1 = require("../../extension-points/registrar");
|
|
@@ -23,16 +25,13 @@ const extractor = {
|
|
|
23
25
|
function parseComposerFile(file) {
|
|
24
26
|
return JSON.parse(fs_1.default.readFileSync(file).toString());
|
|
25
27
|
}
|
|
26
|
-
exports.parseComposerFile = parseComposerFile;
|
|
27
28
|
function parseComposerLockFile(file) {
|
|
28
29
|
return JSON.parse(fs_1.default.readFileSync(file).toString());
|
|
29
30
|
}
|
|
30
|
-
exports.parseComposerLockFile = parseComposerLockFile;
|
|
31
31
|
const parser = {
|
|
32
32
|
parseDependencyTree: parseLockFile,
|
|
33
33
|
};
|
|
34
34
|
async function parseLockFile({ root, manifestFile, lockFile }) {
|
|
35
|
-
var _a;
|
|
36
35
|
if (!manifestFile) {
|
|
37
36
|
throw new Error('No manifest file found!');
|
|
38
37
|
}
|
|
@@ -44,7 +43,7 @@ async function parseLockFile({ root, manifestFile, lockFile }) {
|
|
|
44
43
|
const name = it.name;
|
|
45
44
|
const version = it.version;
|
|
46
45
|
const id = `${name}@${version}`;
|
|
47
|
-
const semver = (0, utils_1.getPackageSemver)(version
|
|
46
|
+
const semver = (0, utils_1.getPackageSemver)(version ?? '');
|
|
48
47
|
const type = 'prod';
|
|
49
48
|
const requestedBy = [];
|
|
50
49
|
return {
|
|
@@ -61,15 +60,14 @@ async function parseLockFile({ root, manifestFile, lockFile }) {
|
|
|
61
60
|
}, {});
|
|
62
61
|
const allLibs = Object.values(dependencies);
|
|
63
62
|
composerLock.packages.forEach(it => {
|
|
64
|
-
|
|
65
|
-
Object.keys((_a = it.require) !== null && _a !== void 0 ? _a : {}).forEach(name => {
|
|
63
|
+
Object.keys(it.require ?? {}).forEach(name => {
|
|
66
64
|
const dep = allLibs.find(lib => lib.name === name);
|
|
67
65
|
if (dep) {
|
|
68
66
|
dep.requestedBy.push(it.name);
|
|
69
67
|
}
|
|
70
68
|
});
|
|
71
69
|
});
|
|
72
|
-
Object.keys(
|
|
70
|
+
Object.keys(composer.require ?? {}).forEach(name => {
|
|
73
71
|
const dep = allLibs.find(lib => lib.name === name);
|
|
74
72
|
if (dep) {
|
|
75
73
|
dep.requestedBy.push(`${composer.name}@${composer.version}`);
|
|
@@ -89,13 +87,12 @@ async function parseLockFile({ root, manifestFile, lockFile }) {
|
|
|
89
87
|
}
|
|
90
88
|
class PackagistRegistrar extends registrar_1.AbstractRegistrar {
|
|
91
89
|
async retrieveFromRegistry(libraryName) {
|
|
92
|
-
var _a;
|
|
93
90
|
const response = await (0, php_interfaces_1.getPackageDetails)(libraryName);
|
|
94
|
-
const latestVersion =
|
|
91
|
+
const latestVersion = Object.values(response.versions)
|
|
95
92
|
.filter((it) => !it.version.includes('dev'))
|
|
96
93
|
.sort((a, b) => {
|
|
97
94
|
return Date.parse(b.time) - Date.parse(a.time);
|
|
98
|
-
})[0]
|
|
95
|
+
})[0]?.version;
|
|
99
96
|
return {
|
|
100
97
|
name: response.name,
|
|
101
98
|
versions: Object.values(response.versions).map((it) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/php/index.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/php/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.getPackageMetadata = getPackageMetadata;
|
|
7
|
+
exports.getPackageDetails = getPackageDetails;
|
|
8
|
+
exports.getPackagistStats = getPackagistStats;
|
|
7
9
|
const axios_1 = __importDefault(require("axios"));
|
|
8
10
|
/**
|
|
9
11
|
* Checkout "Using the Composer metadata" @ {@link https://packagist.org/apidoc#get-package-data} for more info.
|
|
@@ -27,16 +29,14 @@ async function getPackageMetadata(vp, ifModifiedSince = '') {
|
|
|
27
29
|
throw e;
|
|
28
30
|
}
|
|
29
31
|
}
|
|
30
|
-
exports.getPackageMetadata = getPackageMetadata;
|
|
31
32
|
/**
|
|
32
33
|
* Checkout "Using the API" @ {@link https://packagist.org/apidoc#get-package-data} for more info.
|
|
33
34
|
*/
|
|
34
35
|
async function getPackageDetails(vp) {
|
|
35
|
-
var _a;
|
|
36
36
|
console.log(`Getting info for ${vp}`);
|
|
37
37
|
try {
|
|
38
38
|
const response = await axios_1.default.get(`https://packagist.org/packages/${constructVPString(vp)}.json`);
|
|
39
|
-
return
|
|
39
|
+
return response?.data?.package;
|
|
40
40
|
}
|
|
41
41
|
catch (e) {
|
|
42
42
|
console.warn(`Packagist could not find package ${constructVPString(vp)}`);
|
|
@@ -44,7 +44,6 @@ async function getPackageDetails(vp) {
|
|
|
44
44
|
throw e;
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
exports.getPackageDetails = getPackageDetails;
|
|
48
47
|
function constructVPString(vp) {
|
|
49
48
|
if (typeof vp === 'string') {
|
|
50
49
|
return vp;
|
|
@@ -63,5 +62,4 @@ async function getPackagistStats() {
|
|
|
63
62
|
const response = await axios_1.default.get('https://packagist.org/statistics.json');
|
|
64
63
|
return response.data;
|
|
65
64
|
}
|
|
66
|
-
exports.getPackagistStats = getPackagistStats;
|
|
67
65
|
//# sourceMappingURL=php-interfaces.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"php-interfaces.js","sourceRoot":"","sources":["../../../src/plugins/php/php-interfaces.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"php-interfaces.js","sourceRoot":"","sources":["../../../src/plugins/php/php-interfaces.ts"],"names":[],"mappings":";;;;;AAsEA,gDAiBC;AAqCD,8CAYC;AAyBD,8CAIC;AArKD,kDAAyB;AA8DzB;;;;;;;GAOG;AACI,KAAK,UAAU,kBAAkB,CACpC,EAAsB,EACtB,eAAe,GAAG,EAAE;IAEpB,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,gCAAgC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE;YAC3F,OAAO,EAAE,EAAC,mBAAmB,EAAE,eAAe,EAAC;SAClD,CAAC,CAAA;QAEF,OAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAC,CAAA;IACjF,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC/C,OAAO,EAAC,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,EAAC,CAAA;QACxE,CAAC;QAED,MAAM,CAAC,CAAA;IACX,CAAC;AACL,CAAC;AAkCD;;GAEG;AACI,KAAK,UAAU,iBAAiB,CACnC,EAAsB;IAEtB,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAA;IACrC,IAAI,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,kCAAkC,iBAAiB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;QAChG,OAAO,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAA;IAClC,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,oCAAoC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QACzE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAA;QACjC,MAAM,CAAC,CAAA;IACX,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,EAAsB;IAC7C,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QACzB,OAAO,EAAE,CAAA;IACb,CAAC;SAAM,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,GAAG,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAA;IACvC,CAAC;SAAM,CAAC;QACJ,MAAM,KAAK,CACP,0FAA0F,CAC7F,CAAA;IACL,CAAC;AACL,CAAC;AAUD;;GAEG;AACI,KAAK,UAAU,iBAAiB;IACnC,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAA;IAEzE,OAAO,QAAQ,CAAC,IAAI,CAAA;AACxB,CAAC"}
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
|
@@ -29,7 +39,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
39
|
exports.python = exports.pythonRegistrar = void 0;
|
|
30
40
|
const path_1 = __importDefault(require("path"));
|
|
31
41
|
const registrar_1 = require("../../extension-points/registrar");
|
|
32
|
-
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
33
42
|
const fs_1 = __importDefault(require("fs"));
|
|
34
43
|
const moment_1 = __importDefault(require("moment"));
|
|
35
44
|
const child_process_1 = require("child_process");
|
|
@@ -54,7 +63,10 @@ const extractor = {
|
|
|
54
63
|
try {
|
|
55
64
|
logging_1.log.info(`Trying to generate lock file for ${context.root}`);
|
|
56
65
|
(0, child_process_1.execSync)('pipenv lock', { cwd: context.root });
|
|
57
|
-
return
|
|
66
|
+
return {
|
|
67
|
+
...context,
|
|
68
|
+
lockFile: path_1.default.resolve(context.root, 'Pipfile.lock'),
|
|
69
|
+
};
|
|
58
70
|
}
|
|
59
71
|
catch (e) {
|
|
60
72
|
logging_1.log.error(e);
|
|
@@ -70,7 +82,10 @@ const extractor = {
|
|
|
70
82
|
const tree = (0, child_process_1.execSync)('pipenv graph --json', { cwd: context.root }).toString();
|
|
71
83
|
fs_1.default.writeFileSync(path_1.default.resolve(context.root, 'PipTree.json'), tree);
|
|
72
84
|
}
|
|
73
|
-
return
|
|
85
|
+
return {
|
|
86
|
+
...context,
|
|
87
|
+
tree: path_1.default.resolve(context.root, 'PipTree.json'),
|
|
88
|
+
};
|
|
74
89
|
}
|
|
75
90
|
catch (e) {
|
|
76
91
|
logging_1.log.error(`Could not generate pipenv tree for project ${context.root}`, e);
|
|
@@ -131,8 +146,7 @@ function parseLockFile(context) {
|
|
|
131
146
|
else {
|
|
132
147
|
const lockFile = JSON.parse(fs_1.default.readFileSync(path_1.default.resolve(context.root, context.lockFile)).toString());
|
|
133
148
|
dependencies = Object.entries(lockFile.default).map(([name, obj]) => {
|
|
134
|
-
|
|
135
|
-
const version = (_b = (_a = obj.version) === null || _a === void 0 ? void 0 : _a.replace('==', '')) !== null && _b !== void 0 ? _b : '';
|
|
149
|
+
const version = obj.version?.replace('==', '') ?? '';
|
|
136
150
|
return {
|
|
137
151
|
name,
|
|
138
152
|
id: `${name}@${version}`,
|
|
@@ -196,9 +210,8 @@ const checker = {
|
|
|
196
210
|
};
|
|
197
211
|
class PyPiRegistrar extends registrar_1.AbstractRegistrar {
|
|
198
212
|
async retrieveFromRegistry(libraryName) {
|
|
199
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
200
213
|
const pypiURL = `https://pypi.org/pypi/${libraryName}/json`;
|
|
201
|
-
const pypiResponse = await (
|
|
214
|
+
const pypiResponse = await fetch(pypiURL);
|
|
202
215
|
const pypiData = await pypiResponse.json();
|
|
203
216
|
return {
|
|
204
217
|
name: libraryName,
|
|
@@ -210,14 +223,14 @@ class PyPiRegistrar extends registrar_1.AbstractRegistrar {
|
|
|
210
223
|
licenses: [],
|
|
211
224
|
};
|
|
212
225
|
}),
|
|
213
|
-
description:
|
|
226
|
+
description: pypiData.info.description ?? pypiData.info.summary ?? '',
|
|
214
227
|
licenses: pypiData.info.license ? [pypiData.info.license] : [],
|
|
215
|
-
homepageUrl:
|
|
216
|
-
keywords:
|
|
228
|
+
homepageUrl: pypiData.info.home_page ?? '',
|
|
229
|
+
keywords: pypiData.info.keywords ?? [],
|
|
217
230
|
authors: pypiData.info.author ? [pypiData.info.author] : [],
|
|
218
|
-
issuesUrl:
|
|
219
|
-
downloads:
|
|
220
|
-
packageUrl:
|
|
231
|
+
issuesUrl: pypiData.info.bugtrack_url ?? '',
|
|
232
|
+
downloads: pypiData.info.downloads?.last_month ?? 0,
|
|
233
|
+
packageUrl: pypiData.info.package_url ?? '',
|
|
221
234
|
};
|
|
222
235
|
}
|
|
223
236
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/python/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/python/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,23 +15,33 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
37
|
};
|
|
28
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.ruby =
|
|
39
|
+
exports.ruby = void 0;
|
|
40
|
+
exports.retrieveFormRubyGems = retrieveFormRubyGems;
|
|
30
41
|
// @ts-ignore
|
|
31
42
|
const gemfile = __importStar(require("@snyk/gemfile"));
|
|
32
43
|
const path_1 = __importDefault(require("path"));
|
|
33
44
|
const preload_1 = __importDefault(require("semver/preload"));
|
|
34
|
-
const node_fetch_1 = __importDefault(require("node-fetch"));
|
|
35
45
|
const extractor = {
|
|
36
46
|
files: ['Gemfile', '*.gemspec', 'Gemfile.lock'],
|
|
37
47
|
createContexts: files => files.filter(it => it.endsWith('Gemfile.lock')).map(it => ({
|
|
@@ -93,9 +103,9 @@ async function retrieveFormRubyGems(libraryName) {
|
|
|
93
103
|
if (registrarCache.has(libraryName))
|
|
94
104
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
95
105
|
return registrarCache.get(libraryName);
|
|
96
|
-
const gemResponse = await (
|
|
106
|
+
const gemResponse = await fetch(`https://rubygems.org/api/v1/gems/${libraryName}.json`);
|
|
97
107
|
const gemData = await gemResponse.json();
|
|
98
|
-
const versionsResponse = await (
|
|
108
|
+
const versionsResponse = await fetch(`https://rubygems.org/api/v1/versions/${libraryName}.json`);
|
|
99
109
|
const versionsData = await versionsResponse.json();
|
|
100
110
|
const libInfo = {
|
|
101
111
|
name: gemData.name,
|
|
@@ -123,7 +133,6 @@ async function retrieveFormRubyGems(libraryName) {
|
|
|
123
133
|
registrarCache.set(libraryName, libInfo);
|
|
124
134
|
return libInfo;
|
|
125
135
|
}
|
|
126
|
-
exports.retrieveFormRubyGems = retrieveFormRubyGems;
|
|
127
136
|
const registrar = {
|
|
128
137
|
retrieve: retrieveFormRubyGems,
|
|
129
138
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/ruby/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/ruby/index.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/npm.d.ts
CHANGED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface for path mapping configuration
|
|
3
|
+
*/
|
|
4
|
+
export interface PathMapping {
|
|
5
|
+
extractedPath: string;
|
|
6
|
+
actualPath: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Map of extracted paths to actual paths
|
|
10
|
+
*/
|
|
11
|
+
export type PathMappings = Map<string, string>;
|
|
12
|
+
/**
|
|
13
|
+
* Interface representing a parsed project path
|
|
14
|
+
*/
|
|
15
|
+
export interface ProjectPathInfo {
|
|
16
|
+
projectPath: string;
|
|
17
|
+
verifiedPath: string;
|
|
18
|
+
projectPathExists?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Create path mappings from mapping data
|
|
22
|
+
* @param mappings Array of path mapping objects
|
|
23
|
+
* @returns Map of extracted paths to actual paths
|
|
24
|
+
*/
|
|
25
|
+
export declare function createPathMappings(mappings: PathMapping[]): PathMappings;
|
|
26
|
+
/**
|
|
27
|
+
* Verify if a project path exists on the file system
|
|
28
|
+
* @param projectPath The extracted project path
|
|
29
|
+
* @param basePath Base directory to check against
|
|
30
|
+
* @param pathMappings Optional path mappings to use for verification
|
|
31
|
+
* @returns Verified path information
|
|
32
|
+
*/
|
|
33
|
+
export declare function verifyProjectPath(projectPath: string, basePath: string, pathMappings?: PathMappings): ProjectPathInfo;
|
|
34
|
+
/**
|
|
35
|
+
* Extract project information from a dependency path based on origin type
|
|
36
|
+
* @param dependencyPath The path from the Black Duck report
|
|
37
|
+
* @param originName The origin name (e.g., npmjs, maven, nuget, pypi, sbt)
|
|
38
|
+
* @param basePath Optional base path to verify against
|
|
39
|
+
* @returns Object containing project path and verified path information
|
|
40
|
+
*/
|
|
41
|
+
export declare function extractProjectInfo(dependencyPath: string, originName: string, basePath?: string, pathMappings?: PathMappings): ProjectPathInfo;
|