Download translations on demand instead of bundling them

Locales are fetched from the Iris repository at runtime into
languages/downloaded and cached against the revision the jar was built
from; the artifact ships only a manifest of the available locales.
IrisLanguage gains a player language service, per-audience snapshots and
an in-game message editor that writes locale overrides. The Bukkit
artifact verifier now fails when any locale file is embedded, and the
modded shadow jars drop the Bukkit-only switcher and editor classes.
This commit is contained in:
Brian Neumann-Fopiano committed 2026-09-03 05:03:21 -04:00
1 parent 5053a644c7
commit b25937f986
10 files changed
+472 -191

No files matched your search

+3
View File
@@ -228,6 +228,9 @@ tasks.named('shadowJar', ShadowJar).configure {
// archive as versioned and re-scan it per release directory for nothing.
exclude('META-INF/versions/**')
addMultiReleaseAttribute.set(false)
exclude('art/arcane/volmlib/util/localization/BukkitLanguageSwitcher*.class')
exclude('art/arcane/volmlib/util/localization/BukkitLanguageEditor*.class')
exclude('art/arcane/volmlib/util/localization/BukkitVolmitCommand*.class')
// Invalid package name on Java 9+ ('enum' is a keyword); a module-path scan chokes on it.
exclude('org/apache/commons/lang/enum/**')
// Compile-only annotation carriers. Shipping them duplicates packages other mods also ship.