PatchworkMC / patchwork-api

An attempt to reimplement the Minecraft Forge API on Fabric
GNU Lesser General Public License v2.1
282 stars 48 forks source link

Allow for subprojects that aren't fabric mods #201

Open kitlith opened 3 years ago

kitlith commented 3 years ago

This is accomplished by moving away from subprojects and allprojects closures to using precompiled script plugins to accomplish the same thing. We can now opt out of the things in subprojects/allprojects by simply not applying the relevant plugin.

loom shareCaches won't quite work (and thus running this build in parallel) until https://github.com/FabricMC/fabric-loom/pull/299 is merged and present in a release of fabric-loom.

(Motivated by wanting to create an annotation processor as a subproject, which is decidedly not a fabric mod.)

kitlith commented 3 years ago

oh. i guess that means we'll have to rerun the checks after the fabric-loom pr gets merged. oh well.

kitlith commented 3 years ago

There is one occurance of subprojects and one occurance of allprojects left, but i'm not quite sure what to do with them:

https://github.com/kitlith/patchwork-api/blob/dd401eb74afdba3310b41564b8319d0e14239efb/build.gradle#L95-L103

https://github.com/kitlith/patchwork-api/blob/dd401eb74afdba3310b41564b8319d0e14239efb/build.gradle#L44-L46

kitlith commented 3 years ago

fabric-loom now includes the PR, will double check some stuff and re-run checks.

TheGlitch76 commented 3 years ago

Leaving this open as a curiosity--I'm planning on having special processors be their own projects, but I may change my mind.

kitlith commented 3 years ago

fair 'nuff, lmk if you ever want me to rebase or whatever.