From 7f2b53e41db7c03a7163a695dfed61f478ffac79 Mon Sep 17 00:00:00 2001 From: koka Date: Fri, 4 Sep 2026 14:43:04 +0200 Subject: [PATCH 1/2] release: replace Dream Displays with MyDisplay --- CHANGELOG.md | 12 + README.md | 8 +- build.gradle | 530 ++++++++++-------- gradle.properties | 2 +- ...-dreamdisplays-to-mydisplay-alpha.239.json | 57 ++ pack/packwiz/index.toml | 20 +- pack/packwiz/mods/dreamdisplays.pw.toml | 9 - pack/packwiz/mods/mydisplay.pw.toml | 9 + pack/packwiz/mods/watermedia-binaries.pw.toml | 9 + pack/packwiz/mods/watermedia.pw.toml | 9 + pack/packwiz/pack.toml | 4 +- pack/prism/modrinth.index.json | 42 +- pack/release.json | 4 +- 13 files changed, 439 insertions(+), 276 deletions(-) create mode 100644 pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json delete mode 100644 pack/packwiz/mods/dreamdisplays.pw.toml create mode 100644 pack/packwiz/mods/mydisplay.pw.toml create mode 100644 pack/packwiz/mods/watermedia-binaries.pw.toml create mode 100644 pack/packwiz/mods/watermedia.pw.toml diff --git a/CHANGELOG.md b/CHANGELOG.md index 329e746..756012f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,18 @@ Ce journal suit les **versions du modpack**. Lorsqu'un seul module change, sa ve Aucun changement non publié. +## `26.2.0-alpha.239` + +Dépendances remplacées : **MyDisplay `1.0.0`**, **WaterMedia `3.0.0.23`** et **WaterMedia Binaries `3.0.0.6`**. + +- retire Dream Displays et son second build de test audio du client comme du serveur ; +- ajoute MyDisplay côté client et serveur pour les blocs-écrans, leur configuration et leur synchronisation ; +- ajoute WaterMedia et ses binaires natifs côté client uniquement pour la lecture et le rendu multimédia ; +- adapte seulement le manifeste de MyDisplay afin que ses dépendances client optionnelles ne bloquent pas le serveur dédié, et complète ses traductions EN/FR avec le russe ; +- ne convertit pas les écrans Dream Displays déjà placés, qui doivent être remplacés par des écrans MyDisplay ; +- conserve les dix modules Sanctuary, leurs versions, sauvegardes et protocoles sans changement ; +- garde le module temporaire ZEVENT entièrement absent du workspace et du pack. + ## `26.2.0-alpha.238` Dépendance remplacée : **Dream Displays `1.10.0-dev` (audio-buffer-test, révision 2)**. diff --git a/README.md b/README.md index 0ba0cd4..34adf93 100644 --- a/README.md +++ b/README.md @@ -22,9 +22,11 @@ Licence : **GNU GPL 3.0 or Later** (`GPL-3.0-or-later`) Les descriptions FR/EN/RU sont déclarées dans chaque `fabric.mod.json` et dans les fichiers de langue. Les images fournies servent d'icônes Fabric de leur module. -Version courante du pack distribué : **`26.2.0-alpha.238`**. Cette release conserve les dix modules Sanctuary, notamment Another World **`0.0.0-alpha.58`**, Sanctuary **`0.0.0-alpha.139`** et Red-Stoner **`0.0.0-alpha.20`**, garde ZEVENT entièrement retiré et remplace le premier build de test Dream Displays **`1.10.0-dev`** par sa nouvelle révision audio. +Version courante du pack distribué : **`26.2.0-alpha.239`**. Cette release conserve les dix modules Sanctuary, notamment Another World **`0.0.0-alpha.58`**, Sanctuary **`0.0.0-alpha.139`** et Red-Stoner **`0.0.0-alpha.20`**, garde ZEVENT entièrement retiré et remplace Dream Displays par MyDisplay **`1.0.0`**, WaterMedia **`3.0.0.23`** et WaterMedia Binaries **`3.0.0.6`**. -L’alpha.238 distribue `dreamdisplays-fabric-26.2-audio-buffer-test-2.jar` côté client et serveur. Son nom distinct force Packwiz à retirer le premier JAR de test `dreamdisplays-fabric-26.2-audio-buffer-test.jar` et à télécharger la nouvelle révision sans réutiliser le cache. Aucun ID Sanctuary, format de sauvegarde ou protocole réseau n’est modifié. +L’alpha.239 distribue MyDisplay côté client et serveur, et réserve WaterMedia ainsi que ses binaires natifs au client. Le manifeste de MyDisplay est adapté sans modifier son code afin que ses dépendances de lecture client ne bloquent pas le démarrage d’un serveur dédié ; sa traduction russe complète les langues EN/FR déjà fournies. Packwiz retire automatiquement `dreamdisplays-fabric-26.2-audio-buffer-test-2.jar`. Les écrans Dream Displays déjà posés ne sont pas convertis et doivent être remplacés par des écrans MyDisplay. + +L’alpha.238 distribue la seconde révision `dreamdisplays-fabric-26.2-audio-buffer-test-2.jar` côté client et serveur. L’alpha.237 remplace Dream Displays `1.9.6` par le premier build de test `1.10.0-dev` destiné à corriger la gestion du tampon audio. @@ -428,7 +430,7 @@ Le menu pause est lui aussi possédé par Sanctuary. Il ne conserve que Retour a ## Versions du modpack et mises à jour Modrinth -`pack_version` dans `gradle.properties` est la version du pack complet. `mod_version=0.0.0-alpha.0` et `module_lifecycle=standby` sont les valeurs par défaut des modules en veille ; les propriétés `_version` et `_lifecycle` n’activent et ne font avancer que le module concerné. Le contrat de distribution est dans `pack/release.json`. Depuis l’alpha.236, le module temporaire `zevent` n’est plus construit ni distribué ; l’alpha.238 utilise la seconde révision du build de test Dream Displays `1.10.0-dev` pour son tampon audio. +`pack_version` dans `gradle.properties` est la version du pack complet. `mod_version=0.0.0-alpha.0` et `module_lifecycle=standby` sont les valeurs par défaut des modules en veille ; les propriétés `_version` et `_lifecycle` n’activent et ne font avancer que le module concerné. Le contrat de distribution est dans `pack/release.json`. Depuis l’alpha.236, le module temporaire `zevent` n’est plus construit ni distribué ; l’alpha.239 utilise MyDisplay et son moteur client WaterMedia à la place de Dream Displays. La version globale du pack n’est pas injectée dans les JAR inchangés : leur contenu et leur numéro restent immuables. Le lanceur possède la composition exacte du pack, tandis que chaque manifest conserve la version effective de son module. diff --git a/build.gradle b/build.gradle index c2c1551..6ea440c 100644 --- a/build.gradle +++ b/build.gradle @@ -2921,7 +2921,7 @@ tasks.register("verifyNotchEncounter") { || rootProject.ouch_version != "0.0.0-alpha.11" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.masterkey_version != "0.0.0-alpha.9" - || rootProject.pack_version != "26.2.0-alpha.238" + || rootProject.pack_version != "26.2.0-alpha.239" || manifests.itsalive.custom?.sanctuary26?.data_version != 4 || manifests.sanctuary.custom?.sanctuary26?.data_version != 15 || manifests.ouch.depends?.itsalive != ">=0.0.0-alpha.37" @@ -3010,7 +3010,7 @@ tasks.register("verifyMagicCarpet") { "iliketomoveit/src/main/resources/assets/iliketomoveit/models/item/magic_carpet.json")) def carpetTexture = file( "iliketomoveit/src/main/resources/assets/iliketomoveit/textures/item/magic_carpet.png") - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.sanctuary_version != "0.0.0-alpha.139" @@ -3643,7 +3643,7 @@ tasks.register("verifyProgressivePauseMenuRelease") { [(locale): new JsonSlurper().parse(file( "sanctuary/src/main/resources/assets/sanctuary/lang/${locale}.json"))] } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.onlyfun_version != "0.0.0-alpha.27" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -3693,7 +3693,7 @@ tasks.register("verifyMirrorLavenderDrawerRelease") { def redStonerRegistry = file( "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/registry/RedStonerRegistries.java").text def drawerRecipe = file("redstoner/src/main/resources/data/redstoner/recipe/drawer.json") - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.redstoner_version != "0.0.0-alpha.20" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -4675,7 +4675,7 @@ tasks.register("verifyShopPricingLayoutRelease") { "pack/migrations/26.2.0-alpha.192-shop-pricing-layout-to-alpha.193.json")) def release = new JsonSlurper().parse(file("pack/release.json")) def index = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.sanctuary_version != "0.0.0-alpha.139" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -4720,7 +4720,7 @@ tasks.register("verifyCuisineCropsRelease") { def climate = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/ClimateCropForaging.java").text def rice = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/RiceCropBlock.java").text def bean = file("itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/agriculture/BeanCropBlock.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.itsalive_version != "0.0.0-alpha.38" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version || migration.source?.pack_version != "26.2.0-alpha.193" @@ -4769,7 +4769,7 @@ tasks.register("verifyShopCsvBossGatesRelease") { def bossGate = file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/shop/OnlyFunBossShopGate.java").text def catalog = file("onlyfun/src/main/java/fr/koka99cab/sanctuary26/onlyfun/shop/OnlyFunShopCatalog.java").text def offerCatalog = file("sanctuary/src/main/java/fr/koka99cab/sanctuary26/sanctuary/shop/ShopOfferCatalog.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.sanctuary_version != "0.0.0-alpha.139" || release.pack_version != rootProject.pack_version || index.versionId != rootProject.pack_version @@ -4816,7 +4816,7 @@ tasks.register("verifyCulinaryMailboxGrappleFixesRelease") { def release = new JsonSlurper().parse(file("pack/release.json")) def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) def packwiz = file("pack/packwiz/pack.toml").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || migration.source?.pack_version != "26.2.0-alpha.195" || migration.target?.pack_version != "26.2.0-alpha.196" || migration.target?.modules != [ @@ -4834,10 +4834,10 @@ tasks.register("verifyCulinaryMailboxGrappleFixesRelease") { || migration.distribution?.jei?.target != "30.26.0.182" || migration.compatibility?.save_migration_required != false || migration.compatibility?.registry_ids_changed != false - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"')) { + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"')) { throw new GradleException("The alpha.196 culinary, mailbox and grapple release contract is incomplete") } } @@ -4862,7 +4862,7 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") { def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) def packwiz = file("pack/packwiz/pack.toml").text def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.source?.pack_version != "26.2.0-alpha.196" @@ -4882,10 +4882,10 @@ tasks.register("verifyQuestRequestsCauldronBatchesRelease") { || migration.distribution?.jei?.target != "30.26.0.186" || migration.compatibility?.sanctuary_target_network_protocol != 19 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"')) { + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"')) { throw new GradleException("The alpha.197 quest-request and cauldron-batch release contract is incomplete") } } @@ -4912,7 +4912,7 @@ tasks.register("verifyFermentationBarrelAutomationRelease") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def itsAliveManifest = new JsonSlurper().parse(file("itsalive/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.itsalive_version != "0.0.0-alpha.38" || migration.source?.pack_version != "26.2.0-alpha.197" || migration.target?.pack_version != "26.2.0-alpha.198" @@ -4931,10 +4931,10 @@ tasks.register("verifyFermentationBarrelAutomationRelease") { || migration.distribution?.packwiz_index_refreshed != true || itsAliveManifest.custom?.sanctuary26?.data_version != 4 || itsAliveManifest.custom?.sanctuary26?.network_protocol != 4 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"')) { throw new GradleException("The alpha.198 fermentation barrel release contract is incomplete") } @@ -4962,7 +4962,7 @@ tasks.register("verifyQuestRequestContractsRelease") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.source?.pack_version != "26.2.0-alpha.198" @@ -4976,10 +4976,10 @@ tasks.register("verifyQuestRequestContractsRelease") { || migration.quest_request_contracts?.chat_accept_revalidates_distance_owner_sign_and_claim != true || migration.compatibility?.sanctuary_target_network_protocol != 20 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"')) { throw new GradleException("The alpha.199 quest-request contract release is incomplete") @@ -5017,7 +5017,7 @@ tasks.register("verifyWeatherTntAmbianceRelease") { def ambianceManifest = new JsonSlurper().parse(file("ambiance/src/main/resources/fabric.mod.json")) def ouchManifest = new JsonSlurper().parse(file("ouch/src/main/resources/fabric.mod.json")) def rootBuild = file("build.gradle").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || rootProject.ouch_version != "0.0.0-alpha.11" || migration.source?.pack_version != "26.2.0-alpha.199" @@ -5051,10 +5051,10 @@ tasks.register("verifyWeatherTntAmbianceRelease") { || !weatherTnt.contains("AmbianceDailyWeather.CLEAR") || !weatherTnt.contains("CLEAR_WEATHER_TICKS = 864_000") || weatherTnt.contains("setWeatherParameters") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || !packwizIndex.contains('file = "mods/ouch-0.0.0-alpha.11.jar"')) { throw new GradleException("The alpha.200 Weather TNT and Ambiance release is incomplete") @@ -5083,7 +5083,7 @@ tasks.register("verifyQuestRequestEscrowRelease") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def sanctuaryManifest = new JsonSlurper().parse(file("sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.source?.pack_version != "26.2.0-alpha.200" || migration.source?.modules?.sanctuary != "0.0.0-alpha.115" @@ -5098,10 +5098,10 @@ tasks.register("verifyQuestRequestEscrowRelease") { || migration.compatibility?.sanctuary_target_network_protocol != 21 || sanctuaryManifest.custom?.sanctuary26?.data_version != 15 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"')) { throw new GradleException("The alpha.201 quest-request escrow release is incomplete") } @@ -5137,7 +5137,7 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") { "iliketomoveit/src/main/resources/fabric.mod.json")) def sanctuaryManifest = new JsonSlurper().parse(file( "sanctuary/src/main/resources/fabric.mod.json")) - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" @@ -5177,10 +5177,10 @@ tasks.register("verifyWaystoneShopCulinaryAlpha202Release") { || moveItManifest.custom?.sanctuary26?.network_protocol != 5 || sanctuaryManifest.custom?.sanctuary26?.data_version != 15 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/iliketomoveit-0.0.0-alpha.18.jar"') @@ -5297,7 +5297,7 @@ tasks.register("verifySafeVaultFeature") { def image = javax.imageio.ImageIO.read(file("anotherworld/src/main/resources/assets/anotherworld/textures/${path}")) image == null || image.width != size[0] || image.height != size[1] }.keySet() - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.schema_version != 1 @@ -5489,7 +5489,7 @@ tasks.register("verifySafeVaultInterfaceAlpha203Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.202" || migration.source?.modules != [anotherworld: "0.0.0-alpha.50"] @@ -5507,9 +5507,9 @@ tasks.register("verifySafeVaultInterfaceAlpha203Release") { || migration.distribution?.jei?.modrinth_version_id != "XXTFqqwG" || migration.distribution?.jei?.prism_manifest_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.50.jar"') || jeiFiles.size() != 1 @@ -5535,7 +5535,7 @@ tasks.register("verifySafeVaultFixAlpha204Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.203" || migration.source?.modules != [anotherworld: "0.0.0-alpha.51"] @@ -5561,9 +5561,9 @@ tasks.register("verifySafeVaultFixAlpha204Release") { || migration.distribution?.jei?.modrinth_version_id != "OcMayhUH" || migration.distribution?.jei?.prism_manifest_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.51.jar"') || jeiFiles.size() != 1 @@ -5589,7 +5589,7 @@ tasks.register("verifySafeVaultCubeAlpha205Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.204" || migration.source?.modules != [anotherworld: "0.0.0-alpha.52"] @@ -5618,9 +5618,9 @@ tasks.register("verifySafeVaultCubeAlpha205Release") { || migration.distribution?.jei?.modrinth_version_id != "NtfJDMhk" || migration.distribution?.jei?.prism_manifest_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.52.jar"') || jeiFiles.size() != 1 @@ -5647,7 +5647,7 @@ tasks.register("verifySafeVaultCtmAlpha206Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.205" || migration.source?.modules != [anotherworld: "0.0.0-alpha.53"] @@ -5670,9 +5670,9 @@ tasks.register("verifySafeVaultCtmAlpha206Release") { || migration.compatibility?.pack_release_updated != true || migration.distribution?.packwiz_index_refreshed != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.53.jar"') || jeiFiles.size() != 1 @@ -5699,7 +5699,7 @@ tasks.register("verifySafeVaultUnlimitedAlpha207Release") { def packwiz = file("pack/packwiz/pack.toml").text def packwizIndex = file("pack/packwiz/index.toml").text def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || migration.source?.pack_version != "26.2.0-alpha.206" || migration.source?.modules != [anotherworld: "0.0.0-alpha.54"] @@ -5729,9 +5729,9 @@ tasks.register("verifySafeVaultUnlimitedAlpha207Release") { || migration.compatibility?.pack_release_updated != true || migration.distribution?.packwiz_index_refreshed != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"') || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.54.jar"') || jeiFiles.size() != 1 @@ -5787,7 +5787,7 @@ tasks.register("verifyCanapliaFoundation") { "itsalive/src/main/java/fr/koka99cab/sanctuary26/itsalive/ItsAliveMod.java").text def visualApiSource = file( "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/api/visual/AmbianceVisualEffectApi.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.issue != 35 @@ -6039,7 +6039,7 @@ tasks.register("verifyCanapliaAlpha209Release") { ambiance: "0.0.0-alpha.14", itsalive: "0.0.0-alpha.33", onlyfun: "0.0.0-alpha.20"] - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || rootProject.itsalive_version != "0.0.0-alpha.38" || rootProject.onlyfun_version != "0.0.0-alpha.27" @@ -6087,9 +6087,9 @@ tasks.register("verifyCanapliaAlpha209Release") { || fixMigration.compatibility?.network_protocol_changed != false || fixMigration.distribution?.pack_release_updated != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || !packwizIndex.contains('file = "mods/itsalive-0.0.0-alpha.38.jar"') || !packwizIndex.contains('file = "mods/onlyfun-0.0.0-alpha.27.jar"') @@ -6158,7 +6158,7 @@ tasks.register("verifyAlpha210Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.onlyfun_version != "0.0.0-alpha.27" || rootProject.iliketomoveit_version != "0.0.0-alpha.18" @@ -6204,10 +6204,10 @@ tasks.register("verifyAlpha210Release") { || manifests.iliketomoveit.custom?.sanctuary26?.network_protocol != 5 || manifests.itsalive.custom?.sanctuary26?.data_version != 4 || manifests.itsalive.custom?.sanctuary26?.network_protocol != 4 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || jeiFiles.size() != 1 @@ -6288,7 +6288,7 @@ tasks.register("verifyAlpha211Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.source?.pack_version != "26.2.0-alpha.210" || migration.source?.modules != expectedSource @@ -6316,17 +6316,17 @@ tasks.register("verifyAlpha211Release") { || migration.distribution?.prism_modrinth_index_updated != true || migration.distribution?.shared_client_server_mrpack != true || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } - || prism.files?.size() != 6 + || prism.files?.size() != 8 || jeiFiles.size() != 1 || jeiFiles[0].hashes?.sha1 != "e82447aff07e87a372cf817bc9c28b0d77b6f55c" || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || !changelog.contains("## `26.2.0-alpha.211`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.211 Abjection and gameplay-polish release is incomplete") } } @@ -6360,7 +6360,7 @@ tasks.register("verifyAlpha212Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.source?.pack_version != "26.2.0-alpha.211" || migration.source?.modules != [sanctuary: "0.0.0-alpha.119"] @@ -6382,16 +6382,16 @@ tasks.register("verifyAlpha212Release") { || manifest.custom?.sanctuary26?.data_version != 15 || manifest.custom?.sanctuary26?.network_protocol != 24 || !minecraftMixin.contains('method = "pickBlockOrEntity"') - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || prism.files?.size() != 6 + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || prism.files?.size() != 8 || jeiFiles.size() != 1 - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.119.jar"') || !changelog.contains("## `26.2.0-alpha.212`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.212 Black Market startup-fix release is incomplete") } } @@ -6425,7 +6425,7 @@ tasks.register("verifyAlpha213Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.212" || migration.source?.modules != [ambiance: "0.0.0-alpha.15"] @@ -6449,16 +6449,16 @@ tasks.register("verifyAlpha213Release") { || manifest.custom?.sanctuary26?.network_protocol != 6 || !levelEventMixin.contains('@Mixin(LevelEventHandler.class)') || !levelEventMixin.contains('@Inject(method = "levelEvent"') - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || prism.files?.size() != 6 + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || prism.files?.size() != 8 || jeiFiles.size() != 1 - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.15.jar"') || !changelog.contains("## `26.2.0-alpha.213`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.213 Ambiance startup-fix release is incomplete") } } @@ -6493,7 +6493,7 @@ tasks.register("verifyAlpha214Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscAudioPlayer.java").text def urlSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/white_disc/WhiteDiscUrlSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.213" || migration.source?.modules != [ambiance: "0.0.0-alpha.16"] @@ -6522,16 +6522,16 @@ tasks.register("verifyAlpha214Release") { || !audioPlayer.contains('message.ambiance.white_disc.loading') || !audioPlayer.contains('message.ambiance.white_disc.failed') || !urlSmoke.contains("https://youtu.be/Ue5ZBe-GzSM?si=78LSbtBQzUYzhA2Y") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || prism.files?.size() != 6 - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || prism.files?.size() != 8 + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.16.jar"') || !changelog.contains("## `26.2.0-alpha.214`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.214 white-disc solo synchronization release is incomplete") } } @@ -6572,7 +6572,7 @@ tasks.register("verifyAlpha215Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStream.java").text def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.214" || migration.source?.modules != [ambiance: "0.0.0-alpha.17"] @@ -6612,16 +6612,16 @@ tasks.register("verifyAlpha215Release") { || !playbackSmoke.contains("https://www.youtube.com/watch?v=Ue5ZBe-GzSM") || !playbackSmoke.contains("stream.paddedSilenceBytes() != 0L") || !playbackSmoke.contains("stream.decodedTimelineMillis() != 4_000L") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || prism.files?.size() != 6 - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || prism.files?.size() != 8 + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.17.jar"') || !changelog.contains("## `26.2.0-alpha.215`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.215 resilient white-disc playback release is incomplete") } } @@ -6666,7 +6666,7 @@ tasks.register("verifyAlpha216Release") { "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStreamSmoke.java").text def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.215" || migration.source?.modules != [ambiance: "0.0.0-alpha.18"] @@ -6710,16 +6710,16 @@ tasks.register("verifyAlpha216Release") { || !playbackSmoke.contains("stream.paddedSilenceBytes() != 0L") || !playbackSmoke.contains("stream.decodedTimelineMillis() != 4_000L") || !playbackSmoke.contains("LavaplayerAudioStream.SAMPLE_RATE * 2 * 4") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || prism.files?.size() != 6 - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || prism.files?.size() != 8 + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.18.jar"') || !changelog.contains("## `26.2.0-alpha.216`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.216 white-disc audio-quality release is incomplete") } } @@ -6754,7 +6754,7 @@ tasks.register("verifyAlpha217Release") { "ambiance/src/main/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscAudioPlayer.java").text def streamSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/LavaplayerAudioStreamSmoke.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.216" || migration.source?.modules != [ambiance: "0.0.0-alpha.19"] @@ -6785,16 +6785,16 @@ tasks.register("verifyAlpha217Release") { || !audioPlayer.contains("PLAYBACK_PITCH = 1.0F") || audioPlayer.count("channel.setPitch(PLAYBACK_PITCH)") != 2 || !streamSmoke.contains("WhiteDiscAudioPlayer.PLAYBACK_PITCH - 1.0F") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || prism.files?.size() != 6 - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || prism.files?.size() != 8 + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.19.jar"') || !changelog.contains("## `26.2.0-alpha.217`") || changelog.contains("## Modifications non distribuées") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.217 white-disc pitch release is incomplete") } } @@ -6851,7 +6851,7 @@ tasks.register("verifyAlpha218Release") { def obsoleteJars = sourceModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.redstoner_version != "0.0.0-alpha.20" || currentModules.findAll { id, version -> id != "redstoner" && id != "sanctuary" && id != "onlyfun" && id != "iliketomoveit" @@ -6892,13 +6892,13 @@ tasks.register("verifyAlpha218Release") { || !onlyFunPolicy.contains('namespace.equals("redstoner") && path.equals("storage_terminal")') || !blackMarketPolicy.contains('namespace.equals("redstoner") && path.equals("storage_terminal")') || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.218`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.218 Storage Terminal release is incomplete") } } @@ -6961,7 +6961,7 @@ tasks.register("verifyAlpha219Release") { include "**/*golden*days*.zip", "**/*golden*days*.jar" exclude "**/build/**", "**/.gradle/**", "**/.git/**" }.files - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.source?.pack_version != "26.2.0-alpha.218" || migration.source?.modules != sourceModules @@ -6993,15 +6993,15 @@ tasks.register("verifyAlpha219Release") { || manifests.ambiance.custom?.sanctuary26?.data_version != 2 || manifests.ambiance.custom?.sanctuary26?.network_protocol != 6 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version || prism.files.any { it.path.toLowerCase().contains("golden-days") } - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !forbiddenGoldenArchives.isEmpty() || !changelog.contains("## `26.2.0-alpha.219`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.219 finite Alpha/Indev release is incomplete") } } @@ -7040,7 +7040,7 @@ tasks.register("verifyAlpha220Release") { "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/client/gui/StorageTerminalScreen.java").text def networking = file( "redstoner/src/main/java/fr/koka99cab/sanctuary26/redstoner/network/RedStonerNetworking.java").text - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.source?.pack_version != "26.2.0-alpha.219" || migration.source?.modules != [redstoner: "0.0.0-alpha.11"] @@ -7081,13 +7081,13 @@ tasks.register("verifyAlpha220Release") { || networking.contains("storage_terminal_snapshot") || networking.contains("storage_terminal_action") || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.20.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.11.jar"') || !changelog.contains("## `26.2.0-alpha.220`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.220 Storage Terminal menu release is incomplete") } } @@ -7135,7 +7135,7 @@ tasks.register("verifyAlpha221Release") { def playbackSmoke = file( "ambiance/src/test/java/fr/koka99cab/sanctuary26/ambiance/client/audio/WhiteDiscPlaybackSmoke.java").text def contract = migration.white_disc_native_rate - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.ambiance_version != "0.0.0-alpha.22" || migration.source?.pack_version != "26.2.0-alpha.220" || migration.source?.modules != [ambiance: "0.0.0-alpha.21"] @@ -7184,13 +7184,13 @@ tasks.register("verifyAlpha221Release") { || !playbackSmoke.contains("PCM cadence: 100%% speed") || !whiteDiscDocumentation.contains("48 000 Hz") || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || !packwiz.contains('version = "26.2.0-alpha.238"') + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.22.jar"') || packwizIndex.contains('file = "mods/ambiance-0.0.0-alpha.21.jar"') || !changelog.contains("## `26.2.0-alpha.221`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.221 native-rate white-disc release is incomplete") } } @@ -7269,7 +7269,7 @@ tasks.register("verifyAlpha222Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.redstoner_version != "0.0.0-alpha.20" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.source?.pack_version != "26.2.0-alpha.221" @@ -7343,10 +7343,10 @@ tasks.register("verifyAlpha222Release") { || !questEditor.contains("QuestIdSuggestions.suggest") || !suggestions.contains("Normalizer.Form.NFD") || !suggestions.contains("public static final int LIMIT = 5") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.20.jar"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.12.jar"') @@ -7357,7 +7357,7 @@ tasks.register("verifyAlpha222Release") { || jeiFiles[0].hashes?.sha1 != "e82447aff07e87a372cf817bc9c28b0d77b6f55c" || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || !changelog.contains("## `26.2.0-alpha.222`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.222 terminal-search and quest-tracker release is incomplete") } } @@ -7488,7 +7488,7 @@ tasks.register("verifyAlpha223Release") { def jeiFiles = prism.files.findAll { it.path == "mods/jei-26.2-fabric-30.29.0.201.jar" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.source?.pack_version != "26.2.0-alpha.222" || migration.source?.modules != [sanctuary: "0.0.0-alpha.124"] @@ -7553,10 +7553,10 @@ tasks.register("verifyAlpha223Release") { || !questSync.contains("case EMERALD -> 2") || !inventorySmoke.contains("Hotbar snapshot must remain untouched") || !displaySmoke.contains("QuestTrackerDisplayMode.PANEL.next()") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.124.jar"') || !packwizJei.contains('filename = "jei-26.2-fabric-30.29.0.201.jar"') @@ -7565,7 +7565,7 @@ tasks.register("verifyAlpha223Release") { || jeiFiles[0].hashes?.sha1 != "e82447aff07e87a372cf817bc9c28b0d77b6f55c" || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || !changelog.contains("## `26.2.0-alpha.223`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.223 inventory-sort and quest-tracker display release is incomplete") } } @@ -7629,7 +7629,7 @@ tasks.register("verifyAlpha224Release") { }.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || workspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.223" @@ -7672,14 +7672,14 @@ tasks.register("verifyAlpha224Release") { || !sortPayload.contains("buffer.writeBoolean(container)") || !sortPayload.contains("buffer.readBoolean()") || !networking.contains("PROTOCOL_VERSION = 24") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.224`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.224 Notch, Magic Carpet and container-sort release is incomplete") } } @@ -7774,7 +7774,7 @@ tasks.register("verifyAlpha225Release") { "iliketomoveit/src/main/resources/assets/iliketomoveit/textures/item/magic_carpet.png") def carpetTextureHash = MessageDigest.getInstance("SHA-256") .digest(carpetTexture.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || currentWorkspaceModules.any { id, version -> rootProject.property("${id}_version") != version } || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.224" @@ -7827,14 +7827,14 @@ tasks.register("verifyAlpha225Release") { || !lootboxes.contains("SanctuaryEntityPolicy.isTemporaryCompanion") || carpetModel.textures?.layer0 != "iliketomoveit:item/magic_carpet" || carpetTextureHash != "3e4527d24a37f0632b27d2c857b047c581db07eaa41befaffbf28043a8ed86cc" - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || obsoleteJars.any { packwizIndex.contains(it) } || !changelog.contains("## `26.2.0-alpha.225`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.225 four-ticket bug-fix release is incomplete") } } @@ -7900,7 +7900,7 @@ tasks.register("verifyAlpha226Release") { def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.status != "released" || migration.source?.pack_version != "26.2.0-alpha.225" @@ -7943,14 +7943,14 @@ tasks.register("verifyAlpha226Release") { || !renderer.contains("LivingEntityRenderLayerRegistrationCallback") || !avatarMixin.contains("appearance.bannerCape()") || onlyFun.contains('"white_cape"') - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.129.jar"') || !changelog.contains("## `26.2.0-alpha.226`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.226 craftable banner cape release is incomplete") } } @@ -7991,7 +7991,7 @@ tasks.register("verifyAlpha227Release") { def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.status != "released" @@ -8031,15 +8031,15 @@ tasks.register("verifyAlpha227Release") { || anotherWorldManifest.custom?.sanctuary26?.network_protocol != 2 || sanctuaryManifest.custom?.sanctuary26?.data_version != 15 || sanctuaryManifest.custom?.sanctuary26?.network_protocol != 24 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.56.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.130.jar"') || !changelog.contains("## `26.2.0-alpha.227`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.227 persistent Backroom release is incomplete") } } @@ -8089,7 +8089,7 @@ tasks.register("verifyAlpha228Release") { def requiredJars = releasedModules.collect { id, version -> "file = \"mods/${id}-${version}.jar\"" } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.redstoner_version != "0.0.0-alpha.20" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.status != "released" @@ -8136,15 +8136,15 @@ tasks.register("verifyAlpha228Release") { || !backroomLayout.contains("WORLD_MAX_Y_EXCLUSIVE = 384") || !backroomLayout.contains("LEVEL_4(-64, 27)") || !backroomLayout.contains("mazeConnected") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.13.jar"') || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.131.jar"') || !changelog.contains("## `26.2.0-alpha.228`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.228 five-level Backroom and terminal release is incomplete") } } @@ -8199,7 +8199,7 @@ tasks.register("verifyAlpha229Release") { "screen.redstoner.storage_terminal.sort.alphabetical", "screen.redstoner.storage_terminal.sort.count_ascending", "screen.redstoner.storage_terminal.sort.count_descending"] - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.redstoner_version != "0.0.0-alpha.20" || rootProject.sanctuary_version != "0.0.0-alpha.139" || migration.status != "released" @@ -8237,14 +8237,14 @@ tasks.register("verifyAlpha229Release") { || !screen.contains("sortMode = sortMode.next()") || !smoke.contains("verifySorting()") || !smoke.contains("periodic quantity refresh") - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.15.jar"') || !changelog.contains("## `26.2.0-alpha.229`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.229 storage-terminal sorting release is incomplete") } } @@ -8284,7 +8284,7 @@ tasks.register("verifyAlpha230Release") { } def indexHash = java.security.MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.schema_version != 1 @@ -8319,10 +8319,10 @@ tasks.register("verifyAlpha230Release") { || manifests.sanctuary.custom?.sanctuary26?.network_protocol != 24 || manifests.redstoner.custom?.sanctuary26?.data_version != 5 || manifests.redstoner.custom?.sanctuary26?.network_protocol != 9 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"\nhash = "22a37980bd7b121cbfe65e853a6c6a9f8549bbf4af9b4fdd5f22dbd04df273b0"') @@ -8330,7 +8330,7 @@ tasks.register("verifyAlpha230Release") { || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.132.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.16.jar"') || !changelog.contains("## `26.2.0-alpha.230`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.230 Sanctuary polish release is incomplete") } } @@ -8390,7 +8390,7 @@ tasks.register("verifyAlpha231Release") { } def indexHash = java.security.MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.schema_version != 1 @@ -8454,10 +8454,10 @@ tasks.register("verifyAlpha231Release") { || jeiFiles[0].hashes?.sha512 != "2279cb0ec4e41d9eebad80c2ecac76d19c8bc8e5aac69ba13f35b77494625c70d66edc74d59959116012bfb2f464b55806dd69fbf6387f25679b1553953e329a" || jeiFiles[0].fileSize != 1_860_103 || !packwizJei.contains('filename = "jei-26.2-fabric-30.29.0.201.jar"') - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.139.jar"\nhash = "22a37980bd7b121cbfe65e853a6c6a9f8549bbf4af9b4fdd5f22dbd04df273b0"') @@ -8466,7 +8466,7 @@ tasks.register("verifyAlpha231Release") { || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.17.jar"') || !changelog.contains("## `26.2.0-alpha.231`") || !readme.contains("Red-Stoner **`0.0.0-alpha.20`**") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**")) { + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**")) { throw new GradleException("The alpha.231 Backroom and trophy-panel release is incomplete") } } @@ -8534,7 +8534,7 @@ tasks.register("verifyAlpha232Release") { } def indexHash = MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.anotherworld_version != "0.0.0-alpha.58" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.redstoner_version != "0.0.0-alpha.20" @@ -8593,10 +8593,10 @@ tasks.register("verifyAlpha232Release") { !lang.containsKey("message.canon.camera.screenshot_saved") || !lang.containsKey("message.canon.camera.screenshot_failed") } - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"\nhash = "8936b0a5bf3f122afc752cba5e8d96ac92cfb1458785c3fac13d25f51cb4814c"') @@ -8607,7 +8607,7 @@ tasks.register("verifyAlpha232Release") { || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.18.jar"') || !changelog.contains("## `26.2.0-alpha.232`") || !changelog.contains("ticket #146") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**") || !readme.contains("Another World **`0.0.0-alpha.58`**")) { throw new GradleException("The alpha.232 Canon screenshot and alpha.231 follow-up release is incomplete") } @@ -8648,7 +8648,7 @@ tasks.register("verifyAlpha233Release") { } def indexHash = MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.sanctuary_version != "0.0.0-alpha.139" || rootProject.redstoner_version != "0.0.0-alpha.20" || migration.schema_version != 1 @@ -8680,10 +8680,10 @@ tasks.register("verifyAlpha233Release") { || manifests.sanctuary.custom?.sanctuary26?.network_protocol != 24 || manifests.redstoner.custom?.sanctuary26?.data_version != 5 || manifests.redstoner.custom?.sanctuary26?.network_protocol != 9 - || release.pack_version != "26.2.0-alpha.238" - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" - || prism.versionId != "26.2.0-alpha.238" - || !packwiz.contains('version = "26.2.0-alpha.238"') + || release.pack_version != "26.2.0-alpha.239" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" + || prism.versionId != "26.2.0-alpha.239" + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || !packwizIndex.contains('file = "mods/anotherworld-0.0.0-alpha.58.jar"\nhash = "8936b0a5bf3f122afc752cba5e8d96ac92cfb1458785c3fac13d25f51cb4814c"') @@ -8692,33 +8692,37 @@ tasks.register("verifyAlpha233Release") { || packwizIndex.contains('file = "mods/sanctuary-0.0.0-alpha.138.jar"') || packwizIndex.contains('file = "mods/redstoner-0.0.0-alpha.19.jar"') || !changelog.contains("## `26.2.0-alpha.233`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**") || !readme.contains("véritable panneau Vanilla en chêne pâle")) { throw new GradleException("The alpha.233 vanilla trophy-sign release is incomplete") } } } -tasks.register("verifyAlpha238Release") { +tasks.register("verifyAlpha239Release") { group = "verification" - description = "Checks the Sanctuary 26.2.0-alpha.238 Dream Displays audio-buffer test revision 2 release." - inputs.file(file("pack/migrations/26.2.0-alpha.237-dreamdisplays-audio-buffer-2-to-alpha.238.json")) + description = "Checks the Sanctuary 26.2.0-alpha.239 MyDisplay and WaterMedia release." + inputs.file(file("pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json")) inputs.file(file("pack/release.json")) inputs.file(file("pack/prism/modrinth.index.json")) inputs.file(file("pack/packwiz/pack.toml")) inputs.file(file("pack/packwiz/index.toml")) - inputs.file(file("pack/packwiz/mods/dreamdisplays.pw.toml")) + inputs.file(file("pack/packwiz/mods/mydisplay.pw.toml")) + inputs.file(file("pack/packwiz/mods/watermedia.pw.toml")) + inputs.file(file("pack/packwiz/mods/watermedia-binaries.pw.toml")) inputs.file(file("CHANGELOG.md")) inputs.file(file("README.md")) doLast { def migration = new JsonSlurper().parse(file( - "pack/migrations/26.2.0-alpha.237-dreamdisplays-audio-buffer-2-to-alpha.238.json")) + "pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json")) def release = new JsonSlurper().parse(file("pack/release.json")) def prism = new JsonSlurper().parse(file("pack/prism/modrinth.index.json")) def packwiz = file("pack/packwiz/pack.toml").text def packwizIndexFile = file("pack/packwiz/index.toml") def packwizIndex = packwizIndexFile.text - def dreamMetafile = file("pack/packwiz/mods/dreamdisplays.pw.toml").text + def myDisplayMetafile = file("pack/packwiz/mods/mydisplay.pw.toml").text + def waterMediaMetafile = file("pack/packwiz/mods/watermedia.pw.toml").text + def waterMediaBinariesMetafile = file("pack/packwiz/mods/watermedia-binaries.pw.toml").text def changelog = file("CHANGELOG.md").text def readme = file("README.md").text def requiredJars = distributedModuleIds.collect { id -> @@ -8726,69 +8730,99 @@ tasks.register("verifyAlpha238Release") { } def indexHash = MessageDigest.getInstance("SHA-256") .digest(packwizIndexFile.bytes).encodeHex().toString() - def dreamFiles = prism.files.findAll { - it.path == "mods/dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" + def myDisplayFiles = prism.files.findAll { it.path == "mods/mydisplay-1.0.0-sanctuary.jar" } + def waterMediaFiles = prism.files.findAll { it.path == "mods/watermedia-3.0.0.23.jar" } + def waterMediaBinariesFiles = prism.files.findAll { it.path == "mods/watermedia-binaries-3.0.0.6.jar" } + def addedDependencies = migration.added_dependencies.collectEntries { [(it.id): it] } + def metafileIsPinned = { text, filename, side, url, sha256 -> + text.contains("filename = \"${filename}\"") + && text.contains("side = \"${side}\"") + && text.contains('pin = true') + && text.contains("url = \"${url}\"") + && text.contains('hash-format = "sha256"') + && text.contains("hash = \"${sha256}\"") + && !text.contains('[update.modrinth]') } - if (rootProject.pack_version != "26.2.0-alpha.238" + if (rootProject.pack_version != "26.2.0-alpha.239" || rootProject.findProperty("zevent_version") != null || rootProject.findProperty("zevent_lifecycle") != null || file("zevent/build.gradle").exists() || file("settings.gradle").text.contains('"zevent"') || migration.schema_version != 1 || migration.status != "released" - || migration.released_in != "26.2.0-alpha.238" - || migration.pack?.source_version != "26.2.0-alpha.237" - || migration.pack?.target_version != "26.2.0-alpha.238" - || migration.dependency?.id != "dreamdisplays" - || migration.dependency?.source_version != "1.10.0-dev" - || migration.dependency?.target_version != "1.10.0-dev" - || migration.dependency?.source_filename != "dreamdisplays-fabric-26.2-audio-buffer-test.jar" - || migration.dependency?.target_filename != "dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" - || migration.dependency?.sha256 != "fae5681de3209dba98d6359fb878e7cf230cde08e96c08fb71394aed35823188" - || migration.dependency?.client_and_server_required != true - || migration.dependency?.pinned_test_build != true - || migration.dependency?.audio_buffer_fix != true + || migration.released_in != "26.2.0-alpha.239" + || migration.pack?.source_version != "26.2.0-alpha.238" + || migration.pack?.target_version != "26.2.0-alpha.239" + || migration.removed_dependencies?.size() != 1 + || migration.removed_dependencies[0]?.id != "dreamdisplays" + || migration.removed_dependencies[0]?.version != "1.10.0-dev" + || migration.removed_dependencies[0]?.filename != "dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" + || addedDependencies.keySet() != (["mydisplay", "watermedia", "watermedia_binaries"] as Set) + || addedDependencies.mydisplay?.version != "1.0.0" + || addedDependencies.mydisplay?.filename != "mydisplay-1.0.0-sanctuary.jar" + || addedDependencies.mydisplay?.sha256 != "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165" + || addedDependencies.mydisplay?.side != "both" + || addedDependencies.mydisplay?.manifest_client_dependencies_optional != true + || addedDependencies.mydisplay?.languages != ["en_us", "fr_fr", "ru_ru"] + || addedDependencies.watermedia?.version != "3.0.0.23" + || addedDependencies.watermedia?.sha256 != "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38" + || addedDependencies.watermedia?.side != "client" + || addedDependencies.watermedia_binaries?.version != "3.0.0.6" + || addedDependencies.watermedia_binaries?.sha256 != "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e" + || addedDependencies.watermedia_binaries?.side != "client" || migration.compatibility?.world_reset_required != false || migration.compatibility?.save_migration_required != false || migration.compatibility?.sanctuary_module_versions_changed != false || migration.compatibility?.network_protocols_changed != false || migration.compatibility?.client_and_server_must_update != true + || migration.compatibility?.existing_dreamdisplays_blocks_converted != false || migration.distribution?.packwiz_index_refreshed != true || migration.distribution?.prism_modrinth_index_updated != true || migration.distribution?.old_dreamdisplays_jar_removed != true + || migration.distribution?.watermedia_client_only != true || migration.distribution?.zevent_jar_absent != true || migration.distribution?.distributed_module_count != 10 || distributedModuleIds.size() != 10 || release.pack_version != rootProject.pack_version - || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.238.mrpack" + || release.modrinth?.primary_file != "sanctuary-26.2.0-alpha.239.mrpack" || prism.versionId != rootProject.pack_version - || prism.files?.size() != 6 - || dreamFiles.size() != 1 - || prism.files.any { it.path == "mods/dreamdisplays-fabric-26.2-1.9.6.jar" } - || prism.files.any { it.path == "mods/dreamdisplays-fabric-26.2-audio-buffer-test.jar" } - || dreamFiles[0].hashes?.sha1 != "fb3d6376c2222619d93d97cb83b50aafa171b1df" - || dreamFiles[0].hashes?.sha512 != "6f7a0484bf5ddb877701492ec81336efc6779e64ba3ac8c768151097fb2a49446290f4d03fd5463e666fcdcde6670585f495a9af28a2719b248c080fb8added3" - || dreamFiles[0].env != [client: "required", server: "required"] - || dreamFiles[0].downloads != ["https://download.botsu.cloud/sanctuary/artifacts/dreamdisplays-fabric-26.2-audio-buffer-test-2.jar"] - || dreamFiles[0].fileSize != 23_149_459 - || !dreamMetafile.contains('filename = "dreamdisplays-fabric-26.2-audio-buffer-test-2.jar"') - || !dreamMetafile.contains('side = "both"') - || !dreamMetafile.contains('pin = true') - || !dreamMetafile.contains('url = "https://download.botsu.cloud/sanctuary/artifacts/dreamdisplays-fabric-26.2-audio-buffer-test-2.jar"') - || !dreamMetafile.contains('hash-format = "sha256"') - || !dreamMetafile.contains('hash = "fae5681de3209dba98d6359fb878e7cf230cde08e96c08fb71394aed35823188"') - || dreamMetafile.contains('[update.modrinth]') - || !packwiz.contains('version = "26.2.0-alpha.238"') + || prism.files?.size() != 8 + || prism.files.any { it.path.contains("dreamdisplays") || it.path.contains("zevent") } + || myDisplayFiles.size() != 1 + || myDisplayFiles[0].hashes?.sha1 != "29a9af1613861541d3efc1ede43cd162a73da4ac" + || myDisplayFiles[0].hashes?.sha512 != "b7007a6e4c441e20b091f2ac184580471961c86618f21b8247ca2facfba4223fd582d23f11020fd8eb3ac7e269dbedc08f1b822735ce5a98599899a052be194b" + || myDisplayFiles[0].env != [client: "required", server: "required"] + || myDisplayFiles[0].downloads != ["https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar"] + || myDisplayFiles[0].fileSize != 98_578 + || waterMediaFiles.size() != 1 + || waterMediaFiles[0].hashes?.sha1 != "a644ab079cc9ed19a62b181e0252be5a9a422166" + || waterMediaFiles[0].hashes?.sha512 != "b2f9c31828285bf7cb039b91e8756b35c2a9e425d614d9c767bdcd752475a7abf4f025d6f6005d74f5c610c298fdadf01e53b29124d1d9fd03554fff71b1993b" + || waterMediaFiles[0].env != [client: "required", server: "unsupported"] + || waterMediaFiles[0].downloads != ["https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar"] + || waterMediaFiles[0].fileSize != 3_625_444 + || waterMediaBinariesFiles.size() != 1 + || waterMediaBinariesFiles[0].hashes?.sha1 != "8f132fc2fec0fe91a9a085c11088f0773da187fc" + || waterMediaBinariesFiles[0].hashes?.sha512 != "45b5c1d645f75fb54de4d7e92b54f50372bd9d24c7543b57e6d32ba6b35ce346250bc871ba1a39c8b1988a423d2fca75a4806ae75af502d194455caabb470897" + || waterMediaBinariesFiles[0].env != [client: "required", server: "unsupported"] + || waterMediaBinariesFiles[0].downloads != ["https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar"] + || waterMediaBinariesFiles[0].fileSize != 143_725_808 + || !metafileIsPinned(myDisplayMetafile, "mydisplay-1.0.0-sanctuary.jar", "both", "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar", "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165") + || !metafileIsPinned(waterMediaMetafile, "watermedia-3.0.0.23.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar", "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38") + || !metafileIsPinned(waterMediaBinariesMetafile, "watermedia-binaries-3.0.0.6.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar", "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e") + || !packwiz.contains('version = "26.2.0-alpha.239"') || !packwiz.contains("hash = \"${indexHash}\"") || requiredJars.any { !packwizIndex.contains(it) } || packwizIndex.contains('file = "mods/mcef-modern.pw.toml"') - || !packwizIndex.contains('file = "mods/dreamdisplays.pw.toml"') + || packwizIndex.contains('file = "mods/dreamdisplays.pw.toml"') + || !packwizIndex.contains('file = "mods/mydisplay.pw.toml"') + || !packwizIndex.contains('file = "mods/watermedia.pw.toml"') + || !packwizIndex.contains('file = "mods/watermedia-binaries.pw.toml"') || packwizIndex.contains("zevent-") - || !changelog.contains("## `26.2.0-alpha.238`") - || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.238`**") - || !readme.contains("premier build de test Dream Displays **`1.10.0-dev`** par sa nouvelle révision audio") + || !changelog.contains("## `26.2.0-alpha.239`") + || !readme.contains("Version courante du pack distribué : **`26.2.0-alpha.239`**") + || !readme.contains("remplace Dream Displays par MyDisplay **`1.0.0`**, WaterMedia **`3.0.0.23`**") || !readme.contains("garde ZEVENT entièrement retiré")) { - throw new GradleException("The alpha.238 Dream Displays audio-buffer test revision 2 release is incomplete") + throw new GradleException("The alpha.239 MyDisplay and WaterMedia release is incomplete") } } } @@ -8817,7 +8851,7 @@ tasks.named("verifyWorkspace") { dependsOn tasks.named("verifyAlpha231Release") dependsOn tasks.named("verifyAlpha232Release") dependsOn tasks.named("verifyAlpha233Release") - dependsOn tasks.named("verifyAlpha238Release") + dependsOn tasks.named("verifyAlpha239Release") } tasks.named("check") { @@ -8918,7 +8952,7 @@ tasks.register("verifyModrinthMrpack") { || index.versionId != rootProject.pack_version || index.dependencies?.minecraft != rootProject.minecraft_version || index.dependencies?."fabric-loader" != rootProject.loader_version - || index.files?.size() != 6 + || index.files?.size() != 8 || fabricApi?.hashes?.sha1 != "5307b87f8336f27e8f963263ac514f4bc6175d90" || fabricApi?.hashes?.sha512 != "4d5d9c3daafe19be187f638f2d6de3db26420b8720ef5a266cfa81f79d9019cab8c86e6d47478bbb0b0ee0b8f769204b72c843caa2e4aabd94adc41f3dafb518" || fabricApi?.env != [client: "required", server: "required"] diff --git a/gradle.properties b/gradle.properties index 55649ba..f21a5c9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -30,5 +30,5 @@ onlyfun_version=0.0.0-alpha.27 onlyfun_lifecycle=active sanctuary_version=0.0.0-alpha.139 sanctuary_lifecycle=active -pack_version=26.2.0-alpha.238 +pack_version=26.2.0-alpha.239 maven_group=fr.koka99cab.sanctuary26 diff --git a/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json b/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json new file mode 100644 index 0000000..c91efbc --- /dev/null +++ b/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json @@ -0,0 +1,57 @@ +{ + "schema_version": 1, + "status": "released", + "released_in": "26.2.0-alpha.239", + "pack": { + "source_version": "26.2.0-alpha.238", + "target_version": "26.2.0-alpha.239" + }, + "removed_dependencies": [ + { + "id": "dreamdisplays", + "version": "1.10.0-dev", + "filename": "dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" + } + ], + "added_dependencies": [ + { + "id": "mydisplay", + "version": "1.0.0", + "filename": "mydisplay-1.0.0-sanctuary.jar", + "sha256": "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165", + "side": "both", + "manifest_client_dependencies_optional": true, + "languages": ["en_us", "fr_fr", "ru_ru"] + }, + { + "id": "watermedia", + "version": "3.0.0.23", + "filename": "watermedia-3.0.0.23.jar", + "sha256": "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38", + "side": "client" + }, + { + "id": "watermedia_binaries", + "version": "3.0.0.6", + "filename": "watermedia-binaries-3.0.0.6.jar", + "sha256": "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e", + "side": "client" + } + ], + "compatibility": { + "world_reset_required": false, + "save_migration_required": false, + "sanctuary_module_versions_changed": false, + "network_protocols_changed": false, + "client_and_server_must_update": true, + "existing_dreamdisplays_blocks_converted": false + }, + "distribution": { + "packwiz_index_refreshed": true, + "prism_modrinth_index_updated": true, + "old_dreamdisplays_jar_removed": true, + "watermedia_client_only": true, + "zevent_jar_absent": true, + "distributed_module_count": 10 + } +} diff --git a/pack/packwiz/index.toml b/pack/packwiz/index.toml index 0cf7a9a..dbec59e 100644 --- a/pack/packwiz/index.toml +++ b/pack/packwiz/index.toml @@ -20,11 +20,6 @@ hash = "960322cd387c47588f6fd76202c0abf2c9993cf0effa82e19f8bb31d86ab07a4" file = "mods/anotherworld-0.0.0-alpha.58.jar" hash = "8936b0a5bf3f122afc752cba5e8d96ac92cfb1458785c3fac13d25f51cb4814c" -[[files]] -file = "mods/dreamdisplays.pw.toml" -hash = "874d4d923d19fa9e39cf47ad03f0c391c4ae316e9dc3f7eb52707778b5db800e" -metafile = true - [[files]] file = "mods/events-0.0.0-alpha.0.jar" hash = "1fe3fc2f6ca371f8dde44e0bb535b1e70df0e9c4de3f56002f9f3ec6d5826745" @@ -56,6 +51,11 @@ metafile = true file = "mods/masterkey-0.0.0-alpha.9.jar" hash = "95265c4aa4ebb89d5e89e3245917f47a4044db192f88995cfee2bdf63f348b79" +[[files]] +file = "mods/mydisplay.pw.toml" +hash = "4ad1413b1c984f25245a47fe6c83a83390501ff04032f2243416bf3224eff2a7" +metafile = true + [[files]] file = "mods/onlyfun-0.0.0-alpha.27.jar" hash = "dcd5003390c132f3421c12550f851846548b4d1cc541d3ada0deb35c65bb3f54" @@ -81,3 +81,13 @@ metafile = true file = "mods/sodium.pw.toml" hash = "f06c0b9150da9877b99cb265d037c067e509340d9bf347e02cef2043c110e963" metafile = true + +[[files]] +file = "mods/watermedia-binaries.pw.toml" +hash = "1b7c4327062eb0f70d815a2461b0ded2a2495eed8fca0fd00d75467a4aa777da" +metafile = true + +[[files]] +file = "mods/watermedia.pw.toml" +hash = "c99e2e5e4d26ec3414e6af55f252091fd728a52f1a97c69a14cacdda7af15a88" +metafile = true diff --git a/pack/packwiz/mods/dreamdisplays.pw.toml b/pack/packwiz/mods/dreamdisplays.pw.toml deleted file mode 100644 index d3f06ad..0000000 --- a/pack/packwiz/mods/dreamdisplays.pw.toml +++ /dev/null @@ -1,9 +0,0 @@ -name = "Dream Displays" -filename = "dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" -side = "both" -pin = true - -[download] -url = "https://download.botsu.cloud/sanctuary/artifacts/dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" -hash-format = "sha256" -hash = "fae5681de3209dba98d6359fb878e7cf230cde08e96c08fb71394aed35823188" diff --git a/pack/packwiz/mods/mydisplay.pw.toml b/pack/packwiz/mods/mydisplay.pw.toml new file mode 100644 index 0000000..be066ca --- /dev/null +++ b/pack/packwiz/mods/mydisplay.pw.toml @@ -0,0 +1,9 @@ +name = "MyDisplay" +filename = "mydisplay-1.0.0-sanctuary.jar" +side = "both" +pin = true + +[download] +url = "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar" +hash-format = "sha256" +hash = "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165" diff --git a/pack/packwiz/mods/watermedia-binaries.pw.toml b/pack/packwiz/mods/watermedia-binaries.pw.toml new file mode 100644 index 0000000..80388cf --- /dev/null +++ b/pack/packwiz/mods/watermedia-binaries.pw.toml @@ -0,0 +1,9 @@ +name = "WaterMedia: Binaries" +filename = "watermedia-binaries-3.0.0.6.jar" +side = "client" +pin = true + +[download] +url = "https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar" +hash-format = "sha256" +hash = "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e" diff --git a/pack/packwiz/mods/watermedia.pw.toml b/pack/packwiz/mods/watermedia.pw.toml new file mode 100644 index 0000000..c8219b3 --- /dev/null +++ b/pack/packwiz/mods/watermedia.pw.toml @@ -0,0 +1,9 @@ +name = "WaterMedia" +filename = "watermedia-3.0.0.23.jar" +side = "client" +pin = true + +[download] +url = "https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar" +hash-format = "sha256" +hash = "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38" diff --git a/pack/packwiz/pack.toml b/pack/packwiz/pack.toml index b01276e..2138b72 100644 --- a/pack/packwiz/pack.toml +++ b/pack/packwiz/pack.toml @@ -1,12 +1,12 @@ name = "Sanctuary 26.2" author = "KOKA99CAB" -version = "26.2.0-alpha.238" +version = "26.2.0-alpha.239" pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "34140054c7c0caf39f71fcbce0076fc63d65bbfb9c4de247955a8b779a5f2255" +hash = "f94bb61c8b467fe74ba6ef589cc481c46270ad049987b8a34c9a5529f5b5ca56" [versions] fabric = "0.19.3" diff --git a/pack/prism/modrinth.index.json b/pack/prism/modrinth.index.json index 9aa2ed0..af0b12d 100644 --- a/pack/prism/modrinth.index.json +++ b/pack/prism/modrinth.index.json @@ -3,7 +3,7 @@ "game": "minecraft", "name": "Sanctuary 26.2", "summary": "Sanctuary 26.2 — progression, exploration, worldgen and multiplayer systems by KOKA99CAB.", - "versionId": "26.2.0-alpha.238", + "versionId": "26.2.0-alpha.239", "files": [ { "path": "mods/fabric-api-0.159.0+26.2.jar", @@ -81,19 +81,49 @@ "fileSize": 2820763 }, { - "path": "mods/dreamdisplays-fabric-26.2-audio-buffer-test-2.jar", + "path": "mods/mydisplay-1.0.0-sanctuary.jar", "hashes": { - "sha1": "fb3d6376c2222619d93d97cb83b50aafa171b1df", - "sha512": "6f7a0484bf5ddb877701492ec81336efc6779e64ba3ac8c768151097fb2a49446290f4d03fd5463e666fcdcde6670585f495a9af28a2719b248c080fb8added3" + "sha1": "29a9af1613861541d3efc1ede43cd162a73da4ac", + "sha512": "b7007a6e4c441e20b091f2ac184580471961c86618f21b8247ca2facfba4223fd582d23f11020fd8eb3ac7e269dbedc08f1b822735ce5a98599899a052be194b" }, "env": { "client": "required", "server": "required" }, "downloads": [ - "https://download.botsu.cloud/sanctuary/artifacts/dreamdisplays-fabric-26.2-audio-buffer-test-2.jar" + "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar" ], - "fileSize": 23149459 + "fileSize": 98578 + }, + { + "path": "mods/watermedia-3.0.0.23.jar", + "hashes": { + "sha1": "a644ab079cc9ed19a62b181e0252be5a9a422166", + "sha512": "b2f9c31828285bf7cb039b91e8756b35c2a9e425d614d9c767bdcd752475a7abf4f025d6f6005d74f5c610c298fdadf01e53b29124d1d9fd03554fff71b1993b" + }, + "env": { + "client": "required", + "server": "unsupported" + }, + "downloads": [ + "https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar" + ], + "fileSize": 3625444 + }, + { + "path": "mods/watermedia-binaries-3.0.0.6.jar", + "hashes": { + "sha1": "8f132fc2fec0fe91a9a085c11088f0773da187fc", + "sha512": "45b5c1d645f75fb54de4d7e92b54f50372bd9d24c7543b57e6d32ba6b35ce346250bc871ba1a39c8b1988a423d2fca75a4806ae75af502d194455caabb470897" + }, + "env": { + "client": "required", + "server": "unsupported" + }, + "downloads": [ + "https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar" + ], + "fileSize": 143725808 } ], "dependencies": { diff --git a/pack/release.json b/pack/release.json index ab62fb4..bd1cdec 100644 --- a/pack/release.json +++ b/pack/release.json @@ -1,6 +1,6 @@ { "schema_version": 1, - "pack_version": "26.2.0-alpha.238", + "pack_version": "26.2.0-alpha.239", "release_channel": "alpha", "minecraft_version": "26.2", "fabric_loader_version": "0.19.3", @@ -9,7 +9,7 @@ "project_id": "FgOqyAXd", "project_slug": "sanctuary-koka99", "project_url": "https://modrinth.com/modpack/sanctuary-koka99", - "primary_file": "sanctuary-26.2.0-alpha.238.mrpack", + "primary_file": "sanctuary-26.2.0-alpha.239.mrpack", "shared_client_server_pack": true, "update_owner": "packwiz-installer", "check_on_launch": true, -- 2.54.0 From aefb23deee860f0eb73974f87b8683e8a15bbeba Mon Sep 17 00:00:00 2001 From: koka Date: Fri, 4 Sep 2026 15:37:29 +0200 Subject: [PATCH 2/2] release: update MyDisplay build --- build.gradle | 10 +++++----- ...alpha.238-dreamdisplays-to-mydisplay-alpha.239.json | 2 +- pack/packwiz/index.toml | 2 +- pack/packwiz/mods/mydisplay.pw.toml | 2 +- pack/packwiz/pack.toml | 2 +- pack/prism/modrinth.index.json | 6 +++--- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/build.gradle b/build.gradle index 6ea440c..e26ace4 100644 --- a/build.gradle +++ b/build.gradle @@ -8760,7 +8760,7 @@ tasks.register("verifyAlpha239Release") { || addedDependencies.keySet() != (["mydisplay", "watermedia", "watermedia_binaries"] as Set) || addedDependencies.mydisplay?.version != "1.0.0" || addedDependencies.mydisplay?.filename != "mydisplay-1.0.0-sanctuary.jar" - || addedDependencies.mydisplay?.sha256 != "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165" + || addedDependencies.mydisplay?.sha256 != "22cd63386bc7ba6961f586949f65b4a2a6cb335d75aa155bcdf0a633f1f9d907" || addedDependencies.mydisplay?.side != "both" || addedDependencies.mydisplay?.manifest_client_dependencies_optional != true || addedDependencies.mydisplay?.languages != ["en_us", "fr_fr", "ru_ru"] @@ -8789,11 +8789,11 @@ tasks.register("verifyAlpha239Release") { || prism.files?.size() != 8 || prism.files.any { it.path.contains("dreamdisplays") || it.path.contains("zevent") } || myDisplayFiles.size() != 1 - || myDisplayFiles[0].hashes?.sha1 != "29a9af1613861541d3efc1ede43cd162a73da4ac" - || myDisplayFiles[0].hashes?.sha512 != "b7007a6e4c441e20b091f2ac184580471961c86618f21b8247ca2facfba4223fd582d23f11020fd8eb3ac7e269dbedc08f1b822735ce5a98599899a052be194b" + || myDisplayFiles[0].hashes?.sha1 != "68479e5daf79a04207d82bccabb03625a1ae53cf" + || myDisplayFiles[0].hashes?.sha512 != "b3b5616a29d106fd2375b7ec10774cb146d23c18f7e0c59b72826d3798b387b0ea48d3798729b700bffd8e0c6ce4a95b51553f5aef0a9d32b3b0c5cd006e69a4" || myDisplayFiles[0].env != [client: "required", server: "required"] || myDisplayFiles[0].downloads != ["https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar"] - || myDisplayFiles[0].fileSize != 98_578 + || myDisplayFiles[0].fileSize != 103_141 || waterMediaFiles.size() != 1 || waterMediaFiles[0].hashes?.sha1 != "a644ab079cc9ed19a62b181e0252be5a9a422166" || waterMediaFiles[0].hashes?.sha512 != "b2f9c31828285bf7cb039b91e8756b35c2a9e425d614d9c767bdcd752475a7abf4f025d6f6005d74f5c610c298fdadf01e53b29124d1d9fd03554fff71b1993b" @@ -8806,7 +8806,7 @@ tasks.register("verifyAlpha239Release") { || waterMediaBinariesFiles[0].env != [client: "required", server: "unsupported"] || waterMediaBinariesFiles[0].downloads != ["https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar"] || waterMediaBinariesFiles[0].fileSize != 143_725_808 - || !metafileIsPinned(myDisplayMetafile, "mydisplay-1.0.0-sanctuary.jar", "both", "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar", "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165") + || !metafileIsPinned(myDisplayMetafile, "mydisplay-1.0.0-sanctuary.jar", "both", "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar", "22cd63386bc7ba6961f586949f65b4a2a6cb335d75aa155bcdf0a633f1f9d907") || !metafileIsPinned(waterMediaMetafile, "watermedia-3.0.0.23.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-3.0.0.23.jar", "c3baefc8fbb005e349b3424f7df8f9d89b18524d5f7a358c6df73ca5e1d98b38") || !metafileIsPinned(waterMediaBinariesMetafile, "watermedia-binaries-3.0.0.6.jar", "client", "https://download.botsu.cloud/sanctuary/artifacts/watermedia-binaries-3.0.0.6.jar", "2d9333061c3d2330033fe68837a31f546dbf58984455b0cfec0deeff6b1f121e") || !packwiz.contains('version = "26.2.0-alpha.239"') diff --git a/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json b/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json index c91efbc..9495463 100644 --- a/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json +++ b/pack/migrations/26.2.0-alpha.238-dreamdisplays-to-mydisplay-alpha.239.json @@ -18,7 +18,7 @@ "id": "mydisplay", "version": "1.0.0", "filename": "mydisplay-1.0.0-sanctuary.jar", - "sha256": "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165", + "sha256": "22cd63386bc7ba6961f586949f65b4a2a6cb335d75aa155bcdf0a633f1f9d907", "side": "both", "manifest_client_dependencies_optional": true, "languages": ["en_us", "fr_fr", "ru_ru"] diff --git a/pack/packwiz/index.toml b/pack/packwiz/index.toml index dbec59e..b14fc5f 100644 --- a/pack/packwiz/index.toml +++ b/pack/packwiz/index.toml @@ -53,7 +53,7 @@ hash = "95265c4aa4ebb89d5e89e3245917f47a4044db192f88995cfee2bdf63f348b79" [[files]] file = "mods/mydisplay.pw.toml" -hash = "4ad1413b1c984f25245a47fe6c83a83390501ff04032f2243416bf3224eff2a7" +hash = "cb52c60ff64f4d2b17217f87ebfef956ae5663252da808451d6b7f68e35fccca" metafile = true [[files]] diff --git a/pack/packwiz/mods/mydisplay.pw.toml b/pack/packwiz/mods/mydisplay.pw.toml index be066ca..af33ed8 100644 --- a/pack/packwiz/mods/mydisplay.pw.toml +++ b/pack/packwiz/mods/mydisplay.pw.toml @@ -6,4 +6,4 @@ pin = true [download] url = "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar" hash-format = "sha256" -hash = "4dd2bd5281534e8ff81dc63d9a464d6e35bd74408bfca0b9c2a08da5b4dc5165" +hash = "22cd63386bc7ba6961f586949f65b4a2a6cb335d75aa155bcdf0a633f1f9d907" diff --git a/pack/packwiz/pack.toml b/pack/packwiz/pack.toml index 2138b72..6e50045 100644 --- a/pack/packwiz/pack.toml +++ b/pack/packwiz/pack.toml @@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0" [index] file = "index.toml" hash-format = "sha256" -hash = "f94bb61c8b467fe74ba6ef589cc481c46270ad049987b8a34c9a5529f5b5ca56" +hash = "0d69bf1d5aa9a87c76236f50d15b5a9fdcf1d1b8874dfe1ae9f3aa664717c2c4" [versions] fabric = "0.19.3" diff --git a/pack/prism/modrinth.index.json b/pack/prism/modrinth.index.json index af0b12d..a155206 100644 --- a/pack/prism/modrinth.index.json +++ b/pack/prism/modrinth.index.json @@ -83,8 +83,8 @@ { "path": "mods/mydisplay-1.0.0-sanctuary.jar", "hashes": { - "sha1": "29a9af1613861541d3efc1ede43cd162a73da4ac", - "sha512": "b7007a6e4c441e20b091f2ac184580471961c86618f21b8247ca2facfba4223fd582d23f11020fd8eb3ac7e269dbedc08f1b822735ce5a98599899a052be194b" + "sha1": "68479e5daf79a04207d82bccabb03625a1ae53cf", + "sha512": "b3b5616a29d106fd2375b7ec10774cb146d23c18f7e0c59b72826d3798b387b0ea48d3798729b700bffd8e0c6ce4a95b51553f5aef0a9d32b3b0c5cd006e69a4" }, "env": { "client": "required", @@ -93,7 +93,7 @@ "downloads": [ "https://download.botsu.cloud/sanctuary/artifacts/mydisplay-1.0.0-sanctuary.jar" ], - "fileSize": 98578 + "fileSize": 103141 }, { "path": "mods/watermedia-3.0.0.23.jar", -- 2.54.0