Skip to content
37 changes: 18 additions & 19 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,48 +15,47 @@
* along with Baritone. If not, see <https://www.gnu.org/licenses/>.
*/

plugins {
id "com.gradleup.shadow" version "8.3.5"
}

allprojects {
apply plugin: 'java'
apply plugin: "java"
apply plugin: "xyz.wagyourtail.unimined"
apply plugin: "maven-publish"
apply plugin: "com.gradleup.shadow"

archivesBaseName = rootProject.archives_base_name

def vers = ""
try {
vers = 'git describe --always --tags --first-parent --dirty'.execute().text.trim()
vers = "git describe --always --tags --first-parent --dirty".execute().text.trim()
} catch (Exception e) {
println "Version detection failed: " + e
}
if (!vers.startsWith("v")) {
println "using version number: " + rootProject.mod_version
println "using version number: ${rootProject.mod_version}"
version = rootProject.mod_version
} else {
version = vers.substring(1)
println "Detected version " + version
}
group = rootProject.maven_group

sourceCompatibility = targetCompatibility = JavaVersion.toVersion(project.java_version)

java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(sourceCompatibility.majorVersion.toInteger()))
}
}
java.toolchain.languageVersion = JavaLanguageVersion.of(sourceCompatibility.majorVersion.toInteger())

