Skip to main content

Changelog

4.0.0-beta.12 (2026-10-22)​

⚠ BREAKING CHANGES​

  • core: instance actions declaring non-context parameters now receive them instead of the operation context. Take the context with a context-typed parameter or useContext().
  • utils: @webda/tsc-esm is no longer published. Import its types and helpers from @webda/utils, and createClassDecorator, createPropertyDecorator and createMethodDecorator from @webda/decorators.

Features​

  • auth: track MFA verification time and enforce step-up freshness (maxMfaAge) (#963) (86cda56)
  • compiler: auto add $schema to deployment files (#847) (cd103be)
  • core: model actions receive their typed parameters (#946, phase 1) (#955) (7e8eebd)

Bug Fixes​

  • compiler: rebuild when a dependency changes (#959) (d543fb2)
  • enable strict mode in utils and compiler (#986) (887e421)

Code Refactoring​

  • utils: merge @webda/tsc-esm into @webda/utils and remove it (#942) (efcf87c)

Dependencies​

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

4.0.0-beta.11 (2026-10-16)​

Features​

  • core: apply webda.cli include/exclude to operation commands (#931) (7907541)

4.0.0-beta.10 (2026-10-15)​

Features​

  • auth: add model-scoped MFA with typed behavior configuration (#888) (ee068e8)
  • compiler: auto add schema to config and deployment files (#551) (#906) (4d96ba8)
  • webda.cli in package.json — command selection, runCli and a generated app executable (#927) (10f68c6)

Dependencies​

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

4.0.0-beta.9 (2026-10-14)​

⚠ BREAKING CHANGES​

  • the unused store parameters modelAliases, defaultModel and forceModel are removed; use @WebdaAlias for renamed models. The runtime MigrationStore is removed: use webda migrate.

Features​

  • sdk: typed frontend SDK over REST, GraphQL, gRPC and offline (#850) (#885) (4d68a6a)
  • transparent Webda 3 → 4 data upgrade — legacy types, store migrations (core) (#889) (#890) (01d4efb)

Dependencies​

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

4.0.0-beta.8 (2026-10-12)​

Dependencies​

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

4.0.0-beta.7 (2026-10-11)​

Features​

  • core: pki configuration encrypter and default encrypter (#851) (8777e06)

Bug Fixes​

  • publish webda.module.json with debug, models, cloudevents and compiler (#849) (db9e967)
  • support Windows paths when loading and building modules (#827) (0d88747)

Dependencies​

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

4.0.0-beta.6 (2026-10-09)​

Dependencies​

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

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