@snyk/dep-graph
Advanced tools
Comparing version 1.23.1 to 1.24.0
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
const crypto = require("crypto"); | ||
const event_loop_spinner_1 = require("event-loop-spinner"); | ||
const builder_1 = require("../core/builder"); | ||
const event_loop_spinner_1 = require("./event-loop-spinner"); | ||
const objectHash = require("object-hash"); | ||
@@ -30,9 +30,8 @@ function addLabel(dep, key, value) { | ||
const builder = new builder_1.DepGraphBuilder(pkgManagerInfo, rootPkg); | ||
const eventLoopSpinner = new event_loop_spinner_1.EventLoopSpinner(); | ||
await buildGraph(builder, depTree, depTree.name, eventLoopSpinner, true); | ||
await buildGraph(builder, depTree, depTree.name, true); | ||
const depGraph = await builder.build(); | ||
return shortenNodeIds(depGraph, eventLoopSpinner); | ||
return shortenNodeIds(depGraph); | ||
} | ||
exports.depTreeToGraph = depTreeToGraph; | ||
async function buildGraph(builder, depTree, pkgName, eventLoopSpinner, isRoot = false, memoizationMap = new Map()) { | ||
async function buildGraph(builder, depTree, pkgName, isRoot = false, memoizationMap = new Map()) { | ||
if (memoizationMap.has(depTree)) { | ||
@@ -55,3 +54,3 @@ return memoizationMap.get(depTree); | ||
const dep = deps[depName]; | ||
const subtreeHash = await buildGraph(builder, dep, depName, eventLoopSpinner, false, memoizationMap); | ||
const subtreeHash = await buildGraph(builder, dep, depName, false, memoizationMap); | ||
const depPkg = { | ||
@@ -97,4 +96,4 @@ name: depName, | ||
} | ||
if (depNodesIds.length > 0 && eventLoopSpinner.isStarving()) { | ||
await eventLoopSpinner.spin(); | ||
if (depNodesIds.length > 0 && event_loop_spinner_1.eventLoopSpinner.isStarving()) { | ||
await event_loop_spinner_1.eventLoopSpinner.spin(); | ||
} | ||
@@ -104,3 +103,3 @@ memoizationMap.set(depTree, treeHash); | ||
} | ||
async function shortenNodeIds(depGraph, eventLoopSpinner) { | ||
async function shortenNodeIds(depGraph) { | ||
const builder = new builder_1.DepGraphBuilder(depGraph.pkgManager, depGraph.rootPkg); | ||
@@ -127,4 +126,4 @@ const nodesMap = {}; | ||
} | ||
if (eventLoopSpinner.isStarving()) { | ||
await eventLoopSpinner.spin(); | ||
if (event_loop_spinner_1.eventLoopSpinner.isStarving()) { | ||
await event_loop_spinner_1.eventLoopSpinner.spin(); | ||
} | ||
@@ -141,4 +140,4 @@ } | ||
} | ||
if (eventLoopSpinner.isStarving()) { | ||
await eventLoopSpinner.spin(); | ||
if (event_loop_spinner_1.eventLoopSpinner.isStarving()) { | ||
await event_loop_spinner_1.eventLoopSpinner.spin(); | ||
} | ||
@@ -154,4 +153,3 @@ } | ||
} | ||
const eventLoopSpinner = new event_loop_spinner_1.EventLoopSpinner(); | ||
const depTree = await buildSubtree(depGraph, depGraph.rootNodeId, eventLoopSpinner, opts.deduplicateWithinTopLevelDeps ? null : false); | ||
const depTree = await buildSubtree(depGraph, depGraph.rootNodeId, opts.deduplicateWithinTopLevelDeps ? null : false); | ||
depTree.type = depGraph.pkgManager.name; | ||
@@ -186,3 +184,3 @@ depTree.packageFormatVersion = constructPackageFormatVersion(pkgType); | ||
} | ||
async function buildSubtree(depGraph, nodeId, eventLoopSpinner, maybeDeduplicationSet = false, // false = disabled; null = not in deduplication scope yet | ||
async function buildSubtree(depGraph, nodeId, maybeDeduplicationSet = false, // false = disabled; null = not in deduplication scope yet | ||
memoizationMap = new Map()) { | ||
@@ -224,3 +222,3 @@ if (!maybeDeduplicationSet && memoizationMap.has(nodeId)) { | ||
} | ||
const subtree = await buildSubtree(depGraph, depInstId, eventLoopSpinner, maybeDeduplicationSet, memoizationMap); | ||
const subtree = await buildSubtree(depGraph, depInstId, maybeDeduplicationSet, memoizationMap); | ||
if (!subtree) { | ||
@@ -234,4 +232,4 @@ continue; | ||
} | ||
if (eventLoopSpinner.isStarving()) { | ||
await eventLoopSpinner.spin(); | ||
if (event_loop_spinner_1.eventLoopSpinner.isStarving()) { | ||
await event_loop_spinner_1.eventLoopSpinner.spin(); | ||
} | ||
@@ -238,0 +236,0 @@ memoizationMap.set(nodeId, depTree); |
@@ -49,2 +49,3 @@ { | ||
"dependencies": { | ||
"event-loop-spinner": "^2.1.0", | ||
"lodash.clone": "^4.5.0", | ||
@@ -70,3 +71,3 @@ "lodash.constant": "^3.0.0", | ||
}, | ||
"version": "1.23.1" | ||
"version": "1.24.0" | ||
} |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
102920
20
51
1545
+ Addedevent-loop-spinner@^2.1.0
+ Addedevent-loop-spinner@2.3.2(transitive)
+ Addedtslib@2.7.0(transitive)