FG_7.0 Changelog 7.0.0-beta ========== - 7.0.0-beta.29 Allow providers to be added to run config args - 7.0.0-beta.28 Fix new project imports failing Attempted to find a Metadata ZIP that doesn't exist on first project sync. - 7.0.0-beta.27 Fix syncMinecraftMaven not respecting output directory The `minecraft` extension sets its own output for the Mavenizer internally. I forgot to link it to the task. This fixes that so the Mavenizer should work now. - 7.0.0-beta.26 Change default mavenizer output to local caches Forgot to do this in the last commit, whoops. - 7.0.0-beta.25 Bump Mavenizer, fixing Parchment source issues - 7.0.0-beta.24 Use Tool definition system from GradleUtils Shared - 7.0.0-beta.23 Allow AccessTransformer opt-in from minecraft extension - 7.0.0-beta.22 try/catch in provider callable, fixes new project import - 7.0.0-beta.21 Gradle 9, independence from AT plugin, major update to DSL This major update to the ForgeGradle 7 Beta introduces the Gradle 9 requirement and is now completely built on Java, instead of being a Java/Groovy mixture. There are two major changes beta testers should be aware of. First, the `net.minecraftforge.accesstransformers` plugin *must be applied* before ForgeGradle in order to use AccessTransformers. Additionally, ATs must be declared within the Minecraft dependency itself, not within the Minecraft extension block. ```groovy dependencies { implementation minecraft.dep(libs.forge) { accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') } } ``` Additionally, mappings can be declared either within the Minecraft extension or in the Minecraft dependency, with priority given to the latter. Second, this update now includes **very experimental** support for drop-in replacing the tools used by ForgeGradle, which are currently the Minecraft Mavenizer and Slime Launcher. Things could break and the implementation is very ugly, but will be stabilized in due time. Also, there is currently no IDE linting supported (because Gradle sucks). ```groovy fgtools { mavenizer { classpath = 'me.jonathing:mavenizer:1.0.0' } } ``` There is currently no other documentation on this and should be used at your own risk if you want to test custom versions of the mavenizer and launcher. Everything you need will be found in `net.minecraftforge.gradle.ToolsExtension` and `net.minecraftforge.gradle.ToolsDefinition`. - 7.0.0-beta.20 Fix incorrect for loop potentially causing issues at build failure - 7.0.0-beta.19 Bump SlimeLauncher for faster runs in dev - 7.0.0-beta.18 Attempt to fix IDE linting for MinecraftExtension.ForProject - 7.0.0-beta.17 Fix discrepancies between public and impl types - 7.0.0-beta.16 Bump Mavenizer, SL, and Utils - 7.0.0-beta.15 Small unpushed fixes (more to come later) - 7.0.0-beta.14 Dependency constaints are now created using only the module - 7.0.0-beta.13 Add preliminary parchment support (#969) - 7.0.0-beta.12 Attributes are now requested via constraints - 7.0.0-beta.11 Automatically merge sourceSet destinations (can opt-out) use net.minecraftforge.gradle.mergeSourceSets=false in gradle.properties or as a system property - 7.0.0-beta.10 Preliminary support for multiple MC deps - The primary limitation is that run configurations cannot be generated for source sets with more than one Minecraft dependency - 7.0.0-beta.9 Centralized usage of caches, tools, and utils in the plugin - 7.0.0-beta.8 A few renames to make more sense - MinecraftMavenExec -> SyncMinecraftMaven - DefaultTools -> Tools (this is already package-private) - 7.0.0-beta.7 Refactor usage of lazies and closures - 7.0.0-beta.6 Fixed task requests not respecting project path Fixes attempting to sync the Minecraft Mavenizer with other projects - 7.0.0-beta.5 Move the plugin back to the root project - 7.0.0-beta.4 Fix Windows failing to execute run configs - 7.0.0-beta.3 Allow workflow to be triggered manually - 7.0.0-beta.2 Fix issues with declaring clean run configs - 7.0.0-beta.1 Disable config cache as it doesn't work with publishing - 7.0.0-beta.0 Initial public commit All work has been condensed into this single commit. Thank you to Mango for helping me with the initial development process. He is credited in this commit as a co-author. Co-authored-by: RealMangoRage <64402114+RealMangorage@users.noreply.github.com>