mirror of
https://github.com/Corfirean/coa-server-manager.git
synced 2026-11-12 04:01:01 +00:00
- Build cache (build_cache.rs): the build folder of a module is unpacked for a build and packed into <module>.tar.zst afterwards (object files ~4-6x smaller), modification times kept so Ninja recompiles only what changed. A cache made for another core is dropped instead of unpacked; .ilk and .map files are not kept; total limit 2 GB, least recently built first. The build log moves next to the archive (build-cache/<module>.log). - "Build cache" in the Modules menu: size per module (packed, built when, for this core or not), remove one, remove all, remove downloaded sources. Builds now hold the server's busy guard, so the cache is never cleared under a running build. - Module sources: "Add from a link" downloads GitHub's archive of the commit instead of a full git clone, and game-client files (.mpq, .dbc, maps, textures, archives) are left out and listed in .coa_skipped_assets. mod-bg-battle-for-gilneas: 365 MB repository, 3.1 MB kept (was refused at the 300 MB limit). - Overlay: Helias's battleground modules (Gilneas, Twin Peaks, Slavery Valley) are Incompatible: they need the server's DBC files replaced (CoA ships its own) and a client patch. Checked: build_cache unit tests; examples/build_cache_ninja_check with real MSVC + CMake + Ninja: after pack/unpack nothing is recompiled, after one edit one file is; coa-core lib tests 865 passed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>