User: kyle wood Date: 18 Oct 22 00:02 Revision: 91e691e533725ce56bcdb73b66d5ad2f690610c2 Summary: Merge branch '2021.3' into 2022.1 TeamCity URL: https://ci.mcdev.io/viewModification.html?tab=vcsModificationFiles&modId=8170&personal=false Index: build.gradle.kts =================================================================== --- build.gradle.kts (revision d12c7fc70a609f6a6aeed09212c31a92794f8a96) +++ build.gradle.kts (revision 91e691e533725ce56bcdb73b66d5ad2f690610c2) @@ -17,7 +17,7 @@ import org.jlleitschuh.gradle.ktlint.tasks.BaseKtLintCheckTask plugins { - kotlin("jvm") version "1.7.10" + kotlin("jvm") version "1.7.20" java mcdev groovy @@ -85,6 +85,8 @@ implementation(libs.mappingIo) implementation(libs.bundles.asm) + implementation(libs.bundles.fuel) + jflex(libs.jflex.lib) jflexSkeleton(libs.jflex.skeleton) { artifact { Index: gradle/libs.versions.toml =================================================================== --- gradle/libs.versions.toml (revision d12c7fc70a609f6a6aeed09212c31a92794f8a96) +++ gradle/libs.versions.toml (revision 91e691e533725ce56bcdb73b66d5ad2f690610c2) @@ -1,8 +1,9 @@ [versions] -coroutines = "1.6.3" +coroutines = "1.6.4" junit = "5.9.0" junit-platform = "1.9.0" asm = "9.3" +fuel = "2.3.1" [libraries] coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "coroutines" } @@ -26,6 +27,9 @@ asm-tree = { module = "org.ow2.asm:asm-tree", version.ref = "asm" } asm-analysis = { module = "org.ow2.asm:asm-analysis", version.ref = "asm" } +fuel = { module = "com.github.kittinunf.fuel:fuel", version.ref = "fuel" } +fuel-coroutines = { module = "com.github.kittinunf.fuel:fuel-coroutines", version.ref = "fuel" } + # Testing test-mockJdk = "org.jetbrains.idea:mock-jdk:1.7-4d76c50" test-mixin = "org.spongepowered:mixin:0.8.5" @@ -39,3 +43,4 @@ [bundles] coroutines = ["coroutines-core", "coroutines-jdk8", "coroutines-swing"] asm = ["asm", "asm-tree", "asm-analysis"] +fuel = ["fuel", "fuel-coroutines"] Index: src/main/kotlin/util/utils.kt =================================================================== --- src/main/kotlin/util/utils.kt (revision d12c7fc70a609f6a6aeed09212c31a92794f8a96) +++ src/main/kotlin/util/utils.kt (revision 91e691e533725ce56bcdb73b66d5ad2f690610c2) @@ -34,6 +34,7 @@ import com.intellij.psi.PsiFile import java.util.Locale import kotlin.math.min +import kotlin.reflect.KClass import org.jetbrains.concurrency.Promise import org.jetbrains.concurrency.runAsync @@ -242,6 +243,7 @@ // Using the ugly TypeToken approach we can use any complex generic signature, including // nested generics inline fun Gson.fromJson(text: String): T = fromJson(text, object : TypeToken() {}.type) +fun Gson.fromJson(text: String, type: KClass): T = fromJson(text, type.java) fun Map.containsAllKeys(vararg keys: K) = keys.all { this.containsKey(it) }