Skip to content

Commit afda36b

Browse files
committed
Replace Paper build check with Maven version range string
1 parent c13a158 commit afda36b

1 file changed

Lines changed: 4 additions & 43 deletions

File tree

src/main/kotlin/creator/custom/derivation/FetchPaperDependencyVersionForMcVersion.kt

Lines changed: 4 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -23,19 +23,8 @@ package com.demonwav.mcdev.creator.custom.derivation
2323
import com.demonwav.mcdev.creator.custom.PropertyDerivation
2424
import com.demonwav.mcdev.creator.custom.TemplateValidationReporter
2525
import com.demonwav.mcdev.creator.custom.types.CreatorProperty
26-
import com.demonwav.mcdev.update.PluginUtil
2726
import com.demonwav.mcdev.util.MinecraftVersions
2827
import com.demonwav.mcdev.util.SemanticVersion
29-
import io.ktor.client.*
30-
import io.ktor.client.request.*
31-
import io.ktor.client.statement.*
32-
import io.ktor.http.*
33-
import kotlinx.coroutines.runBlocking
34-
import kotlinx.serialization.json.Json
35-
import kotlinx.serialization.json.int
36-
import kotlinx.serialization.json.jsonArray
37-
import kotlinx.serialization.json.jsonObject
38-
import kotlinx.serialization.json.jsonPrimitive
3928

4029
class FetchPaperDependencyVersionForMcVersion : PreparedDerivation {
4130

@@ -46,41 +35,13 @@ class FetchPaperDependencyVersionForMcVersion : PreparedDerivation {
4635
}
4736

4837
val isMaven = (parentValues[1] as String) == "Maven"
49-
if (isMaven) {
50-
val latestBuild = fetchPaperBuildData(version.toString());
51-
return "${version}.build.${latestBuild.id}-${latestBuild.channel}"
38+
return if (isMaven) {
39+
"[${version}.build,)"
40+
} else {
41+
"${version}.build.+"
5242
}
53-
return "${version}.build.+"
5443
}
5544

56-
private fun fetchPaperBuildData(version: String): PaperBuild {
57-
return runBlocking {
58-
val client = HttpClient()
59-
val response = client.get("https://fill.papermc.io/v3/projects/paper/versions/${version}/builds", block = {
60-
this.header(
61-
"User-Agent",
62-
"minecraft-dev/${PluginUtil.pluginVersion} (https://github.com/minecraft-dev/MinecraftDev)"
63-
)
64-
})
65-
if (response.status.isSuccess()) {
66-
return@runBlocking Json.parseToJsonElement(response.bodyAsText()).jsonArray[0]
67-
.let { build ->
68-
return@let PaperBuild(
69-
build.jsonObject["id"]!!.jsonPrimitive.int,
70-
build.jsonObject["channel"]!!.jsonPrimitive.content.lowercase()
71-
)
72-
}
73-
} else {
74-
throw IllegalStateException("Failed to fetch latest Paper build for version ${version}: ${response.bodyAsText()}")
75-
}
76-
}
77-
}
78-
79-
private data class PaperBuild(
80-
val id: Int,
81-
val channel: String,
82-
);
83-
8445
companion object : PropertyDerivationFactory {
8546

8647
override fun create(

0 commit comments

Comments
 (0)