compiler: the accessors, loadParameters and unserializer modules are removed. They wrote into the sources what webdac build now generates through @webda/content-mapper, or methods nothing calls. The unused webdac build --code flag is removed too.
@webda/ts-plugin and the tsc-esm binary are removed, and applications now build with TypeScript 7.1. Generated code changes where TypeScript 6 was wrong, each verified against the shipped output:
AuditEntry.timestamp, declared number, is no longer coerced to Date;
AbstractOwnerModel no longer emits new ModelLink(T), a ReferenceError
on first raw-uuid assignment;
sample-app's User extends WebdaUser is now treated as a model (TS6's
base-chain guard was keyed on class name), so its relations are
initialised and coerced;
imports use the specifier the author wrote, not monorepo-relative paths
that only resolve inside this repository;
the emitted .d.ts is valid (TS6 referenced PrimaryKeyType unimported and
wrote BelongTo without its type argument).
A build that cannot write its module now fails; under TS6 a strict
file-naming violation was logged and the build still reported success.
compiler: model relations are now type: "string" in Input, Output and Stored schemas instead of an object with no properties, and six services gain the type property they inherit from ServiceParameters. Anything generated from these schemas — API validation, client types — changes with them.