LlamaLad7 / MixinExtras

Companion library to SpongePowered Mixin with many custom injectors for a more expressive experience.
MIT License
304 stars 17 forks source link

Broken Refmaps in beta #34

Closed mattymatty97 closed 1 year ago

mattymatty97 commented 1 year ago

Since https://github.com/LlamaLad7/MixinExtras/releases/tag/0.2.0-beta.5 fabric refmaps seems to be broken, all the entries from MixinExtras annotations are not added to the refmap causing a crash if loaded outside of dev environment

LlamaLad7 commented 1 year ago

You're gonna need to provide a lot more detail because I am certain that is not the case if it's set up properly.

mattymatty97 commented 1 year ago
configurations {
    provided
    // Make compile extend from our provided configuration so that things added to bundled end up on the compile classpath
    implementation.extendsFrom(provided)
}

dependencies {
    // To change the versions see the gradle.properties file
    minecraft "com.mojang:minecraft:${project.minecraft_version}"
    mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
    modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"

    modImplementation "carpet:fabric-carpet:${project.carpet_core_version}"
    implementation 'de.cronn:reflection-util:2.13.2'
    provided group: 'org.apache.commons', name: 'commons-collections4', version: 'latest.release'
    provided(annotationProcessor("com.github.LlamaLad7:MixinExtras:${project.mixinextast_version}"))

}

jar {
    duplicatesStrategy(DuplicatesStrategy.EXCLUDE)
    from("LICENSE") {
        rename { "${it}_${project.archivesBaseName}" }
    }
    from configurations.provided.asFileTree.files.collect { zipTree(it) }
}

build.gradle ( important parts ) beta.4-refmap.json.txt refmap file generated with beta.4 beta.8-refmap.json.txt refmap file generated with beta.8

mattymatty97 commented 1 year ago

btw i'm loving the work you've done on this it allows making mod compatibility so much easier

LlamaLad7 commented 1 year ago

I assume it's because you didn't follow the new readme which is linked in the release notes https://gist.github.com/LlamaLad7/ec597b6d02d39b8a2e35559f9fcce42f

mattymatty97 commented 1 year ago

i did try using the include(implementation(... but the output was the same i use the provided which basically merges include(implementation(

am i still missing something from the new README?

LlamaLad7 commented 1 year ago

You're missing the fact that the dependency has completely changed.

com.github.llamalad7.mixinextras:mixinextras-fabric:0.2.0-beta.8
mattymatty97 commented 1 year ago

oh... yeah i completely missed that... errr... let me test it and close the issue 😅

mattymatty97 commented 1 year ago

ok now jitpack.io requires a login for that repository which i guess is intended and restricted so i guess i'll stay on beta.4 until you do a release, thanks for your help

LlamaLad7 commented 1 year ago

It doesn't require a login afaik

mattymatty97 commented 1 year ago

image image

mattymatty97 commented 1 year ago

ok nevermind.... it worked now 🤷

Gamebuster19901 commented 1 year ago

ok now jitpack.io requires a login for that repository which i guess is intended and restricted so i guess i'll stay on beta.4 until you do a release, thanks for your help

Just a note, if this repository published artifacts to MavenLocal(), users could use gradle source dependencies instead of relying on Jitpack which is known to just stop working and break builds randomly.

Gradle would git clone the repo and build it. Then use the built binary for the project.

Here is an example of one of my projects using a pulling a custom version of brigadier from an organization I own: https://github.com/Gamebuster19901/Roll/blob/roll/settings.gradle