[Gradle, JS] Fix packages with hardcoded display name
^KT-45621 fixed
This commit is contained in:
committed by
TeamCityServer
parent
fae0aa42c4
commit
f318951b64
+8
-4
@@ -7,12 +7,13 @@ package org.jetbrains.kotlin.generators.gradle.targets.js
|
||||
|
||||
data class Package(
|
||||
val name: String,
|
||||
val version: String
|
||||
val version: String,
|
||||
val displayName: String
|
||||
) {
|
||||
// Used in velocity template
|
||||
@Suppress("unused")
|
||||
fun camelize(): String =
|
||||
name
|
||||
displayName
|
||||
.split("-")
|
||||
.mapIndexed { index, item -> if (index == 0) item else item.capitalize() }
|
||||
.joinToString("")
|
||||
@@ -21,16 +22,19 @@ data class Package(
|
||||
sealed class PackageInformation {
|
||||
abstract val name: String
|
||||
abstract val versions: Set<String>
|
||||
abstract val displayName: String
|
||||
}
|
||||
|
||||
data class RealPackageInformation(
|
||||
override val name: String,
|
||||
override val versions: Set<String>
|
||||
override val versions: Set<String>,
|
||||
override val displayName: String = name
|
||||
) : PackageInformation()
|
||||
|
||||
data class HardcodedPackageInformation(
|
||||
override val name: String,
|
||||
val version: String
|
||||
val version: String,
|
||||
override val displayName: String = name
|
||||
) : PackageInformation() {
|
||||
override val versions: Set<String> = setOf(version)
|
||||
}
|
||||
+25
-6
@@ -22,16 +22,35 @@ class VersionFetcher : AutoCloseable {
|
||||
return coroutineScope {
|
||||
npmPackages
|
||||
.filter { it.version != null }
|
||||
.map { HardcodedPackageInformation(it.displayName, it.version!!) } +
|
||||
.map {
|
||||
HardcodedPackageInformation(
|
||||
it.name,
|
||||
it.version!!,
|
||||
it.displayName
|
||||
)
|
||||
} +
|
||||
npmPackages
|
||||
.filter { it.version == null }
|
||||
.map { async { it.displayName to fetchPackageInformationAsync(it.name) } }
|
||||
.map {
|
||||
async {
|
||||
val fetched = fetchPackageInformationAsync(it.name)
|
||||
object {
|
||||
val name = it.name
|
||||
val displayName = it.displayName
|
||||
val fetched = fetched
|
||||
}
|
||||
}
|
||||
}
|
||||
.map { fetched ->
|
||||
val (packageName, value) = fetched.await()
|
||||
val fetchedPackageInformation = Gson().fromJson(value, FetchedPackageInformation::class.java)
|
||||
val await = fetched.await()
|
||||
val name = await.name
|
||||
val displayName = await.displayName
|
||||
val awaitFetched = await.fetched
|
||||
val fetchedPackageInformation = Gson().fromJson(awaitFetched, FetchedPackageInformation::class.java)
|
||||
RealPackageInformation(
|
||||
packageName,
|
||||
fetchedPackageInformation.versions.keys
|
||||
name,
|
||||
fetchedPackageInformation.versions.keys,
|
||||
displayName
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -65,7 +65,8 @@ fun findLastVersions(packages: List<PackageInformation>): List<Package> {
|
||||
|
||||
Package(
|
||||
packageInformation.name,
|
||||
maximumVersion
|
||||
maximumVersion,
|
||||
packageInformation.displayName
|
||||
)
|
||||
}
|
||||
}
|
||||
+3
-3
@@ -11,9 +11,9 @@ package org.jetbrains.kotlin.gradle.targets.js
|
||||
// DO NOT MODIFY DIRECTLY! Use org.jetbrains.kotlin.generators.gradle.targets.js.MainKt
|
||||
class NpmVersions {
|
||||
val dukat = NpmPackageVersion("dukat", "0.5.8-rc.4")
|
||||
val webpack4 = NpmPackageVersion("webpack4", "4.46.0")
|
||||
val sourceMapLoader1 = NpmPackageVersion("sourceMapLoader1", "1.1.3")
|
||||
val webpack = NpmPackageVersion("webpack", "5.26.3")
|
||||
val webpack4 = NpmPackageVersion("webpack", "4.46.0")
|
||||
val sourceMapLoader1 = NpmPackageVersion("source-map-loader", "1.1.3")
|
||||
val webpack = NpmPackageVersion("webpack", "5.27.1")
|
||||
val webpackCli = NpmPackageVersion("webpack-cli", "4.5.0")
|
||||
val webpackBundleAnalyzer = NpmPackageVersion("webpack-bundle-analyzer", "4.4.0")
|
||||
val webpackDevServer = NpmPackageVersion("webpack-dev-server", "3.11.2")
|
||||
|
||||
Reference in New Issue
Block a user