Select Git revision
-
Rhys Arkins authored
Rewrite of dependency extraction, particularly for npm. Paves way for easier addition of new package managers. Closes #1882
Rhys Arkins authoredRewrite of dependency extraction, particularly for npm. Paves way for easier addition of new package managers. Closes #1882
npm.js 554 B
module.exports = {
getNpmLock,
};
async function getNpmLock(filePath) {
const lockRaw = await platform.getFile(filePath);
try {
const lockParsed = JSON.parse(lockRaw);
const lockFile = {};
for (const [entry, val] of Object.entries(lockParsed.dependencies)) {
logger.trace({ entry, version: val.version });
lockFile[entry] = val.version;
}
return lockFile;
} catch (err) {
logger.info(
{ filePath, err, message: err.message },
'Warning: Exception parsing npm lock file'
);
return {};
}
}