Skip to main content

Changelog

4.0.0-beta.5 (2026-10-08)​

Bug Fixes​

  • packaging: point every package's repository at its monorepo folder (#812) (3717b73)

Dependencies​

  • The following workspace dependencies were updated
    • dependencies
      • @webda/content-mapper bumped to 4.0.0-beta.5
      • @webda/utils bumped to 4.0.0-beta.5
      • @webda/workout bumped to 4.0.0-beta.5
    • devDependencies
      • @webda/test bumped to 4.0.0-beta.5

4.0.0-beta.4 (2026-10-08)​

Features​

Dependencies​

  • The following workspace dependencies were updated
    • dependencies
      • @webda/content-mapper bumped to 4.0.0-beta.4
      • @webda/utils bumped to 4.0.0-beta.4

4.0.0-beta.3 (2026-10-05)​

⚠ BREAKING CHANGES​

  • 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.

Features​

  • add Behavior and move Binary to Behavior (ef05efb)
  • add build hooks (97016bc)
  • add codemod system (bbc3086)
  • add codemod to compiler (7552a04)
  • add formatting for context (54dee1e)
  • add metadata plugins (ffcd62c)
  • add models schema generation (921b0b4)
  • add module @webda/compiler (6d30cd3)
  • add operation schema on models (6c27107)
  • allow Operation to be synchronous (d010c1f)
  • allow webda serve from @webda/core package (69a6f01)
  • blog-system Binary/Binaries demo + e2e suite, with framework fixes (#771) (fe7e187)
  • build on TypeScript 7.1; delete @webda/ts-plugin and ts-patch (0008e97)
  • capability-based auto-injection for CLI commands (#749) (027f098)
  • compiler morphers (4ac0b9f)
  • compiler: add PrimaryKeySeparator to ModelMetadata (b62943b)
  • compiler: generate schemas with @webda/content-mapper (af3b7c5)
  • compiler: optional TypeScript 7 schema backend, off by default (b58e72c)
  • compiler: require Webda classes to live in mapper-claimed files (2dfac03)
  • enhance debug panels (#759) (63e6e0c)
  • improve caching module (08b2db5)
  • model Behaviors v1 (#765) (5053245)
  • move to node 22 (21daf46)
  • move to pnpm and disable many modules for now (ea953b7)
  • move to the Fork util from @webda/workout (a43b10b)
  • remove ts-json-schema dep (2b7a67f)
  • service capabilities and CLI commands system (#743) (ae2897c)
  • update @webda/test to use new annotations (15e8b30)
  • WebdaQLString<T> branded type + ts-plugin compile-time validator (#772) (f0c14c1)

Bug Fixes​

  • add cli in core (814a599)
  • add schema generation on build (e63880c)
  • add service operation detection (62e3a05)
  • allow comments in tsconfig.json (1b75cde)
  • compiler configuration import guess (72deeba)
  • compiler metadata, CLI commands, cron/async hooks and long-running command lifecycle (#785) (0515715)
  • compiler: make webdac code a working migration tool (578ca7b)
  • compiler: rebuild the module when the generated service map changes (c52dec3)
  • compiler: rebuild when any emitted file is missing (ca99edd)
  • importing ModelLink (808ab14)
  • interactive logger (8c30ee9)
  • metadata guess on compile (5e6dcec)
  • move to nodenext module and update Inject annotation (d7d85e4)
  • unit test models relations (2d160f1)

Dependencies​

  • The following workspace dependencies were updated
    • dependencies
      • @webda/utils bumped to 4.0.0-beta.3
      • @webda/workout bumped to 4.0.0-beta.3
    • devDependencies
      • @webda/test bumped to 4.0.0-beta.3