diff --git a/README.md b/README.md index 4a138ab..e1ff18f 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,17 @@ -# 🔧 dataLib +# 🔧 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. + **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) @@ -6,11 +19,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** +> Current version: **v6.0.1-pre2 (ARCHIVED)** --- > [!WARNING] -> **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.** +> **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. > > **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/commit.sh b/commit.sh new file mode 100644 index 0000000..e128cd7 --- /dev/null +++ b/commit.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +cd "$(dirname "$0")" || exit 1 + +files="$(git status --porcelain | awk '{print $2}' | paste -sd' ' -)" + +if [ -z "$files" ]; then + printf "\033[0;32mNothing to commit.\033[0m\n" + exit 0 +fi + +printf "\033[0;31mAdding {%s} to git\033[0m\n" "$files" +git add -A + +printf "\033[0;33mCommitting {%s} to git\033[0m\n" "$files" +git commit -m "Auto commit $(date +%Y-%m-%d_%H:%M:%S)" || exit 1 + +printf "\033[0;33mPushing {%s} to git\033[0m\n" "$files" +git push || exit 1 + +printf "\033[0;32mCommitted {%s} to git\033[0m\n" "$files" +exit 0 \ 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 1608684..6677d26 100644 --- a/datapacks/dataLib/data/datalib.main/function/datalib/load.mcfunction +++ b/datapacks/dataLib/data/datalib.main/function/datalib/load.mcfunction @@ -1,5 +1,12 @@ #> 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 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 b6fa17f..c1b15ed 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,3 +1,8 @@ +#> 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