diff --git a/README.md b/README.md index e1ff18f..4a138ab 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,4 @@ -# 🔧 dataLib — ⚠️ ARCHIVED - -> [!CAUTION] -> **This repository is ARCHIVED.** Active development, maintenance, and new security patches have stopped. -> The existing security gate/approval system (`dl_load:gate/*`, `core/security/cmd_gate`, the `check_all` chain) **has not been removed and continues to run**, but it will not be updated against new threats. -> -> **Datapack risks (also apply to this project):** -> - String injection: `$$(...)` macro calls run without type safety in the datapack environment. -> - No namespace isolation: one datapack can freely interfere with another datapack's function/data space. -> - TOCTOU issues: the tick gap between check and use can be exploited. -> - No compile-time type checking: errors only surface at runtime (or not at all). -> -> **Recommended path:** migrate to a **Fabric mod** under `runtoolkit` targeting this functionality — MC **1.21.1** (upgrade to **1.21.11** if needed). Fabric provides type safety and real namespace isolation, which structurally removes most of these risks. - +# 🔧 dataLib **Minecraft Java Edition 26.3-snapshot-5 | Multiplayer-Safe | Pure Datapack** [![CI](https://github.com/runtoolkit/dataLib-dp/actions/workflows/ci.yml/badge.svg)](https://github.com/runtoolkit/dataLib-dp/actions/workflows/ci.yml) @@ -19,11 +6,11 @@ [![Download on Modrinth](https://img.shields.io/badge/Download%20on-Modrinth-00AF5C?style=for-the-badge&logo=modrinth&logoColor=white)](https://modrinth.com/datapack/datalib) --- -> Current version: **v6.0.1-pre2 (ARCHIVED)** +> Current version: **v6.0.1-pre2** --- > [!WARNING] -> **This repository is archived. It will no longer receive security improvements, bug fixes, or new features.** It can still be used "as-is"; use in production environments is not recommended. +> **This datapack is considered safe to use, but it is still actively receiving security improvements, bug fixes, and new features. Please keep it up to date.** > > **Do not copy `datalib:input` or `datalib:engine` into your own datapack.** It is an internal implementation detail and may change without notice between releases. diff --git a/build.gradle b/build.gradle index 4a6a902..4043cfe 100644 --- a/build.gradle +++ b/build.gradle @@ -62,6 +62,7 @@ loom { runDir "build/gametest" } } + mods { "datalib-testmod" { sourceSet sourceSets.main @@ -414,4 +415,4 @@ tasks.register("runMainTestClient", JavaExec) { description = "Runs Main.java Test Client standalone" classpath = sourceSets.gametest.runtimeClasspath mainClass = "io.runtoolkit.datalib.Main" -} +} \ No newline at end of file diff --git a/datapacks/dataLib/data/datalib.main/function/datalib/load.mcfunction b/datapacks/dataLib/data/datalib.main/function/datalib/load.mcfunction index 6677d26..e0aefee 100644 --- a/datapacks/dataLib/data/datalib.main/function/datalib/load.mcfunction +++ b/datapacks/dataLib/data/datalib.main/function/datalib/load.mcfunction @@ -1,12 +1,5 @@ #> This function will run on datapack loading -#> ARCHIVED: This datapack is no longer under active development. -#> The security gate/approval system (dl_load:gate/*, core/security/cmd_gate) has NOT been disabled -#> and continues to run as-is. No new features or fixes will be added. -#> Recommended: migrate to the runtoolkit Fabric mod ecosystem (MC 1.21.1, upgrade to 1.21.11 if needed). -tellraw @a[tag=!rt_dl_archive_seen] {"text":"[dataLib] This datapack is ARCHIVED. The security gate still runs, but it is no longer maintained. Migration to a runtoolkit Fabric mod is recommended.","color":"red"} -tag @a add rt_dl_archive_seen - execute if data storage datalib:engine {global:{loaded:1b}} run return 0 -function #load:_private/load \ No newline at end of file +function #load:_private/load diff --git a/datapacks/dataLib/data/datalib.main/function/datalib/tick.mcfunction b/datapacks/dataLib/data/datalib.main/function/datalib/tick.mcfunction index d6e1eb1..95a2089 100644 --- a/datapacks/dataLib/data/datalib.main/function/datalib/tick.mcfunction +++ b/datapacks/dataLib/data/datalib.main/function/datalib/tick.mcfunction @@ -1,3 +1,3 @@ #> This is the main function, that will run once per tick +execute at @s run function datalib:core/tick function #datalib:loop -execute at @s run function datalib:core/tick \ No newline at end of file diff --git a/datapacks/dataLib/data/datalib/function/debug/tools/utils/check_all.mcfunction b/datapacks/dataLib/data/datalib/function/debug/tools/utils/check_all.mcfunction index c1b15ed..905a810 100644 --- a/datapacks/dataLib/data/datalib/function/debug/tools/utils/check_all.mcfunction +++ b/datapacks/dataLib/data/datalib/function/debug/tools/utils/check_all.mcfunction @@ -1,9 +1,3 @@ -#> ARCHIVED: dataLib-dp is no longer maintained. -#> The security check chain below (load_check / perm_check / input_check) runs UNCHANGED. -#> Since no new security patches will be released, keeping this datapack in production is risky. -#> Recommended: migrate to the runtoolkit Fabric mod ecosystem (MC 1.21.1, upgrade to 1.21.11 if needed). - execute unless function datalib:debug/tools/utils/load_check run return 0 execute unless function datalib:debug/tools/utils/perm_check run return 0 execute unless function datalib:debug/tools/utils/input_check run return 0 -return 1 diff --git a/gradle.properties b/gradle.properties index 3a0b2ab..adb226f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,2 +1,4 @@ -org.gradle.jvmargs=-Xmx1536m -XX:MaxMetaspaceSize=512m +org.gradle.jvmargs=-Xmx6g -XX:MaxMetaspaceSize=1g org.gradle.daemon=false +org.gradle.workers.max=1 +org.gradle.parallel=false \ No newline at end of file diff --git a/gradlew b/gradlew old mode 100644 new mode 100755