Skip to content

Commit 38e409f

Browse files
committed
Bump minimum Gradle to 9.2.0
1 parent 927bf86 commit 38e409f

File tree

8 files changed

+58
-63
lines changed

8 files changed

+58
-63
lines changed

build.gradle

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,7 @@ plugins {
88
id 'idea'
99
id 'eclipse'
1010
id 'maven-publish'
11-
id 'io.freefair.javadoc-links'
12-
id 'net.minecraftforge.gradleutils'
11+
alias libs.plugins.gradleutils
1312
alias libs.plugins.gitversion
1413
alias libs.plugins.changelog
1514
alias libs.plugins.licenser
@@ -22,6 +21,8 @@ description = "Forge's Gradle plugin to initialize and streamline the developmen
2221
group = 'net.minecraftforge'
2322
version = gitversion.tagOffset
2423

24+
println "Version: $version"
25+
2526
java {
2627
toolchain.languageVersion = JavaLanguageVersion.of(17)
2728
withSourcesJar()
@@ -53,10 +54,6 @@ license {
5354
exclude '**/*.properties'
5455
}
5556

56-
tasks.withType(GroovyCompile).configureEach {
57-
groovyOptions.optimizationOptions.indy = true
58-
}
59-
6057
tasks.named('jar', Jar) {
6158
archiveClassifier = 'thin'
6259
}
@@ -79,7 +76,7 @@ gradlePlugin {
7976
website = gitversion.url
8077
vcsUrl = gitversion.url + '.git'
8178

82-
plugins.register('jarjar') {
79+
plugins.register('forgedev') {
8380
id = 'net.minecraftforge.forgedev'
8481
implementationClass = 'net.minecraftforge.forgedev.ForgeDevPlugin'
8582
displayName = gradleutils.displayName.get()

gradle.properties

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,3 @@ systemProp.org.gradle.unsafe.suppress-gradle-api=true
1010

1111
net.minecraftforge.gradleutils.ide.automatic.sources=true
1212
net.minecraftforge.gradleutils.compilation.defaults=true
13-
14-
net.minecraftforge.gitversion.log.version=true

gradle/wrapper/gradle-wrapper.jar

1.65 KB
Binary file not shown.

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

gradlew

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/sh
22

33
#
4-
# Copyright © 2015-2021 the original authors.
4+
# Copyright © 2015 the original authors.
55
#
66
# Licensed under the Apache License, Version 2.0 (the "License");
77
# you may not use this file except in compliance with the License.

settings.gradle

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,51 @@
11
plugins {
22
id 'org.gradle.toolchains.foojay-resolver-convention' version '1.0.0'
3-
4-
// NOTE: We need to load this into the classpath before GradleUtils for the service to load correctly
5-
id 'io.freefair.javadoc-links' version '8.14' apply false // https://plugins.gradle.org/plugin/io.freefair.javadoc-links
6-
7-
id 'net.minecraftforge.gradleutils' version '3.3.3' // https://plugins.gradle.org/plugin/net.minecraftforge.gradleutils
83
}
94

105
rootProject.name = 'forgedev'
116

12-
dependencyResolutionManagement {
13-
repositories {
14-
mavenCentral()
15-
maven gradleutils.forgeMaven
16-
maven { url = 'https://maven.moddinglegacy.com/maven' } // Gradle API
17-
//mavenLocal()
7+
// Applying plugins causes them to not have any IDE support when also applied to any build.gradle files
8+
// The workaround for now is to use this listener here so that it can stay in settings.gradle
9+
// See: https://youtrack.jetbrains.com/issue/IDEA-332061/Gradle-Missing-Code-Completion-Suggestions-for-Settings-Plugins-in-Groovy-DSL
10+
gradle.beforeProject { Project project ->
11+
project.pluginManager.withPlugin('net.minecraftforge.gradleutils') {
12+
project.repositories {
13+
mavenCentral()
14+
gradlePluginPortal()
15+
maven project.gradleutils.forgeMaven
16+
//mavenLocal()
17+
}
1818
}
19+
}
1920

20-
//@formatter:off
21-
versionCatalogs.register('libs') {
22-
plugin 'licenser', 'net.minecraftforge.licenser' version '1.2.0' // https://plugins.gradle.org/plugin/net.minecraftforge.licenser
23-
plugin 'gitversion', 'net.minecraftforge.gitversion' version '3.1.0' // https://plugins.gradle.org/plugin/net.minecraftforge.changelog
24-
plugin 'changelog', 'net.minecraftforge.changelog' version '3.1.1' // https://plugins.gradle.org/plugin/net.minecraftforge.changelog
25-
plugin 'plugin-publish', 'com.gradle.plugin-publish' version '2.0.0' // https://plugins.gradle.org/plugin/com.gradle.plugin-publish
26-
plugin 'shadow', 'com.gradleup.shadow' version '9.1.0' // https://plugins.gradle.org/plugin/com.gradleup.shadow
27-
28-
// Static Analysis
29-
library 'nulls', 'org.jetbrains', 'annotations' version '26.0.2'
30-
31-
// Gradle API
32-
// TODO [ForgeGradle][FG7][Gradle Api] REMOVE once Gradle publish their own API artifacts
33-
// Original: https://github.com/remal-gradle-api/packages/packages/760197
34-
// Mirror: https://maven.moddinglegacy.com/#browse/browse:maven-public:name%2Fremal%2Fgradle-api%2Fgradle-api%2F8.14.1
35-
version 'gradle', '9.0.0'
36-
library 'gradle', 'name.remal.gradle-api', 'gradle-api' versionRef 'gradle'
37-
38-
// GradleUtils Shared Base
39-
library 'gradleutils-shared', 'net.minecraftforge', 'gradleutils-shared' version '3.3.3'
40-
41-
library 'srgutils', 'net.minecraftforge', 'srgutils' version '0.5.14'
42-
library 'fastcsv', 'de.siegmar', 'fastcsv' version '3.7.0'
43-
44-
library 'utils-data', 'net.minecraftforge', 'json-data-utils' version '0.2.1' // https://files.minecraftforge.net/net/minecraftforge/json-data-utils/index.html
45-
library 'utils-hash', 'net.minecraftforge', 'hash-utils' version '0.1.9' // https://files.minecraftforge.net/net/minecraftforge/hash-utils/index.html
46-
library 'utils-download', 'net.minecraftforge', 'download-utils' version '0.3.1' // https://files.minecraftforge.net/net/minecraftforge/download-utils/index.html
47-
library 'utils-files', 'net.minecraftforge', 'file-utils' version '0.3.1' // https://files.minecraftforge.net/net/minecraftforge/download-utils/index.html
48-
bundle 'utils', ['utils-data', 'utils-hash', 'utils-download', 'utils-files']
49-
}
50-
//@formatter:on
21+
//@formatter:off
22+
dependencyResolutionManagement.versionCatalogs.register('libs') {
23+
version 'gradleutils', '3.3.21'
24+
25+
plugin 'licenser', 'net.minecraftforge.licenser' version '1.2.0'
26+
plugin 'gradleutils', 'net.minecraftforge.gradleutils' versionRef 'gradleutils'
27+
plugin 'gitversion', 'net.minecraftforge.gitversion' version '3.1.6'
28+
plugin 'changelog', 'net.minecraftforge.changelog' version '3.1.3'
29+
plugin 'plugin-publish', 'com.gradle.plugin-publish' version '2.0.0'
30+
plugin 'shadow', 'com.gradleup.shadow' version '9.2.2'
31+
32+
// Static Analysis
33+
library 'nulls', 'org.jetbrains', 'annotations' version '26.0.2-1'
34+
35+
// Gradle API
36+
version 'gradle', '9.2.0'
37+
library 'gradle', 'name.remal.gradle-api', 'gradle-api' versionRef 'gradle'
38+
39+
// GradleUtils Shared Base
40+
library 'gradleutils-shared', 'net.minecraftforge', 'gradleutils-shared' versionRef 'gradleutils'
41+
42+
library 'srgutils', 'net.minecraftforge', 'srgutils' version '0.5.14'
43+
library 'fastcsv', 'de.siegmar', 'fastcsv' version '3.7.0'
44+
45+
library 'utils-data', 'net.minecraftforge', 'json-data-utils' version '0.2.1' // https://files.minecraftforge.net/net/minecraftforge/json-data-utils/index.html
46+
library 'utils-hash', 'net.minecraftforge', 'hash-utils' version '0.1.9' // https://files.minecraftforge.net/net/minecraftforge/hash-utils/index.html
47+
library 'utils-download', 'net.minecraftforge', 'download-utils' version '0.3.1' // https://files.minecraftforge.net/net/minecraftforge/download-utils/index.html
48+
library 'utils-files', 'net.minecraftforge', 'file-utils' version '0.3.1' // https://files.minecraftforge.net/net/minecraftforge/download-utils/index.html
49+
bundle 'utils', ['utils-data', 'utils-hash', 'utils-download', 'utils-files']
5150
}
51+
//@formatter:on

src/main/groovy/net/minecraftforge/forgedev/Constants.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66

77
/// The package-private constants used throughout ForgeGradle.
88
final class Constants {
9+
private Constants() { }
10+
911
static final String FORGE_MAVEN = "https://maven.minecraftforge.net/";
1012
static final String MAVEN_CENTRAL = "https://repo1.maven.org/maven2/";
1113

src/main/groovy/net/minecraftforge/forgedev/ForgeDevExtension.java

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
*/
55
package net.minecraftforge.forgedev;
66

7-
import groovy.lang.Closure;
87
import net.minecraftforge.forgedev.tasks.compat.LegacyExtractZip;
98
import net.minecraftforge.forgedev.tasks.compat.LegacyMergeFilesTask;
109
import net.minecraftforge.forgedev.tasks.filtering.LegacyFilterNewJar;
@@ -22,8 +21,7 @@
2221
import net.minecraftforge.forgedev.tasks.patching.diff.GeneratePatches;
2322
import net.minecraftforge.forgedev.tasks.srg2source.ApplyRangeMap;
2423
import net.minecraftforge.forgedev.tasks.srg2source.ExtractRangeMap;
25-
import net.minecraftforge.gradleutils.shared.Closures;
26-
import net.minecraftforge.util.data.json.PatcherConfig;
24+
import org.gradle.api.Action;
2725
import org.gradle.api.Project;
2826
import org.gradle.api.artifacts.repositories.MavenArtifactRepository;
2927
import org.gradle.api.file.Directory;
@@ -47,6 +45,7 @@
4745
import java.nio.file.Files;
4846
import java.util.function.Function;
4947

48+
// TODO [ForgeDev] Hide this and make a public interface
5049
@VisibleForTesting
5150
public abstract class ForgeDevExtension {
5251
public static final String NAME = "forgedev";
@@ -66,12 +65,11 @@ public ForgeDevExtension(ForgeDevPlugin plugin, Project project) {
6665
}
6766

6867
// NOTE: Pass into RepositoryHandler#maven
69-
@SuppressWarnings("rawtypes")
70-
public Closure getMaven() {
71-
return Closures.<MavenArtifactRepository>consumer(repo -> {
72-
repo.setName("ForgeDevMaven");
68+
public Action<? super MavenArtifactRepository> getMavenizer() {
69+
return repo -> {
70+
repo.setName("Mavenizer");
7371
repo.setUrl(this.mavenizerRepo);
74-
});
72+
};
7573
}
7674

7775
@VisibleForTesting
@@ -82,8 +80,8 @@ public DirectoryProperty getMavenizerRepo() {
8280
private void setup(ForgeDevPlugin plugin, Project project) {
8381
var tasks = project.getTasks();
8482

85-
var legacyPatcher = project.getExtensions().create("patcher", LegacyPatcherExtension.class);
86-
var legacyMcp = project.getExtensions().create("mcp", LegacyMCPExtension.class);
83+
var legacyPatcher = project.getExtensions().create(LegacyPatcherExtension.EXTENSION_NAME, LegacyPatcherExtension.class);
84+
var legacyMcp = project.getExtensions().create(LegacyMCPExtension.EXTENSION_NAME, LegacyMCPExtension.class);
8785
var java = project.getExtensions().getByType(JavaPluginExtension.class);
8886

8987
var jar = tasks.named(JavaPlugin.JAR_TASK_NAME, Jar.class);

0 commit comments

Comments
 (0)