Incompatible with Quilt
Sunconure11 opened this issue · 10 comments
What happened?
Tried to load the Fabric build on Quilt. Got an error instead. Of note is that there is a separate set of libraries for Kotlin on Quilt.
Loader
fabric
Mod Version
2.1.0
Minecraft Version
1.19
Relevant log output
https://gist.github.com/Sunconure11/f7c8feb00c1955691688397334705080
Have you tried what happens if you add qkl?
@PssbleTrngle it seems like the issue is related to the 1.19.2 version of slice and dice requiring a newer version of kotlin libraries than provided by qkl. I was actually able to run the mod by removing qkl as it would use the dependency of fabric-language-kotlin from another mod. you can actually see this in the above gist:
Dependency for {org.quiltmc.loader.impl.plugin.fabric.FabricModOption 'sliceanddice' from <mods>/sliceanddice-fabric-2.1.0.jar} on fabric-language-kotlin versions [>1.9.1+kotlin.1.8.10] (1 valid options, 1 invalid options)
+ {org.quiltmc.loader.impl.plugin.fabric.FabricModOption 'fabric-language-kotlin' from <mods>/direbats-3.1.0+1.19.2.jar!/META-INF/jars/fabric-language-kotlin-1.9.3+kotlin.1.8.20.jar} {org.quiltmc.loader.impl.plugin.fabric.FabricModOption 'fabric-language-kotlin' from <mods>/direbats-3.1.0+1.19.2.jar!/META-INF/jars/fabric-language-kotlin-1.9.3+kotlin.1.8.20.jar}
x provided mod 'fabric-language-kotlin' from {org.quiltmc.loader.impl.plugin.quilt.QuiltModOption 'qkl_core' from <mods>/quilt-kotlin-libraries-1.0.2+kt.1.8.0+flk.1.9.0.jar!/META-INF/jars/quilt-kotlin-libraries-core-1.0.2+kt.1.8.0+flk.1.9.0.jar} {org.quiltmc.loader.impl.plugin.quilt.QuiltModOption 'qkl_core' from <mods>/quilt-kotlin-libraries-1.0.2+kt.1.8.0+flk.1.9.0.jar!/META-INF/jars/quilt-kotlin-libraries-core-1.0.2+kt.1.8.0+flk.1.9.0.jar}
This specifies that DireBats actually has a useable version and is causing a conflict. removing qkl its likely that the modpack will launch however removing direbats will result in a different error such as:
Terminal:
-- Error 1 --
Create Slice & Dice requires version [1.9.1+kotlin.1.8.10, ∞) of fabric-language-kotlin, which is missing!
Create Slice & Dice is loaded from /home/*/.var/app/org.prismlauncher.PrismLauncher/data/PrismLauncher/instances/[modpack]/.minecraft/mods/sliceanddice-fabric-2.1.2-fabric.jar
They already have, but the way QKL is set up, they don't have the manpower to maintain both QKL and FLK for all versions, so they chose to update FLK separately as a standalone core file: https://www.curseforge.com/minecraft/mc-mods/qkl/download/4490417. Note: CF App is incapable of downloading additional files like that, so it's not suitable for modpacks, ask CF to add that feature.
Alternatively, you can just use FLK itself, it's fully compatible with Quilt, and, unless you are using QKL specific mods, there's no reason to prefer QKL for the time being.
Sounds like qkl would need to update their kotlin libraries for this mod to work on quilt
i feel like there's an important question to ask, though. does the mod use any features from the two versions of FLK that haven't been ported over to QKL? the only thing that i can see the FLK updates being about is just bumping up the versions of the bundled libraries, so a part of me is a little skeptical about whether it's actually all that important for slice and dice to require the newest version of FKL, when it could possibly just require a lower version, such as 1.9.4 which is currently the newest version of FLK that QKL supports.
i don't know though, i barely know anything when it comes to minecraft modding. i am simply curious whether slice and dice outright requires those new versions of FKL...
turns out that i didn't read properly, the latest QKL version for 1.19.2 is actually 1.9.0, and for some reason it seems like they don't backport QKL although there is some more stuff that i found that i don't understand at all.
no it's definitly not important, I very likely do not need the newest version of fabric-language-kotlin.
If I understand correctly, it's because I am requiring a newer version than 1.9.1+kotlin.1.8.10
here.
But shouldn't that be low enought for gqk than, if they support up to 1.9.4
?
I could also just replace it with a wildcard *
, because most people would probably use the latest version of either of the libraries anyway and it's only important that they have installed them at all