27 Commits

Author SHA1 Message Date
efe535da9b Merge pull request 'Dump gradle version to 9, dump to 5.2.0, remove cache in CI' (#36) from dev into master
All checks were successful
Test and Deploy / build (21, ubuntu-latest) (push) Successful in 2m3s
Test and Deploy / deploy (21, ubuntu-latest) (push) Successful in 2m5s
Reviewed-on: #36
2025-10-04 10:34:38 +00:00
5e12403a5a Fix tests
All checks were successful
Test and Deploy / build (21, ubuntu-latest) (push) Successful in 2m9s
Test and Deploy / deploy (21, ubuntu-latest) (push) Has been skipped
2025-10-04 12:31:52 +02:00
fdf51d95c1 Update junit to 5.14
Some checks failed
Test and Deploy / build (21, ubuntu-latest) (push) Failing after 1m55s
Test and Deploy / deploy (21, ubuntu-latest) (push) Has been skipped
2025-10-04 12:25:51 +02:00
3266f46d17 Dump gradle version to 9, dump to 5.2.0, remove cache in CI
Some checks failed
Test and Deploy / build (21, ubuntu-latest) (push) Failing after 1m54s
Test and Deploy / deploy (21, ubuntu-latest) (push) Has been skipped
2025-10-04 12:15:48 +02:00
5c9b641091 Merge pull request 'Add ExtendedSimplePositionWidget and MultiTabWrapperWidget' (#35) from dev into master
All checks were successful
Test and Deploy / build (21, ubuntu-latest) (push) Successful in 11m14s
Test and Deploy / deploy (21, ubuntu-latest) (push) Successful in 2m11s
Reviewed-on: #35
2025-09-30 21:38:03 +00:00
43856aefbc Update java version on CI
All checks were successful
Test and Deploy / build (21, ubuntu-latest) (push) Successful in 11m22s
Test and Deploy / deploy (21, ubuntu-latest) (push) Has been skipped
Test and Deploy / build (21, ubuntu-latest) (pull_request) Successful in 11m16s
Test and Deploy / deploy (21, ubuntu-latest) (pull_request) Has been skipped
2025-09-30 22:54:07 +02:00
a4733d073e feat: add ExtendedSimplePositionWidget and MultiTabWrapperWidget
Some checks failed
Test and Deploy / build (17, ubuntu-latest) (push) Failing after 5m21s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
2025-09-30 22:01:56 +02:00
1a5d9f088f Merge pull request '5.1.1' (#34) from dev into master
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 2m11s
Test and Deploy / deploy (17, ubuntu-latest) (push) Successful in 4m23s
Reviewed-on: #34
2024-12-13 19:33:23 +01:00
d74fb27d30 Update loader and fabricapi, dump to 5.1.1
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 5m32s
Test and Deploy / build (17, ubuntu-latest) (pull_request) Successful in 2m10s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been skipped
2024-12-13 19:25:04 +01:00
2d3f8c151b Include hibernate inside Toolbox archive 2024-12-13 19:23:08 +01:00
20dc34714e Merge pull request '5.1.0: add player life cycle events' (#33) from dev into master
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 2m53s
Test and Deploy / deploy (17, ubuntu-latest) (push) Successful in 4m4s
Reviewed-on: #33
2024-08-20 18:52:18 +02:00
267bd3644c ci: add cache
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 6m12s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Test and Deploy / build (17, ubuntu-latest) (pull_request) Successful in 2m26s
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been skipped
2024-08-20 18:42:39 +02:00
d6515d9cbb feat: add player join and leave events
Some checks failed
Test and Deploy / deploy (17, ubuntu-latest) (push) Blocked by required conditions
Test and Deploy / build (17, ubuntu-latest) (push) Has been cancelled
2024-08-20 18:39:30 +02:00
5e6eff241e Merge pull request '5.0.0' (#32) from dev into master
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 3m50s
Test and Deploy / deploy (17, ubuntu-latest) (push) Successful in 4m5s
Reviewed-on: #32
2024-02-12 20:49:49 +01:00
204198f143 Remove deprecated method and remove redundant cast or throws declaration
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 3m55s
Test and Deploy / build (17, ubuntu-latest) (pull_request) Successful in 4m7s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been skipped
2024-02-12 20:40:44 +01:00
9fdc4f4991 Update okhttp to fix vulnerability 2024-02-12 20:33:20 +01:00
b88d7f3e08 ConfigI#load now return given clazz in parameter, dump to 5.0.0 because of breaking changes
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 3m55s
Test and Deploy / build (17, ubuntu-latest) (pull_request) Successful in 3m48s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been skipped
2024-02-12 19:56:37 +01:00
ebbb92f66d Remove my name in contributions and add mod parenting in modmenu, Use a more detailled image of altarik icon
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 3m41s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
2024-02-08 12:47:42 +01:00
6b9d4fa968 Merge pull request 'Dump minecraft to 1.20.4' (#31) from dev into master
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 3m40s
Test and Deploy / deploy (17, ubuntu-latest) (push) Successful in 3m42s
Reviewed-on: #31
2024-02-04 17:54:14 +01:00
041bff1908 Dump minecraft to 1.20.4
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 3m44s
Test and Deploy / build (17, ubuntu-latest) (pull_request) Successful in 3m48s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been skipped
2024-02-04 17:44:39 +01:00
caa52be19e Merge pull request '4.5.0' (#30) from dev into master
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 4m18s
Test and Deploy / deploy (17, ubuntu-latest) (push) Successful in 4m16s
Reviewed-on: #30
2024-01-08 22:02:00 +01:00
2c38a76c0a Dump to 4.5.0
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 4m21s
Test and Deploy / build (17, ubuntu-latest) (pull_request) Successful in 4m24s
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been skipped
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been skipped
2024-01-08 21:52:52 +01:00
fede46e91e Merge remote-tracking branch 'origin/dev' into dev
Some checks failed
Test and Deploy / deploy (17, ubuntu-latest) (push) Blocked by required conditions
Test and Deploy / build (17, ubuntu-latest) (push) Has been cancelled
2024-01-08 21:49:23 +01:00
95ff56969e Dump to 4.4.0 2024-01-08 21:46:41 +01:00
0a7d61e45e Add configI to abstract config files data and process 2024-01-08 21:46:16 +01:00
a7b2067765 Merge pull request 'Dump to 4.4.0' (#29) from dev into master
All checks were successful
Test and Deploy / build (17, ubuntu-latest) (push) Successful in 4m38s
Test and Deploy / deploy (17, ubuntu-latest) (push) Successful in 4m25s
Reviewed-on: #29
2024-01-07 01:24:28 +01:00
427fc4cea6 Update gradle.properties
Some checks failed
Test and Deploy / deploy (17, ubuntu-latest) (push) Has been cancelled
Test and Deploy / build (17, ubuntu-latest) (push) Has been cancelled
Test and Deploy / deploy (17, ubuntu-latest) (pull_request) Has been cancelled
Test and Deploy / build (17, ubuntu-latest) (pull_request) Has been cancelled
2024-01-07 01:24:09 +01:00
29 changed files with 357 additions and 37 deletions

View File

@@ -8,7 +8,7 @@ on:
push:
branches: [ master, dev ]
pull_request:
branches: [ master, dev ]
branches: [ dev ]
env:
REPO_USERNAME: Altarik
@@ -20,7 +20,7 @@ jobs:
build:
strategy:
matrix:
java: [ '17' ]
java: [ '21' ]
os: [ ubuntu-latest ]
runs-on: ${{ matrix.os }}
steps:
@@ -32,7 +32,15 @@ jobs:
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'oracle'
distribution: 'temurin'
# - uses: actions/cache@v3
# with:
# path: |
# ~/.gradle/caches
# ~/.gradle/wrapper
# key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
# restore-keys: |
# ${{ runner.os }}-gradle-
- name: make gradle wrapper executable
if: ${{ runner.os != 'Windows' }}
run: |
@@ -43,7 +51,7 @@ jobs:
deploy:
strategy:
matrix:
java: [ '17' ]
java: [ '21' ]
os: [ ubuntu-latest ]
runs-on: ${{ matrix.os }}
if: ${{ gitea.ref == 'refs/heads/master' && gitea.event_name == 'push' }}
@@ -57,7 +65,7 @@ jobs:
uses: actions/setup-java@v3
with:
java-version: ${{ matrix.java }}
distribution: 'oracle'
distribution: 'temurin'
- name: make gradle wrapper executable
if: ${{ runner.os != 'Windows' }}
run: |

4
Core/build.gradle Normal file
View File

@@ -0,0 +1,4 @@
loom {
accessWidenerPath = file("src/main/resources/core.accesswidener")
}

View File

@@ -0,0 +1,34 @@
package fr.altarik.toolbox.core.client.gui;
import net.minecraft.client.gui.widget.Positioner;
import net.minecraft.client.gui.widget.SimplePositioningWidget;
import net.minecraft.client.gui.widget.Widget;
import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
public abstract class ExtendedSimplePositionWidget extends SimplePositioningWidget {
private final List<Element> elements = new ArrayList<>();
public ExtendedSimplePositionWidget(int x, int y, int width, int height) {
super(x, y, width, height);
}
@Override
public <T extends Widget> T add(T widget, Positioner positioner) {
this.elements.add(new Element(widget, positioner));
return widget;
}
public <T extends Widget> void remove(T widget) {
this.elements.remove(new Element(widget, this.copyPositioner()));
}
@Override
public void forEachElement(Consumer<Widget> consumer) {
this.elements.forEach((element) -> consumer.accept(element.widget));
}
}

View File

@@ -0,0 +1,39 @@
package fr.altarik.toolbox.core.client.gui;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.widget.Widget;
import net.minecraft.client.gui.widget.WrapperWidget;
import java.util.function.Consumer;
public abstract class MultiTabWrapperWidget<A extends Enum<A>, B extends Widget> extends WrapperWidget {
protected final Screen parent;
protected A currentTab;
public MultiTabWrapperWidget(Screen parent) {
this(parent, 0, 0, 0, 0);
}
public MultiTabWrapperWidget(Screen parent, int x, int y, int width, int height) {
super(x, y, width, height);
this.parent = parent;
}
protected void setCurrentTab(A currentTab) {
this.currentTab = currentTab;
update();
}
protected abstract B getCurrentTab();
public abstract void update();
public abstract void remove();
@Override
public void forEachElement(Consumer<Widget> consumer) {
// ignore
}
}

View File

@@ -0,0 +1,64 @@
package fr.altarik.toolbox.core.config;
import com.google.gson.*;
import java.io.FileReader;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Modifier;
import java.nio.file.Files;
import java.nio.file.Path;
/**
* Code "inspired" from <a href="https://github.com/CaffeineMC/sodium-fabric/blob/dev/src/main/java/me/jellysquid/mods/sodium/client/gui/SodiumGameOptions.java">
* https://github.com/CaffeineMC/sodium-fabric/blob/dev/src/main/java/me/jellysquid/mods/sodium/client/gui/SodiumGameOptions.java
* </a>
*/
public class ConfigI {
protected static final Gson GSON = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).setPrettyPrinting().excludeFieldsWithModifiers(Modifier.PROTECTED, Modifier.PRIVATE).create();
protected Path configPath;
protected static Path getConfigPath(Path configPath, String name) {
return configPath.resolve(name);
}
public static <T extends ConfigI> T load(Path configPath, String name, Class<T> clazz) throws IOException, JsonSyntaxException, JsonIOException {
Path path = getConfigPath(configPath, name);
T file;
if(Files.exists(path)) {
FileReader reader = new FileReader(path.toFile());
file = GSON.fromJson(reader, clazz);
} else {
try {
file = clazz.getConstructor().newInstance();
} catch (InstantiationException | InvocationTargetException | IllegalAccessException | NoSuchMethodException e) {
throw new IOException(e);
}
}
file.configPath = path;
file.writeChanges();
return file;
}
public void writeChanges() throws IOException {
Path dir = this.configPath.getParent();
if(!Files.exists(dir)) {
Files.createDirectories(dir);
} else if (!Files.isDirectory(dir)) {
throw new IOException("Not a directory: " + dir);
}
// Use a temporary location next to the config's final destination to replace it atomically
// Path tempPath = this.configPath.resolveSibling(this.configPath.getFileName() + ".tmp");
Files.writeString(this.configPath, GSON.toJson(this));
// Files.copy(tempPath, this.configPath, StandardCopyOption.REPLACE_EXISTING);
// Files.delete(tempPath);
// commented because throws an error on windows each time if the file already exist
}
}

View File

@@ -0,0 +1,37 @@
package fr.altarik.toolbox.core.event;
import net.fabricmc.fabric.api.event.Event;
import net.fabricmc.fabric.api.event.EventFactory;
import net.minecraft.server.network.ServerPlayerEntity;
import net.minecraft.util.ActionResult;
public interface PlayerLifecycleCallback {
Event<PlayerJoin> PLAYER_JOIN = EventFactory.createArrayBacked(PlayerJoin.class, listeners -> player -> {
for(PlayerJoin listener : listeners) {
ActionResult result = listener.onPlayerJoin(player);
if (result != ActionResult.PASS)
return result;
}
return ActionResult.PASS;
});
Event<PlayerLeave> PLAYER_LEAVE = EventFactory.createArrayBacked(PlayerLeave.class, listeners -> player -> {
for(PlayerLeave listener : listeners) {
ActionResult result = listener.onPlayerLeave(player);
if (result != ActionResult.PASS)
return result;
}
return ActionResult.PASS;
});
@FunctionalInterface
interface PlayerJoin {
ActionResult onPlayerJoin(ServerPlayerEntity player);
}
@FunctionalInterface
interface PlayerLeave {
ActionResult onPlayerLeave(ServerPlayerEntity player);
}
}

View File

@@ -0,0 +1,20 @@
package fr.altarik.toolbox.core.mixin;
import fr.altarik.toolbox.core.event.PlayerLifecycleCallback;
import net.minecraft.network.ClientConnection;
import net.minecraft.server.PlayerManager;
import net.minecraft.server.network.ConnectedClientData;
import net.minecraft.server.network.ServerPlayerEntity;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(PlayerManager.class)
public class PlayerJoinEvent {
@Inject(method = "onPlayerConnect", at = @At(value = "RETURN"))
private void onPlayerConnect(ClientConnection connection, ServerPlayerEntity player, ConnectedClientData clientData, CallbackInfo ci) {
PlayerLifecycleCallback.PLAYER_JOIN.invoker().onPlayerJoin(player);
}
}

View File

@@ -0,0 +1,23 @@
package fr.altarik.toolbox.core.mixin;
import fr.altarik.toolbox.core.event.PlayerLifecycleCallback;
import net.minecraft.server.network.ServerPlayNetworkHandler;
import net.minecraft.server.network.ServerPlayerEntity;
import net.minecraft.text.Text;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(ServerPlayNetworkHandler.class)
public class PlayerLeaveEvent {
@Shadow
public ServerPlayerEntity player;
@Inject(at = @At(value = "HEAD"), method = "onDisconnected")
private void onPlayerQuit(Text reason, CallbackInfo ci) {
PlayerLifecycleCallback.PLAYER_LEAVE.invoker().onPlayerLeave(player);
}
}

View File

@@ -0,0 +1,14 @@
{
"required": true,
"minVersion": "0.8",
"package": "fr.altarik.toolbox.core.mixin",
"compatibilityLevel": "JAVA_17",
"mixins": [
"PlayerJoinEvent",
"PlayerLeaveEvent"
],
"verbose": false,
"injectors": {
"defaultRequire": 1
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 323 KiB

View File

@@ -0,0 +1,4 @@
accessWidener v2 named
accessible class net/minecraft/client/gui/widget/SimplePositioningWidget$Element
accessible method net/minecraft/client/gui/widget/SimplePositioningWidget$Element <init> (Lnet/minecraft/client/gui/widget/Widget;Lnet/minecraft/client/gui/widget/Positioner;)V

View File

@@ -8,7 +8,7 @@
"Altarik"
],
"contributors": [
"Legot Quentin<legotquentin@gmail.com>"
],
"contact": {
"homepage": "https://altarik.fr"
@@ -19,11 +19,21 @@
"entrypoints": {
"main": []
},
"mixins": [],
"mixins": [
"Core.mixins.json"
],
"depends": {
"fabricloader": "^${loaderVersion}",
"fabric-api": "*",
"minecraft": "${minecraftVersion}",
"java": ">=17"
},
"custom": {
"modmenu": {
"badges": [ "library" ],
"parent": {
"parent": "toolbox"
}
}
}
}

View File

@@ -32,7 +32,7 @@ public class BuilderImpl implements IBuilder<BuilderResult> {
@Override
public BuilderResult build() throws Exception {
public BuilderResult build() {
return new BuilderResult(collection.get(), numberOfSentences.get());
}
}

View File

@@ -0,0 +1,40 @@
import fr.altarik.toolbox.core.config.ConfigI;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.io.IOException;
import java.nio.file.Path;
public class ConfigITest {
public static class ConfigClazz extends ConfigI {
public int par1 = 5;
public String par2 = "bad";
public double para3 = 3.14;
public static ConfigClazz load() throws IOException {
return load(Path.of("."), "test.json", ConfigClazz.class);
}
}
@Test
public void testConfig() throws IOException {
ConfigClazz config = ConfigClazz.load();
Assertions.assertEquals(5, config.par1);
Assertions.assertEquals("bad", config.par2);
Assertions.assertEquals(3.14, config.para3);
config.par1 = 6;
config.par2 = "good";
config.para3 = 4.2;
Assertions.assertEquals(6, config.par1);
config.writeChanges();
config = ConfigClazz.load();
Assertions.assertEquals(6, config.par1);
Assertions.assertEquals("good", config.par2);
Assertions.assertEquals(4.2, config.para3);
Path.of(".").resolve("test.json").toFile().delete();
}
}

View File

@@ -1,7 +1,20 @@
dependencies {
implementation 'org.postgresql:postgresql:42.6.0'
implementation 'org.postgresql:postgresql:42.7.5'
testImplementation 'com.google.code.gson:gson:2.10'
implementation project(':Core')
// implementation "org.hibernate.orm:hibernate-core:${project.hibernate_version}"
include "org.hibernate.orm:hibernate-core:${project.hibernate_version}"
include "jakarta.activation:jakarta.activation-api:2.1.1"
include "jakarta.inject:jakarta.inject-api:2.0.1"
include "jakarta.persistence:jakarta.persistence-api:3.1.0"
include "jakarta.transaction:jakarta.transaction-api:2.0.1"
include "jakarta.xml.bind:jakarta.xml.bind-api:4.0.0"
include "org.hibernate.common:hibernate-commons-annotations:7.0.3.Final"
include "org.jboss.logging:jboss-logging:3.5.0.Final"
include "com.fasterxml:classmate:1.5.1"
include "net.bytebuddy:byte-buddy:1.14.18"
include "org.antlr:antlr4-runtime:4.13.0"
include "io.smallrye:jandex:3.2.0"
}
test {

View File

@@ -25,13 +25,6 @@ public abstract class AbstractSqlConnection implements SqlConnection {
return connection;
}
@Override
public void closeConnection() {
try {
close();
} catch (Exception ignored) {}
}
@Override
public void close() throws Exception {
if(!connection.isClosed()) {

View File

@@ -23,10 +23,4 @@ public interface SqlConnection extends AutoCloseable {
*/
void checkConnection() throws SQLException;
/**
* @deprecated replaced with {@link AutoCloseable#close()}
*/
@Deprecated(forRemoval = true)
void closeConnection();
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 323 KiB

View File

@@ -8,7 +8,7 @@
"Altarik"
],
"contributors": [
"Legot Quentin<legotquentin@gmail.com>"
],
"contact": {
"homepage": "https://altarik.fr"
@@ -26,5 +26,13 @@
"minecraft": "${minecraftVersion}",
"java": ">=17",
"toolbox-core": "${version}"
},
"custom": {
"modmenu": {
"badges": [ "library" ],
"parent": {
"parent": "toolbox"
}
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 323 KiB

View File

@@ -8,7 +8,7 @@
"Altarik"
],
"contributors": [
"Legot Quentin<legotquentin@gmail.com>"
],
"contact": {
"homepage": "https://altarik.fr"
@@ -29,5 +29,13 @@
"fabric-api": "*",
"minecraft": "${minecraftVersion}",
"java": ">=17"
},
"custom": {
"modmenu": {
"badges": [ "library" ],
"parent": {
"parent": "toolbox"
}
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 323 KiB

View File

@@ -8,7 +8,7 @@
"Altarik"
],
"contributors": [
"Legot Quentin<legotquentin@gmail.com>"
],
"contact": {
"homepage": "https://altarik.fr"

View File

@@ -2,7 +2,7 @@ import fr.altarik.CreateTag
import fr.altarik.ReportDiscord
plugins {
id 'fabric-loom' version '1.4-SNAPSHOT' apply false
id 'fabric-loom' version "${loom_version}" apply false
}
Properties local = new Properties()
@@ -81,8 +81,8 @@ allprojects {
}
dependencies {
testImplementation "org.junit.jupiter:junit-jupiter-api:${project.junit_version}"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:${project.junit_version}"
testImplementation "org.junit.jupiter:junit-jupiter:${project.junit_version}"
testRuntimeOnly "org.junit.platform:junit-platform-launcher"
minecraft "com.mojang:minecraft:${project.minecraft_version}"
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"

View File

@@ -1 +1 @@
okhttp_version=4.10.0
okhttp_version=4.12.0

View File

@@ -1,14 +1,16 @@
org.gradle.jvmargs=-Xmx1G
fabric.loom.multiProjectOptimisation=true
junit_version=5.9.0
minecraft_version=1.20.2
yarn_mappings=1.20.2+build.4
loader_version=0.15.3
fabric_version=0.91.3+1.20.2
junit_version=5.14.0
minecraft_version=1.20.4
yarn_mappings=1.20.4+build.3
loader_version=0.17.2
fabric_version=0.97.3+1.20.4
hibernate_version=6.6.3.Final
loom_version=1.11-SNAPSHOT
maven_group=fr.altarik.toolbox
maven_version=4.3.2-SNAPSHOT
maven_version=5.2.0
git_owner=quentinlegot
git_repo=Toolbox

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 323 KiB

View File

@@ -8,7 +8,7 @@
"Altarik"
],
"contributors": [
"Legot Quentin<legotquentin@gmail.com>"
],
"contact": {
"homepage": "https://altarik.fr"
@@ -25,6 +25,11 @@
"toolbox-database": "${version}",
"toolbox-pagination": "${version}",
"toolbox-task": "${version}"
},
"custom": {
"modmenu": {
"badges": [ "library" ]
}
}
}