This document describes the breaking changes made across major versions of ModDevGradle. For a full list of changes, and in which versions they were introduced, please refer to the changelog, which can be found on the project page.
The breaking changes in this major version should not affect most projects. Nonetheless, every single breaking change is documented here, along with a suggested fix.
- Changes to access transformer and interface injection data publishing.
accessTransformers.publish
andinterfaceInjectionData.publish
syntax was changed.accessTransformers.published
andinterfaceInjectionData.published
were removed.- This publishing feature was broken in ModDevGradle 1, and these changes were made to fix it.
- To fix: Refer to the README for documentation of the new syntax.
- Parchment: Specifying only the Minecraft version or only the mapping version will now fail.
- This is meant to catch usage mistakes.
- Run
beforeTask
s do not run on IDE project sync anymore.- To run a task on sync, use
neoForge.ideSyncTask <task>
.
- To run a task on sync, use
- Removal of
dependency
andextendsFrom
inside theneoForge.mods {}
block.- These functions generally do not work, and were removed to reduce confusion.
sourceSet <sourceSet>
should be used instead. If this is not sufficient, please open an issue.
mods
cannot contain the same source set multiple times.- This is meant to catch usage mistakes.
- The
mods
set in runs was renamed toloadedMods
to solve the name clash withmods
in theneoForge
block. This makes it easier to define which mods should be loaded. Available mods can now be referred to usingmods.<name>
instead ofneoForge.mods.<name>
.- Example fix:
neoForge {
runs {
client {
/* ... */
- mods = [neoForge.mods.mod1, neoForge.mods.mod2]
+ loadedMods = [mods.mod1, mods.mod2]
}
}
}
- The
neoFormRuntime
property on theneoForge
extension has been moved to the top-level. This should only affect advanced users. This was done in an effort to make the NFRT-specific tasks in MDG more reusable by projects not making use of a generic mod development environment. TheadditionalResults
property moved toneoForge.additionalMinecraftArtifacts
since it is more sensible to apply this only to MDGscreateMinecraftArtifacts
task rather than all NFRT tasks including user-created ones.- To fix, move your NFRT settings block to the project, and move
additionalResults
toadditionalMinecraftArtifacts
in theneoForge
extension.
- To fix, move your NFRT settings block to the project, and move
- The
idea
plugin is only applied when syncing with IntelliJ.- If you want to use the
idea { }
block in your build script, add theidea
plugin explicitly.
- If you want to use the