From cb83929eed5ee3dece52069691e17853415ae170 Mon Sep 17 00:00:00 2001 From: DuskScorpio Date: Tue, 28 Jul 2026 16:15:12 +0000 Subject: [PATCH 1/3] changelog: classify new file-list mods as added Detect newly added file_list.yml entries when generating the changelog so brand-new mods are emitted as News additions instead of newly-compatible version entries or update spans. --- script/gen_changelog.py | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/script/gen_changelog.py b/script/gen_changelog.py index 7c015d7..3f19534 100644 --- a/script/gen_changelog.py +++ b/script/gen_changelog.py @@ -125,11 +125,36 @@ def resolve_mod_name(slug: str, folders: list[str]) -> str: return slug.replace("-", " ").replace("_", " ").title() +def normalize_mod_id(value: str) -> str: + value = value.strip().strip('"\'') + value = re.sub(r"\s+#.*$", "", value).strip() + return re.sub(r"[\s_-]+", "-", value.lower()) + + +def newly_added_file_list_ids(base: str) -> set[str]: + ids: set[str] = set() + diff = run_git("diff", "--unified=0", base, "--", "file_list.yml") + for line in diff.splitlines(): + if not line.startswith("+") or line.startswith("+++"): + continue + match = re.match(r"^\+\s*(?:-\s*)?(mr_slug|cf_slug|name):\s*(.+?)\s*$", line) + if match: + ids.add(normalize_mod_id(match.group(2))) + return ids + + +def is_new_pack_mod(slug: str, folders: list[str], new_file_list_ids: set[str]) -> bool: + if normalize_mod_id(slug) in new_file_list_ids: + return True + return normalize_mod_id(resolve_mod_name(slug, folders)) in new_file_list_ids + + def main() -> None: base = resolve_base(sys.argv[1] if len(sys.argv) > 1 else None) folders, current_mc_versions = current_folders_and_versions() base_mc_versions = base_folders_and_versions(base) folder_order = {folder: i for i, folder in enumerate(folders)} + new_file_list_ids = newly_added_file_list_ids(base) news_added: list[str] = [] news_folders: set[str] = set() @@ -168,7 +193,9 @@ def main() -> None: and folder in folder_order and folder not in news_folders ): - newly_compatible[folder].append(filename.removesuffix(".pw.toml")) + slug = filename.removesuffix(".pw.toml") + if not is_new_pack_mod(slug, [folder], new_file_list_ids): + newly_compatible[folder].append(slug) mod_versions: dict[str, set[str]] = defaultdict(set) changed_paths = run_git( @@ -192,7 +219,9 @@ def main() -> None: and folder in folder_order and folder not in news_folders ): - mod_versions[filename.removesuffix(".pw.toml")].add(folder) + slug = filename.removesuffix(".pw.toml") + if not is_new_pack_mod(slug, [folder], new_file_list_ids): + mod_versions[slug].add(folder) updates: dict[tuple[int, int], list[str]] = defaultdict(list) for slug, version_folders in mod_versions.items(): @@ -201,6 +230,8 @@ def main() -> None: out = ["## News", ""] out.extend(news_added) + for mod_id in sorted(new_file_list_ids): + out.append(f"- Added {resolve_mod_name(mod_id, folders)}") if newly_compatible: out.append("- Added newly compatible mods to:") for folder in sorted(newly_compatible, key=lambda f: folder_order[f]): From 39fa3b20b53620e3de63a13fa2f8209a5add06e5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Tue, 28 Jul 2026 16:27:08 +0000 Subject: [PATCH 2/3] Add 26.3-snapshot-6 --- changelog.md | 15 ++++----------- curseforge/26.3.0/pack.toml | 2 +- modrinth/26.3.0/index.toml | 11 +++-------- modrinth/26.3.0/mods/c2me-fabric.pw.toml | 8 ++++---- modrinth/26.3.0/mods/carpet-tis-addition.pw.toml | 13 ------------- modrinth/26.3.0/mods/fabric-api.pw.toml | 8 ++++---- modrinth/26.3.0/mods/zfastnoise.pw.toml | 8 ++++---- modrinth/26.3.0/pack.toml | 4 ++-- 8 files changed, 22 insertions(+), 47 deletions(-) delete mode 100644 modrinth/26.3.0/mods/carpet-tis-addition.pw.toml diff --git a/changelog.md b/changelog.md index e76de06..701df4f 100644 --- a/changelog.md +++ b/changelog.md @@ -1,13 +1,10 @@ ## News +- Added 26.3-snapshot-6 +- Added IBCarpet - Added newly compatible mods to: - - 1.21.11: - - IBCarpet - - 26.1.2: - - IBCarpet - 26.2: - G4mespeed - - IBCarpet - Krypton - Redstone Multimeter Fabric @@ -16,20 +13,16 @@ ## Updates -- 1.16.5-26.3-snapshot-3: - - Carpet TIS Addition - 1.16.5-26.2: + - Carpet TIS Addition - Fabric Language Kotlin - 1.19.4-26.2: - Carpet IGNY Addition - 1.20.6-26.2: - G4mespeed -- 1.21.1-26.3-snapshot-3: - - Fabric API - 1.21.1-26.2: - Concurrent Chunk Management Engine (Fabric) -- 1.21.11-26.2: - - IBCarpet + - Fabric API - 26.1.2-26.2: - Better Block Entities - YetAnotherConfigLib (YACL) diff --git a/curseforge/26.3.0/pack.toml b/curseforge/26.3.0/pack.toml index 8437804..e6b0e86 100644 --- a/curseforge/26.3.0/pack.toml +++ b/curseforge/26.3.0/pack.toml @@ -10,4 +10,4 @@ hash = "1115380d4c0aec359398486d09572c9ca8bb57536d5c0dc07b5a589cf0ab72e6" [versions] fabric = "0.19.3" -minecraft = "26.3-snapshot-3" +minecraft = "26.3-snapshot-6" diff --git a/modrinth/26.3.0/index.toml b/modrinth/26.3.0/index.toml index 7e4c6e2..bc04cc2 100644 --- a/modrinth/26.3.0/index.toml +++ b/modrinth/26.3.0/index.toml @@ -2,12 +2,7 @@ hash-format = "sha256" [[files]] file = "mods/c2me-fabric.pw.toml" -hash = "61f5e70b2ebcece8108aa6a7768e15d1f04fc2deb6b52018038e8bcadcdcd374" -metafile = true - -[[files]] -file = "mods/carpet-tis-addition.pw.toml" -hash = "67c8e25e754794746f17b491ea7ed590ec06420af65f28220eb5727d8ca8a6d4" +hash = "55e984844c0a1e82575f794c3ec74d50952dc4cf306f1ae30ced6118e72b60b9" metafile = true [[files]] @@ -17,10 +12,10 @@ metafile = true [[files]] file = "mods/fabric-api.pw.toml" -hash = "815a711e52f2fb70a714c453db7f2160d2fbc542fa159f414a0a1c0ddf323181" +hash = "e1ff7493b3c0358d4a8cae563a9c13d7e422f056be7e438d186e395a5fa9f90b" metafile = true [[files]] file = "mods/zfastnoise.pw.toml" -hash = "6e81c299d403e87f3305d6aac2a2a98ca2fdf92923e97095e38e81b6bb594e25" +hash = "71f44bd10628bc3e997e3682217a2c3e80e3d2d57aa966f2b7f5169d586eca54" metafile = true diff --git a/modrinth/26.3.0/mods/c2me-fabric.pw.toml b/modrinth/26.3.0/mods/c2me-fabric.pw.toml index a21bbf9..be3ae6f 100644 --- a/modrinth/26.3.0/mods/c2me-fabric.pw.toml +++ b/modrinth/26.3.0/mods/c2me-fabric.pw.toml @@ -1,12 +1,12 @@ name = "Concurrent Chunk Management Engine (Fabric)" -filename = "c2me-fabric-mc26.3-snapshot-3-0.4.2-alpha.0.20.jar.disabled" +filename = "c2me-fabric-mc26.3-snapshot-6-0.4.2-alpha.0.43.jar.disabled" side = "both" [download] -url = "https://cdn.modrinth.com/data/VSNURh3q/versions/6nowaGnT/c2me-fabric-mc26.3-snapshot-3-0.4.2-alpha.0.20.jar" +url = "https://cdn.modrinth.com/data/VSNURh3q/versions/sTFEpU5c/c2me-fabric-mc26.3-snapshot-6-0.4.2-alpha.0.43.jar" hash-format = "sha512" -hash = "2bf19c1b056ef52777687faf64f4c339bf01c5221f98dbc7f8b20d621f0734ed47c86b842631226fadfdda3ae52cae4e076ea2afb7a39c594cb62252a9994121" +hash = "0ce2795d8dc0b4f3ea6ea3a2001c102043d0f0615ed5e86b4b88b070a8a357752b7fbdd60fad79f649a9908f61c5c91f6c5c4e92b5761f74c42d12cb76995806" [update.modrinth] mod-id = "VSNURh3q" -version = "6nowaGnT" +version = "sTFEpU5c" diff --git a/modrinth/26.3.0/mods/carpet-tis-addition.pw.toml b/modrinth/26.3.0/mods/carpet-tis-addition.pw.toml deleted file mode 100644 index b947556..0000000 --- a/modrinth/26.3.0/mods/carpet-tis-addition.pw.toml +++ /dev/null @@ -1,13 +0,0 @@ -name = "Carpet TIS Addition" -filename = "carpet-tis-addition-v1.82.3-mc26.3-snapshot-3.jar" -side = "both" - -[download] -url = "https://cdn.modrinth.com/data/jE0SjGuf/versions/dAA8PmPm/carpet-tis-addition-v1.82.3-mc26.3-snapshot-3.jar" -hash-format = "sha512" -hash = "ebedfd4ee9d275e869bb61f506d9e4b750ff8a7ed84c92dd2c3133f7bb605c603297ebda13a91a50bb61f5da9deb40223fcf5b01c00bace9d7559da364920f62" - -[update] -[update.modrinth] -mod-id = "jE0SjGuf" -version = "dAA8PmPm" diff --git a/modrinth/26.3.0/mods/fabric-api.pw.toml b/modrinth/26.3.0/mods/fabric-api.pw.toml index 39dd4d2..e33cf4a 100644 --- a/modrinth/26.3.0/mods/fabric-api.pw.toml +++ b/modrinth/26.3.0/mods/fabric-api.pw.toml @@ -1,13 +1,13 @@ name = "Fabric API" -filename = "fabric-api-0.155.0+26.3.jar" +filename = "fabric-api-0.156.1+26.3.jar" side = "both" [download] -url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/AqjTlmq1/fabric-api-0.155.0%2B26.3.jar" +url = "https://cdn.modrinth.com/data/P7dR8mSH/versions/VqiMRXnF/fabric-api-0.156.1%2B26.3.jar" hash-format = "sha512" -hash = "0d6fcff63cf0f197e8285171a79dee429c83320d58e6464f8e625ac90e961672884f01873b584e34143d7f0fabc706f50ca98fbd877cb0ddce3e2674414975a3" +hash = "01019a36236429113dbbecd84004dfa99201e8068cb4ccad21832a085ae09dda04e2a2bf704f44d6d6ddcb85c8ae5fe370590a692280b4c9fc2abcd33ec7678c" [update] [update.modrinth] mod-id = "P7dR8mSH" -version = "AqjTlmq1" +version = "VqiMRXnF" diff --git a/modrinth/26.3.0/mods/zfastnoise.pw.toml b/modrinth/26.3.0/mods/zfastnoise.pw.toml index bcb6223..00a1618 100644 --- a/modrinth/26.3.0/mods/zfastnoise.pw.toml +++ b/modrinth/26.3.0/mods/zfastnoise.pw.toml @@ -1,13 +1,13 @@ name = "Fast Noise" -filename = "zfastnoise-1.0.39+26.3-snapshot-3.jar" +filename = "zfastnoise-1.1.0-beta.3+26.3-snapshot-6.jar" side = "both" [download] -url = "https://cdn.modrinth.com/data/OnlVIpq5/versions/PnXXLaPL/zfastnoise-1.0.39%2B26.3-snapshot-3.jar" +url = "https://cdn.modrinth.com/data/OnlVIpq5/versions/Va5DiCN4/zfastnoise-1.1.0-beta.3%2B26.3-snapshot-6.jar" hash-format = "sha512" -hash = "8d5ed77961959f477e0c810f8eb3162eedc1443c45cfa43429ccb314ea48cb43079d7899e845329552ad72c088945ad821a514de62b55d1404a3ce039e0f04f7" +hash = "175d24e45bb470cd3f85b9fdcf135fbac9a0c918d2d0672b655c2690db6a58c5bcf9e176065bd819ddc150e6d4e77571ee508d342b86401ebd31f2f322a2d9b4" [update] [update.modrinth] mod-id = "OnlVIpq5" -version = "PnXXLaPL" +version = "Va5DiCN4" diff --git a/modrinth/26.3.0/pack.toml b/modrinth/26.3.0/pack.toml index 708ff3c..e8a2fce 100644 --- a/modrinth/26.3.0/pack.toml +++ b/modrinth/26.3.0/pack.toml @@ -6,8 +6,8 @@ pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "52b79985ddb4824b6f2c47057e86debb1cb35a1e3723060c3e1dc1824628c291" +hash = "a474ffe83b0ed66cf434bf403746d2421d3397c60f3e52017299c0a43d8888f5" [versions] fabric = "0.19.3" -minecraft = "26.3-snapshot-3" +minecraft = "26.3-snapshot-6" From 107e1721ebcc68ca57798aaea2abec4d32fa617d Mon Sep 17 00:00:00 2001 From: DuskScorpio Date: Tue, 28 Jul 2026 16:50:48 +0000 Subject: [PATCH 3/3] modpack: exclude Carpet from 26.3 snapshot Carpet 26.3-beta-2 targets 26.3-snapshot-3 and crashes on 26.3-snapshot-6 during boot with a ChunkGenerator mixin descriptor mismatch. Remove the stale 26.3.0 URL and constrain Carpet to versions before 26.3.0 until a compatible Carpet build exists. --- curseforge/26.3.0/index.toml | 6 +----- curseforge/26.3.0/mods/carpet.pw.toml | 8 -------- curseforge/26.3.0/pack.toml | 2 +- file_list.yml | 3 +-- modrinth/26.3.0/index.toml | 5 ----- modrinth/26.3.0/mods/carpet.pw.toml | 8 -------- modrinth/26.3.0/pack.toml | 2 +- 7 files changed, 4 insertions(+), 30 deletions(-) delete mode 100644 curseforge/26.3.0/mods/carpet.pw.toml delete mode 100644 modrinth/26.3.0/mods/carpet.pw.toml diff --git a/curseforge/26.3.0/index.toml b/curseforge/26.3.0/index.toml index cb42e6f..6b2764f 100644 --- a/curseforge/26.3.0/index.toml +++ b/curseforge/26.3.0/index.toml @@ -1,6 +1,2 @@ hash-format = "sha256" - -[[files]] -file = "mods/carpet.pw.toml" -hash = "e3c94663cfea11136fd9ea8c97053f01562b485a135abf8443a14d3579d8830d" -metafile = true +files = [] diff --git a/curseforge/26.3.0/mods/carpet.pw.toml b/curseforge/26.3.0/mods/carpet.pw.toml deleted file mode 100644 index 205fc60..0000000 --- a/curseforge/26.3.0/mods/carpet.pw.toml +++ /dev/null @@ -1,8 +0,0 @@ -name = "Carpet" -filename = "fabric-carpet-26.3-beta-2+v260709.jar" -side = "both" - -[download] -url = "https://github.com/gnembon/fabric-carpet/releases/download/v26.3-beta-2/fabric-carpet-26.3-beta-2%2Bv260709.jar" -hash-format = "sha256" -hash = "ec24232cf30765a7b79fde4934a86aacf12a29c54548f28ccd9aaddd8ad87ea5" diff --git a/curseforge/26.3.0/pack.toml b/curseforge/26.3.0/pack.toml index e6b0e86..f8d2a58 100644 --- a/curseforge/26.3.0/pack.toml +++ b/curseforge/26.3.0/pack.toml @@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "1115380d4c0aec359398486d09572c9ca8bb57536d5c0dc07b5a589cf0ab72e6" +hash = "7b81c9e9d9e6e21a9865a2dded0dfd77e7683d679b98fe5b0114eaed9a31f17e" [versions] fabric = "0.19.3" diff --git a/file_list.yml b/file_list.yml index c08da34..0930fb7 100644 --- a/file_list.yml +++ b/file_list.yml @@ -6,8 +6,7 @@ enabled_files: - mr_slug: carpet cf_slug: carpet name: Carpet - urls: - 26.3.0: "https://github.com/gnembon/fabric-carpet/releases/download/v26.3-beta-2/fabric-carpet-26.3-beta-2%2Bv260709.jar" + version: "<26.3.0" - mr_slug: carpet-tis-addition cf_slug: carpet-tis-addition - mr_slug: ibcarpet diff --git a/modrinth/26.3.0/index.toml b/modrinth/26.3.0/index.toml index bc04cc2..a320165 100644 --- a/modrinth/26.3.0/index.toml +++ b/modrinth/26.3.0/index.toml @@ -5,11 +5,6 @@ file = "mods/c2me-fabric.pw.toml" hash = "55e984844c0a1e82575f794c3ec74d50952dc4cf306f1ae30ced6118e72b60b9" metafile = true -[[files]] -file = "mods/carpet.pw.toml" -hash = "e3c94663cfea11136fd9ea8c97053f01562b485a135abf8443a14d3579d8830d" -metafile = true - [[files]] file = "mods/fabric-api.pw.toml" hash = "e1ff7493b3c0358d4a8cae563a9c13d7e422f056be7e438d186e395a5fa9f90b" diff --git a/modrinth/26.3.0/mods/carpet.pw.toml b/modrinth/26.3.0/mods/carpet.pw.toml deleted file mode 100644 index 205fc60..0000000 --- a/modrinth/26.3.0/mods/carpet.pw.toml +++ /dev/null @@ -1,8 +0,0 @@ -name = "Carpet" -filename = "fabric-carpet-26.3-beta-2+v260709.jar" -side = "both" - -[download] -url = "https://github.com/gnembon/fabric-carpet/releases/download/v26.3-beta-2/fabric-carpet-26.3-beta-2%2Bv260709.jar" -hash-format = "sha256" -hash = "ec24232cf30765a7b79fde4934a86aacf12a29c54548f28ccd9aaddd8ad87ea5" diff --git a/modrinth/26.3.0/pack.toml b/modrinth/26.3.0/pack.toml index e8a2fce..f244653 100644 --- a/modrinth/26.3.0/pack.toml +++ b/modrinth/26.3.0/pack.toml @@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "a474ffe83b0ed66cf434bf403746d2421d3397c60f3e52017299c0a43d8888f5" +hash = "78db4776a7ffdf2b4db0fda9b8f4e900d2e7025d99c5484e9fccee7272b7b52f" [versions] fabric = "0.19.3"