Fix kxs-ts-gen-core dependency resolution and unblocked compile bugs
The version catalog pointed kxs-ts-gen-core at a JitPack coordinate (com.github.adamko-dev.kotlinx-serialization-typescript-generator) that no longer serves real artifacts there, despite JitPack's build-status API still reporting it as built. The library is properly published to Maven Central under dev.adamko.kxstsgen - a commented-out line with that exact coordinate was already sitting in the catalog. Swapping to it fixes dependency resolution for every module depending on versions-platform (which previously blocked any Gradle task touching events-library, including all of its tests). That unblocked two more pre-existing, unrelated bugs that had never been caught because this module never previously compiled: - LuaJsonList<T> : List<T> by list triggered a longstanding Kotlin compiler bug (KT-3546, "accidental override" on generic toArray) specific to delegating java.util.List via `by`. Replaced with a hand-written Collection<T> implementation (no delegation codegen, no bug), which still satisfies Kotest's forOne/forAll inspectors - the only thing any code actually needs from it. - The kxs-ts-gen Kotlin->TypeScript generator (kt2ts2.kt) still emitted the pre-2.0 bare `uint`/`int` names and no import statement, since it predates typed-factorio's move to virtual modules. Updated its primitive-type mappings to uint32/int32 and added the "factorio:runtime" import to its generated header, so the regenerated schema matches what the rest of events-mod now expects. Verified via real Gradle tasks (not just manual tooling): events-library compiles and all tests pass; events-mod's full build - Kotlin schema generation, npm install, tstl compile, and info.json generation (with factorio_version "2.0" and the space-exploration/Krastorio2 optional dependencies) - succeeds end-to-end. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
parent
e296a9aa90
commit
509832d26d
4 changed files with 25 additions and 10 deletions
|
|
@ -1,6 +1,6 @@
|
|||
// Generated by kxs-ts-gen - do not edit this file manually
|
||||
|
||||
import {double, float, int32 as int, int8, PlayerIndex, SurfaceIndex, uint32 as uint, uint8, UnitNumber} from "factorio:runtime"
|
||||
import {double, float, int32, int8, PlayerIndex, SurfaceIndex, uint32, uint8, UnitNumber} from "factorio:runtime"
|
||||
|
||||
export interface KafkatorioPacket {
|
||||
modVersion: string;
|
||||
|
|
@ -145,7 +145,7 @@ export namespace KafkatorioPacketData {
|
|||
}
|
||||
}
|
||||
|
||||
export type UInt = uint;
|
||||
export type UInt = uint32;
|
||||
|
||||
export interface ConfigurationUpdateGameData {
|
||||
oldVersion?: string | null;
|
||||
|
|
@ -212,7 +212,7 @@ export type Colour = [
|
|||
alpha: Float,
|
||||
];
|
||||
|
||||
export type Int = int;
|
||||
export type Int = int32;
|
||||
|
||||
export interface ConfigurationUpdateModData {
|
||||
modName: string;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue