User: rednesto Date: 08 Jun 25 22:48 Revision: 410c247a99a33d693db6d56294214eb4acd3439d Summary: Merge branch '2025.1' into 2025.2 # Conflicts: # src/main/kotlin/platform/mixin/expression/MEExpressionInjector.kt TeamCity URL: https://ci.mcdev.io/viewModification.html?tab=vcsModificationFiles&modId=10068&personal=false Index: build.gradle.kts =================================================================== --- build.gradle.kts (revision 5783eac20911122b00b93b89a45211df54d99514) +++ build.gradle.kts (revision 410c247a99a33d693db6d56294214eb4acd3439d) @@ -126,7 +126,6 @@ pluginVerifier() } - testLibs(libs.test.mockJdk) testLibs(libs.test.mixin) testLibs(libs.test.spigotapi) testLibs(libs.test.bungeecord) Index: gradle.properties =================================================================== --- gradle.properties (revision 5783eac20911122b00b93b89a45211df54d99514) +++ gradle.properties (revision 410c247a99a33d693db6d56294214eb4acd3439d) @@ -23,7 +23,7 @@ ideaVersionName = 2025.2 -coreVersion = 1.8.4 +coreVersion = 1.8.5 # Silences a build-time warning because we are bundling our own kotlin library kotlin.stdlib.default.dependency = false Index: gradle/libs.versions.toml =================================================================== --- gradle/libs.versions.toml (revision 5783eac20911122b00b93b89a45211df54d99514) +++ gradle/libs.versions.toml (revision 410c247a99a33d693db6d56294214eb4acd3439d) @@ -57,7 +57,6 @@ 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" test-spigotapi = "org.spigotmc:spigot-api:1.21-R0.1-SNAPSHOT" test-bungeecord = "net.md-5:bungeecord-api:1.21-R0.3-SNAPSHOT" Index: src/main/kotlin/platform/mixin/expression/MEExpressionInjector.kt =================================================================== --- src/main/kotlin/platform/mixin/expression/MEExpressionInjector.kt (revision 5783eac20911122b00b93b89a45211df54d99514) +++ src/main/kotlin/platform/mixin/expression/MEExpressionInjector.kt (revision 410c247a99a33d693db6d56294214eb4acd3439d) @@ -23,6 +23,7 @@ import com.demonwav.mcdev.platform.mixin.util.MixinConstants import com.demonwav.mcdev.util.findContainingModifierList import com.demonwav.mcdev.util.findContainingNameValuePair +import com.demonwav.mcdev.util.parseArray import com.intellij.lang.injection.MultiHostInjector import com.intellij.lang.injection.MultiHostRegistrar import com.intellij.openapi.util.Key @@ -115,27 +116,28 @@ } } } else if (annotation.hasQualifiedName(MixinConstants.MixinExtras.EXPRESSION)) { - val valueExpr = annotation.findDeclaredAttributeValue("value") ?: continue + for (valueExpr in annotation.findDeclaredAttributeValue("value")?.parseArray { it }.orEmpty()) { - val places = mutableListOf>() - iterateConcatenation(valueExpr) { op -> - if (op is PsiLanguageInjectionHost) { - for (textRange in getTextRanges(op)) { - places += op to textRange - } - } else { - isFrankenstein = true - } - } - if (places.isNotEmpty()) { - for ((i, place) in places.withIndex()) { - val (host, range) = place - val prefix = "\ndo { ".takeIf { i == 0 } - val suffix = " }".takeIf { i == places.size - 1 } - registrar.addPlace(prefix, suffix, host, range) - } - } - } - } + val places = mutableListOf>() + iterateConcatenation(valueExpr) { op -> + if (op is PsiLanguageInjectionHost) { + for (textRange in getTextRanges(op)) { + places += op to textRange + } + } else { + isFrankenstein = true + } + } + if (places.isNotEmpty()) { + for ((i, place) in places.withIndex()) { + val (host, range) = place + val prefix = "\ndo { ".takeIf { i == 0 } + val suffix = " }".takeIf { i == places.size - 1 } + registrar.addPlace(prefix, suffix, host, range) + } + } + } + } + } registrar.frankensteinInjection(isFrankenstein)