Gradle, js, yarn: store resolved version and integrity hash to NpmDependency

This commit is contained in:
Sergey Rostov
2019-07-07 17:24:05 +03:00
parent d051748e2b
commit d1789b07ad
2 changed files with 6 additions and 0 deletions
@@ -41,6 +41,8 @@ data class NpmDependency(
internal var parent: NpmDependency? = null
internal val dependencies = mutableSetOf<NpmDependency>()
internal var resolvedVersion: String? = null
internal var integrity: String? = null
override fun resolve(transitive: Boolean): MutableSet<File> {
val npmPackage = resolveProject() ?: return mutableSetOf()
@@ -46,6 +46,8 @@ abstract class YarnBasics : NpmApi {
fun resolveRecursively(src: NpmDependency): NpmDependency {
val copy = visited[src]
if (copy != null) {
src.resolvedVersion = copy.resolvedVersion
src.integrity = copy.integrity
src.dependencies.addAll(copy.dependencies)
return src
}
@@ -54,6 +56,8 @@ abstract class YarnBasics : NpmApi {
val key = YarnLock.key(src.key, src.version)
val deps = byKey[key]
if (deps != null) {
src.resolvedVersion = deps.version
src.integrity = deps.integrity
src.dependencies.addAll(deps.dependencies.map { dep ->
val scopedName = dep.scopedName
val child = NpmDependency(