Update Gradle to v9.4

This commit is contained in:
Luck committed 2026-03-26 21:38:08 +00:00
1 parent 691a87b5ea
commit 5db9ecb689
33 files changed
+152 -121

No files matched your search

+1 -1
View File
@@ -27,7 +27,7 @@ jobs:
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '21'
java-version: '25'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
+3 -2
View File
@@ -1,8 +1,9 @@
group = 'net.luckperms'
project.version = '5.5'
sourceCompatibility = 1.8
targetCompatibility = 1.8
tasks.withType(JavaCompile).configureEach {
options.release = 8
}
jar {
manifest {
+7 -19
View File
@@ -6,21 +6,17 @@ plugins {
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
defaultTasks 'licenseFormat', 'build'
subprojects {
apply plugin: 'java'
apply plugin: 'maven-publish'
apply plugin: 'org.cadixdev.licenser'
apply plugin: 'dev.yumi.gradle.licenser'
group = 'me.lucko.luckperms'
version = '5.5-SNAPSHOT'
sourceCompatibility = 11
targetCompatibility = 11
tasks.withType(JavaCompile).configureEach {
options.encoding = 'UTF-8'
options.release = 11
}
tasks.withType(Test).configureEach {
@@ -38,18 +34,11 @@ subprojects {
}
def determinePatchVersion = {
// get the name of the last tag
def tagInfo = new ByteArrayOutputStream()
exec {
def tagInfo = providers.exec {
commandLine 'git', 'describe', '--tags'
standardOutput = tagInfo
}
tagInfo = tagInfo.toString()
}.standardOutput.asText.get().trim()
if (!tagInfo.contains('-')) {
return 0
}
return tagInfo.split("-")[1]
return tagInfo.contains('-') ? tagInfo.split('-')[1] : 0
}
project.ext.majorVersion = '5'
@@ -59,9 +48,8 @@ subprojects {
project.ext.fullVersion = project.ext.apiVersion + '.' + project.ext.patchVersion
license {
header = rootProject.file('HEADER.txt')
include '**/*.java'
newLine = true
rule(rootProject.file("HEADER.txt"))
exclude '*.xml'
}
repositories {
+11
View File
@@ -1,6 +1,7 @@
plugins {
id("java-library")
id("jacoco")
alias(libs.plugins.blossom)
}
test {
@@ -15,6 +16,16 @@ jacocoTestReport {
dependsOn test
}
sourceSets {
main {
blossom {
javaSources {
property 'version', project.ext.fullVersion
}
}
}
}
dependencies {
testImplementation 'org.slf4j:slf4j-simple:1.7.36'
+3 -2
View File
@@ -2,8 +2,9 @@ plugins {
alias(libs.plugins.loom)
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
repositories {
maven { url 'https://maven.fabricmc.net/' }
@@ -0,0 +1,33 @@
/*
* This file is part of LuckPerms, licensed under the MIT License.
*
* Copyright (c) lucko (Luck) <luck@lucko.me>
* Copyright (c) contributors
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
package me.lucko.luckperms.common.util;
public final class BuildInfo {
private BuildInfo() {}
public static final String VERSION = "{{ version }}";
}
@@ -46,6 +46,7 @@ import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.StandardOpenOption;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Queue;
@@ -168,8 +169,8 @@ public class FileActionLogger {
public LogPage getLogPage(FilterList<Action> filters, @Nullable PageParameters page) throws IOException {
List<LoggedAction> filtered = loadLog(filters)
.sorted(Comparator.comparing(LoggedAction::getTimestamp))
.collect(Collectors.toList())
.reversed();
.collect(Collectors.toList());
Collections.reverse(filtered);
int size = filtered.size();
List<LoggedAction> paginated = page != null ? page.paginate(filtered) : filtered;
+9 -5
View File
@@ -5,9 +5,13 @@ plugins {
alias(libs.plugins.loom)
}
archivesBaseName = 'luckperms'
sourceCompatibility = 21
targetCompatibility = 21
base {
archivesName = 'luckperms'
}
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
repositories {
maven { url 'https://maven.fabricmc.net/' }
@@ -17,7 +21,7 @@ dependencies {
// https://modmuss50.me/fabric.html
minecraft 'com.mojang:minecraft:1.21.11'
mappings loom.officialMojangMappings()
modImplementation 'net.fabricmc:fabric-loader:0.18.2'
modImplementation 'net.fabricmc:fabric-loader:0.18.4'
Set<String> apiModules = [
'fabric-api-base',
@@ -76,7 +80,7 @@ shadowJar {
relocate 'org.yaml.snakeyaml', 'me.lucko.luckperms.lib.yaml'
}
task remappedShadowJar(type: RemapJarTask) {
tasks.register('remappedShadowJar', RemapJarTask) {
dependsOn tasks.shadowJar
input = tasks.shadowJar.archiveFile
addNestedDependencies = true
+10 -9
View File
@@ -1,24 +1,25 @@
plugins {
alias(libs.plugins.blossom)
alias(libs.plugins.shadow)
alias(libs.plugins.forgegradle)
}
sourceCompatibility = 21
targetCompatibility = 21
blossom {
replaceTokenIn 'src/main/java/me/lucko/luckperms/forge/LPForgeBootstrap.java'
replaceToken '@version@', project.ext.fullVersion
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
minecraft {
mappings channel: 'official', version: minecraftVersion
}
repositories {
minecraft.mavenizer(it)
maven fg.forgeMaven
maven fg.minecraftLibsMaven
}
dependencies {
minecraft "net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}"
annotationProcessor 'net.minecraftforge:eventbus-validator:7.0-beta.12'
implementation minecraft.dependency("net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}")
annotationProcessor 'net.minecraftforge:eventbus-validator:7.0.1'
implementation project(':common')
implementation project(':common:minecraft')
compileOnly project(':common:loader-utils')
+1 -1
View File
@@ -1,2 +1,2 @@
minecraftVersion=1.21.11
forgeVersion=61.0.0
forgeVersion=61.1.3
+10 -3
View File
@@ -4,15 +4,22 @@ plugins {
id("java-library")
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
minecraft {
mappings channel: 'official', version: minecraftVersion
}
repositories {
minecraft.mavenizer(it)
maven fg.forgeMaven
maven fg.minecraftLibsMaven
}
dependencies {
minecraft "net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}"
implementation minecraft.dependency("net.minecraftforge:forge:${minecraftVersion}-${forgeVersion}")
implementation project(':api')
implementation project(':common:loader-utils')
}
@@ -35,6 +35,7 @@ import me.lucko.luckperms.common.plugin.classpath.JarInJarClassPathAppender;
import me.lucko.luckperms.common.plugin.logging.Log4jPluginLogger;
import me.lucko.luckperms.common.plugin.logging.PluginLogger;
import me.lucko.luckperms.common.plugin.scheduler.SchedulerAdapter;
import me.lucko.luckperms.common.util.BuildInfo;
import net.luckperms.api.platform.Platform;
import net.minecraft.server.MinecraftServer;
import net.minecraftforge.event.server.ServerAboutToStartEvent;
@@ -204,7 +205,7 @@ public final class LPForgeBootstrap extends MinecraftLuckPermsBootstrap implemen
@Override
public String getVersion() {
return "@version@";
return BuildInfo.VERSION;
}
@Override
+7 -7
View File
@@ -1,15 +1,15 @@
[versions]
shadow = "8.3.8"
blossom = "1.3.1"
moddevgradle = "2.0.110"
forgegradle = "[6.0.36,6.2)"
loom = "1.13-SNAPSHOT"
licenser = "0.6.1"
blossom = "2.2.0"
moddevgradle = "2.0.140"
forgegradle = "[7.0.13,8.0)"
loom = "1.15-SNAPSHOT"
licenser = "2.2.2"
[plugins]
blossom = { id = "net.kyori.blossom", version.ref = "blossom" }
shadow = { id = "com.gradleup.shadow", version.ref = "shadow" }
moddevgradle = { id = "net.neoforged.moddev", version.ref = "moddevgradle" }
forgegradle = { id = "net.minecraftforge.gradle", version.ref = "forgegradle" }
loom = { id = "fabric-loom", version.ref = "loom" }
licenser = { id = "org.cadixdev.licenser", version.ref = "licenser" }
loom = { id = "net.fabricmc.fabric-loom-remap", version.ref = "loom" }
licenser = { id = "dev.yumi.gradle.licenser", version.ref = "licenser" }
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.1-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Vendored
+2 -5
View File
@@ -1,7 +1,7 @@
#!/bin/sh
#
# Copyright © 2015-2021 the original authors.
# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -57,7 +57,7 @@
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# https://github.com/gradle/gradle/blob/2d6327017519d23b96af35865dc997fcb544fb40/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -114,7 +114,6 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -172,7 +171,6 @@ fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if "$cygwin" || "$msys" ; then
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
JAVACMD=$( cygpath --unix "$JAVACMD" )
@@ -212,7 +210,6 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
-jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
Vendored
+1 -2
View File
@@ -70,11 +70,10 @@ goto fail
:execute
@rem Setup the command line
set CLASSPATH=
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
+3 -2
View File
@@ -2,8 +2,9 @@ plugins {
alias(libs.plugins.shadow)
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
dependencies {
implementation project(':common')
View File
Whitespace-only changes.
+8 -14
View File
@@ -1,37 +1,31 @@
plugins {
alias(libs.plugins.blossom)
alias(libs.plugins.shadow)
alias(libs.plugins.moddevgradle)
}
sourceCompatibility = 21
targetCompatibility = 21
Configuration shade = configurations.create('shade')
configurations.implementation {
extendsFrom configurations.shade
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
blossom {
replaceTokenIn 'src/main/java/me/lucko/luckperms/neoforge/LPNeoForgeBootstrap.java'
replaceToken '@version@', project.ext.fullVersion
configurations {
shade
implementation.extendsFrom shade
}
neoForge {
version = project.neoForgeVersion
validateAccessTransformers = true
}
dependencies {
add('shade', project(':common'))
add('shade', project(':common:minecraft'))
shade project(':common')
shade project(':common:minecraft')
compileOnly project(':common:loader-utils')
}
shadowJar {
archiveFileName = "luckperms-neoforge.jarinjar"
configurations = [shade]
configurations = [project.configurations.shade]
dependencies {
include(dependency('me.lucko.luckperms:.*'))
+9 -11
View File
@@ -9,22 +9,20 @@ plugins {
id("java-library")
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
neoForge {
version = project.neoForgeVersion
validateAccessTransformers = true
runs {
client {
client()
//mods.set(new HashSet()) // Work around classpath issues by using the production jar for dev runs
}
server {
server()
//mods.set(new HashSet()) // Work around classpath issues by using the production jar for dev runs
}
}
}
@@ -39,14 +37,14 @@ tasks.withType(RunGameTask).configureEach {
}
}
Configuration shade = configurations.create('shade')
configurations.implementation {
extendsFrom configurations.shade
configurations {
shade
implementation.extendsFrom shade
}
dependencies {
add('shade', project(':api'))
add('shade', project(':common:loader-utils'))
shade project(':api')
shade project(':common:loader-utils')
}
build {
@@ -75,7 +73,7 @@ processResources {
shadowJar {
archiveFileName = "LuckPerms-NeoForge-${project.ext.fullVersion}.jar"
configurations = [shade]
configurations = [project.configurations.shade]
from {
project(':neoforge').tasks.shadowJar.archiveFile
@@ -35,6 +35,7 @@ import me.lucko.luckperms.common.plugin.classpath.JarInJarClassPathAppender;
import me.lucko.luckperms.common.plugin.logging.Log4jPluginLogger;
import me.lucko.luckperms.common.plugin.logging.PluginLogger;
import me.lucko.luckperms.common.plugin.scheduler.SchedulerAdapter;
import me.lucko.luckperms.common.util.BuildInfo;
import me.lucko.luckperms.neoforge.util.NeoForgeEventBusFacade;
import net.luckperms.api.platform.Platform;
import net.minecraft.server.MinecraftServer;
@@ -191,7 +192,7 @@ public final class LPNeoForgeBootstrap extends MinecraftLuckPermsBootstrap imple
@Override
public String getVersion() {
return "@version@";
return BuildInfo.VERSION;
}
@Override
+3 -2
View File
@@ -2,8 +2,9 @@ plugins {
alias(libs.plugins.shadow)
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
repositories {
maven { url 'https://repo.spongepowered.org/repository/maven-public/' }
+3 -2
View File
@@ -2,8 +2,9 @@ plugins {
alias(libs.plugins.shadow)
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
repositories {
maven { url 'https://repo.spongepowered.org/repository/maven-public/' }
+3 -2
View File
@@ -2,8 +2,9 @@ repositories {
maven { url 'https://repo.spongepowered.org/repository/maven-public/' }
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
dependencies {
implementation project(':common')
+3 -2
View File
@@ -2,8 +2,9 @@ repositories {
maven { url 'https://repo.spongepowered.org/repository/maven-public/' }
}
sourceCompatibility = 21
targetCompatibility = 21
tasks.withType(JavaCompile).configureEach {
options.release = 21
}
dependencies {
implementation project(':common')
+3 -8
View File
@@ -1,10 +1,10 @@
plugins {
alias(libs.plugins.blossom)
id("java-library")
}
sourceCompatibility = 17
targetCompatibility = 17
tasks.withType(JavaCompile).configureEach {
options.release = 17
}
dependencies {
implementation project(':api')
@@ -49,8 +49,3 @@ dependencies {
exclude(module: 'annotations')
}
}
blossom {
replaceTokenIn('src/main/java/me/lucko/luckperms/standalone/app/LuckPermsApplication.java')
replaceToken '@version@', project.ext.fullVersion
}
@@ -128,8 +128,4 @@ public class LuckPermsApplication implements AutoCloseable {
return this.commandExecutor;
}
public String getVersion() {
return "@version@";
}
}
+3 -2
View File
@@ -4,8 +4,9 @@ plugins {
id("jacoco-report-aggregation")
}
sourceCompatibility = 17
targetCompatibility = 17
tasks.withType(JavaCompile).configureEach {
options.release = 17
}
test {
useJUnitPlatform {
+3 -2
View File
@@ -11,8 +11,9 @@ dependencies {
implementation project(':standalone:app')
}
sourceCompatibility = 17
targetCompatibility = 17
tasks.withType(JavaCompile).configureEach {
options.release = 17
}
application {
mainClass = 'me.lucko.luckperms.standalone.loader.StandaloneLoader'
@@ -32,6 +32,7 @@ import me.lucko.luckperms.common.plugin.classpath.ClassPathAppender;
import me.lucko.luckperms.common.plugin.classpath.JarInJarClassPathAppender;
import me.lucko.luckperms.common.plugin.logging.Log4jPluginLogger;
import me.lucko.luckperms.common.plugin.logging.PluginLogger;
import me.lucko.luckperms.common.util.BuildInfo;
import me.lucko.luckperms.standalone.app.LuckPermsApplication;
import net.luckperms.api.platform.Platform;
@@ -145,7 +146,7 @@ public class LPStandaloneBootstrap implements LuckPermsBootstrap, LoaderBootstra
@Override
public String getVersion() {
return this.loader.getVersion();
return BuildInfo.VERSION;
}
@Override
-6
View File
@@ -1,5 +1,4 @@
plugins {
alias(libs.plugins.blossom)
alias(libs.plugins.shadow)
}
@@ -14,11 +13,6 @@ dependencies {
annotationProcessor 'com.velocitypowered:velocity-api:3.1.1'
}
blossom {
replaceTokenIn('src/main/java/me/lucko/luckperms/velocity/LPVelocityBootstrap.java')
replaceToken '@version@', project.ext.fullVersion
}
shadowJar {
archiveFileName = "LuckPerms-Velocity-${project.ext.fullVersion}.jar"
@@ -39,6 +39,7 @@ import me.lucko.luckperms.common.plugin.classpath.ClassPathAppender;
import me.lucko.luckperms.common.plugin.logging.PluginLogger;
import me.lucko.luckperms.common.plugin.logging.Slf4jPluginLogger;
import me.lucko.luckperms.common.plugin.scheduler.SchedulerAdapter;
import me.lucko.luckperms.common.util.BuildInfo;
import net.luckperms.api.platform.Platform;
import org.slf4j.Logger;
@@ -57,7 +58,7 @@ import java.util.concurrent.CountDownLatch;
@Plugin(
id = "luckperms",
name = "LuckPerms",
version = "@version@",
version = BuildInfo.VERSION,
authors = "Luck",
description = "A permissions plugin",
url = "https://luckperms.net"
@@ -168,7 +169,7 @@ public class LPVelocityBootstrap implements LuckPermsBootstrap {
@Override
public String getVersion() {
return "@version@";
return BuildInfo.VERSION;
}
@Override