repositories {
maven {
name = 'spongepowered-repo'
url = 'https://repo.spongepowered.org/repository/maven-public/'
name = "spongepowered-repo"
url = "https://repo.spongepowered.org/repository/maven-public/"
}
maven {
name = 'fabric-maven'
url = 'https://maven.fabricmc.net/'
name = "fabric-maven"
url = "https://maven.fabricmc.net/"
}
maven {
name = 'impactdevelopment-repo'
url = 'https://impactdevelopment.github.io/maven/'
name = "impactdevelopment-repo"
url = "https://impactdevelopment.github.io/maven/"
}
maven {
name = "ldtteam"
Expand All @@ -72,8 +71,8 @@ allprojects {
}
mavenCentral()
maven {
name = 'babbaj-repo'
url = 'https://babbaj.github.io/maven/'
name = "babbaj-repo"
url = "https://babbaj.github.io/maven/"
}
}

Expand Down Expand Up @@ -147,7 +146,7 @@ jar {
}

javadoc {
options.addStringOption('Xwerror', '-quiet') // makes the build fail on travis when there is a javadoc error
options.addStringOption("Xwerror", "-quiet") // makes the build fail on travis when there is a javadoc error
options.linkSource true
options.encoding "UTF-8" // allow emoji in comments :^)
source = sourceSets.api.allJava
Expand Down
22 changes: 11 additions & 11 deletions buildSrc/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,27 +18,27 @@
repositories {
mavenLocal()
maven {
name = 'WagYourMaven'
url = 'https://maven.wagyourtail.xyz/releases'
name = "WagYourMaven"
url = "https://maven.wagyourtail.xyz/releases"
}
maven {
name = 'ForgeMaven'
url = 'https://maven.minecraftforge.net/'
name = "ForgeMaven"
url = "https://maven.minecraftforge.net/"
}
maven {
name = 'FabricMaven'
url = 'https://maven.fabricmc.net/'
name = "FabricMaven"
url = "https://maven.fabricmc.net/"
}
maven {
name = 'NeoForgedMaven'
url = 'https://maven.neoforged.net/'
name = "NeoForgedMaven"
url = "https://maven.neoforged.net/"
}
mavenCentral()
}

dependencies {
implementation group: 'com.google.code.gson', name: 'gson', version: '2.9.0'
implementation group: 'commons-io', name: 'commons-io', version: '2.7'
implementation group: "com.google.code.gson", name: "gson", version: "2.9.1"
implementation group: "commons-io", name: "commons-io", version: "2.20.0"

implementation group: 'xyz.wagyourtail.unimined', name: 'xyz.wagyourtail.unimined.gradle.plugin', version: '1.0.5'
implementation group: "xyz.wagyourtail.unimined", name: "xyz.wagyourtail.unimined.gradle.plugin", version: "1.3.15"
}
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ protected String formatVersion(String string) {
}

protected Path getRelativeFile(String file) {
return Paths.get(new File(getProject().getBuildDir(), file).getAbsolutePath());
return getProject().getLayout().getBuildDirectory().file(file).get().getAsFile().toPath();
}

protected Path getRootRelativeFile(String file) {
Expand Down
62 changes: 20 additions & 42 deletions buildSrc/src/main/java/baritone/gradle/task/ProguardTask.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,8 @@
package baritone.gradle.task;

import baritone.gradle.util.Determinizer;
import org.gradle.api.plugins.JavaPluginConvention;
import org.gradle.api.tasks.Input;
import org.gradle.api.tasks.SourceSetContainer;
import org.gradle.api.tasks.TaskAction;
import org.gradle.api.tasks.TaskCollection;
import org.gradle.api.tasks.compile.ForkOptions;
import org.gradle.api.tasks.compile.JavaCompile;
import org.gradle.internal.jvm.Jvm;
import org.gradle.api.plugins.JavaPluginExtension;
import org.gradle.api.tasks.*;
import org.gradle.jvm.toolchain.JavaLanguageVersion;
import org.gradle.jvm.toolchain.JavaLauncher;
import org.gradle.jvm.toolchain.JavaToolchainService;
Expand All @@ -39,6 +33,7 @@
import java.nio.file.StandardCopyOption;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Stream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
Expand Down Expand Up @@ -112,10 +107,8 @@ private void extractProguard() throws Exception {
}

private JavaLauncher getJavaLauncherForProguard() {
var toolchains = getProject().getExtensions().getByType(JavaToolchainService.class);
var toolchain = toolchains.launcherFor((spec) -> {
spec.getLanguageVersion().set(JavaLanguageVersion.of(getProject().findProperty("java_version").toString()));
}).getOrNull();
JavaToolchainService toolchains = getProject().getExtensions().getByType(JavaToolchainService.class);
JavaLauncher toolchain = toolchains.launcherFor((spec) -> spec.getLanguageVersion().set(JavaLanguageVersion.of(getProject().findProperty("java_version").toString()))).getOrNull();

if (toolchain == null) {
throw new IllegalStateException("Java toolchain not found");
Expand All @@ -127,7 +120,7 @@ private JavaLauncher getJavaLauncherForProguard() {
private void generateConfigs() throws Exception {
Files.copy(getRootRelativeFile(PROGUARD_CONFIG_TEMPLATE), getTemporaryFile(PROGUARD_CONFIG_DEST), StandardCopyOption.REPLACE_EXISTING);

// Setup the template that will be used to derive the API and Standalone configs
// Set up the template that will be used to derive the API and Standalone configs
List<String> template = Files.readAllLines(getTemporaryFile(PROGUARD_CONFIG_DEST));
template.add(0, "-injars '" + this.artifactPath.toString() + "'");
template.add(1, "-outjars '" + this.getTemporaryFile(PROGUARD_EXPORT_PATH) + "'");
Expand All @@ -146,7 +139,7 @@ private void generateConfigs() throws Exception {
}

{
// Discover all of the libraries that we will need to acquire from gradle
// Discover all the libraries that we will need to acquire from gradle
final Stream<File> dependencies = acquireDependencies()
// remove MCP mapped jar, and nashorn
.filter(f -> !f.toString().endsWith("-recomp.jar") && !f.getName().startsWith("nashorn") && !f.getName().startsWith("coremods"));
Expand Down Expand Up @@ -175,7 +168,13 @@ private void generateConfigs() throws Exception {
}

private Stream<File> acquireDependencies() {
return getProject().getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().findByName("main").getCompileClasspath().getFiles()
return getProject()
.getExtensions()
.getByType(JavaPluginExtension.class)
.getSourceSets()
.getByName("main")
.getCompileClasspath()
.getFiles()
.stream()
.filter(File::isFile);
}
Expand All @@ -190,25 +189,6 @@ private void proguardStandalone() throws Exception {
Determinizer.determinize(this.proguardOut.toString(), this.artifactStandalonePath.toString(), List.of(), false);
}

private static final class Pair<A, B> {
public final A a;
public final B b;

private Pair(final A a, final B b) {
this.a = a;
this.b = b;
}

@Override
public String toString() {
return "Pair{" +
"a=" + this.a +
", " +
"b=" + this.b +
'}';
}
}

private void cleanup() {
try {
Files.delete(this.proguardOut);
Expand All @@ -227,13 +207,11 @@ private void runProguard(Path config) throws Exception {

Path workingDirectory = getTemporaryFile("");

getProject().javaexec(spec -> {
spec.workingDir(workingDirectory.toFile());
spec.args("@" + workingDirectory.relativize(config));
spec.classpath(getTemporaryFile(String.format(PROGUARD_JAR, proguardVersion)));

spec.executable(getJavaLauncherForProguard().getExecutablePath().getAsFile());
}).assertNormalExitValue().rethrowFailure();
getProject().javaexec(javaExecSpec -> {
javaExecSpec.workingDir(workingDirectory.toFile());
javaExecSpec.args("@" + workingDirectory.relativize(config));
javaExecSpec.classpath(getTemporaryFile(String.format(PROGUARD_JAR, proguardVersion)));
javaExecSpec.executable(getJavaLauncherForProguard().getExecutablePath().getAsFile());
});
}

}
9 changes: 3 additions & 6 deletions fabric/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,6 @@
import baritone.gradle.task.CreateDistTask
import baritone.gradle.task.ProguardTask

plugins {
id "com.github.johnrengelman.shadow" version "8.0.0"
}

archivesBaseName = archivesBaseName + "-fabric"

unimined.minecraft {
Expand Down Expand Up @@ -77,12 +73,13 @@ components.java {
}
}

task proguard(type: ProguardTask) {
tasks.register("proguard", ProguardTask) {
proguardVersion "7.2.1"
compType "fabric"
}

task createDist(type: CreateDistTask, dependsOn: proguard) {
tasks.register("createDist", CreateDistTask) {
dependsOn proguard
compType "fabric"
}

Expand Down
21 changes: 9 additions & 12 deletions forge/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,22 @@
import baritone.gradle.task.CreateDistTask
import baritone.gradle.task.ProguardTask

plugins {
id "com.github.johnrengelman.shadow" version "8.0.0"
}

archivesBaseName = archivesBaseName + "-forge"
//base.archivesName = base.archivesName + "-forge"

unimined.minecraft {
mappings {
devFallbackNamespace "intermediary"
}

forge {
minecraftForge {
loader project.forge_version
mixinConfig ["mixins.baritone.json"]
}
}

//loom {
// forge {
// mixinConfig 'mixins.baritone.json'
// mixinConfig "mixins.baritone.json"
// }
//}

Expand Down Expand Up @@ -83,11 +79,11 @@ jar {

manifest {
attributes(
'MixinConfigs': 'mixins.baritone.json',
"MixinConfigs": "mixins.baritone.json",
"MixinConnector": "baritone.launch.BaritoneMixinConnector",

'Implementation-Title': 'Baritone',
'Implementation-Version': version,
"Implementation-Title": "Baritone",
"Implementation-Version": version,
)
}
}
Expand All @@ -98,12 +94,13 @@ components.java {
}
}

task proguard(type: ProguardTask) {
tasks.register("proguard", ProguardTask) {
proguardVersion "7.2.1"
compType "forge"
}

task createDist(type: CreateDistTask, dependsOn: proguard) {
tasks.register("createDist", CreateDistTask) {
dependsOn proguard
compType "forge"
}

Expand Down
2 changes: 1 addition & 1 deletion forge/src/main/resources/META-INF/mods.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
modLoader="javafml" #mandatory
# A version range to match for said mod loader - for regular FML @Mod it will be the forge version
loaderVersion="[33,)" #mandatory This is typically bumped every Minecraft version by Forge. See our download page for lists of versions.
license="https://raw.githubusercontent.com/cabaletta/baritone/1.16.2/LICENSE"
license="https://raw.githubusercontent.com/cabaletta/baritone/1.19.4/LICENSE"
# A URL to refer people to when problems occur with this mod
issueTrackerURL="https://github.com/cabaletta/baritone/issues" #optional
# A list of mods - how many allowed here is determined by the individual mod loader
Expand Down
8 changes: 4 additions & 4 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ fabric_version=0.14.11

nether_pathfinder_version=1.4.1

// These dependencies are used for common and tweaker
// while mod loaders usually ship their own version
mixin_version=0.8.5
asm_version=9.3
# These dependencies are used for common and tweaker
# while mod loaders usually ship their own version
mixin_version=0.8.7
asm_version=9.5
3 changes: 2 additions & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading
Loading