Changelog
4.0.0-beta.9 (2026-10-22)
Dependencies
- The following workspace dependencies were updated
- devDependencies
- @webda/test bumped to 4.0.0-beta.8
- devDependencies
4.0.0-beta.8 (2026-10-14)
Features
- ql: add NOW() time function with duration offset (#856) (#886) (653ecd0)
- ql: implement WebdaQL code completion and blog-system search (#685) (#894) (b89a8ea)
4.0.0-beta.7 (2026-10-12)
Features
Bug Fixes
Dependencies
- The following workspace dependencies were updated
- devDependencies
- @webda/test bumped to 4.0.0-beta.7
- devDependencies
4.0.0-beta.6 (2026-10-09)
⚠ BREAKING CHANGES
- ql: DELETE, UPDATE, SELECT, SET and WHERE are reserved uppercase keywords; Query.type is required; parse().toString() prints the canonical query instead of the source tokens; the root parse rule is now
(statement | filterQuery) EOFfor code walking the ANTLR tree.
Features
- ql: WebdaQL DELETE/UPDATE/SELECT statements, bulk deleteMany/updateMany, filter-only Query operations (#818) (add9503)
- store-agnostic aggregations (Model.aggregate, SELECT … GROUP BY) (#820) (9eca947)
Bug Fixes
Dependencies
- The following workspace dependencies were updated
- devDependencies
- @webda/test bumped to 4.0.0-beta.6
- devDependencies
4.0.0-beta.5 (2026-10-08)
Bug Fixes
Dependencies
- The following workspace dependencies were updated
- devDependencies
- @webda/test bumped to 4.0.0-beta.5
- devDependencies
4.0.0-beta.3 (2026-10-05)
⚠ BREAKING CHANGES
- @webda/ts-plugin and the
tsc-esmbinary 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 WebdaUseris 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.
- AuditEntry.timestamp, declared
- remove node 18 support
- remove expose for Store
Features
- add codemod system (bbc3086)
- add formatting for context (54dee1e)
- build on TypeScript 7.1; delete @webda/ts-plugin and ts-patch (0008e97)
- move to node 22 (21daf46)
- move to pnpm and disable many modules for now (ea953b7)
- ql: bind ? and :name query parameters (#788) (4a8647b)
- ql: support IS NULL and IS NOT NULL (553d143)
- ql: TRUE and FALSE as expressions (9116440)
- remove expose for Store (c8a36b1)
- remove node 18 support (44e7de2)
- update watchers on service parameter on update (f3417d7)
- WebdaQLString<T> branded type + ts-plugin compile-time validator (#772) (f0c14c1)
Bug Fixes
- prepend query now use WebdaQL parser (#681) (b640244)
- ql: escape backslashes in WebdaQL string literals (6de215b)
- ql: LIKE on a missing attribute no longer throws (b66cade)
- ql: rewrite interpolated null values to IS NULL / IS NOT NULL (bf7697b)
- ql: unescape quoted string literals (4cecfbc)
- unit test models relations (2d160f1)
Dependencies
- The following workspace dependencies were updated
- devDependencies
- @webda/test bumped to 4.0.0-beta.3
- devDependencies
4.0.0-beta.1 (2024-08-14)
Features
- separate WebdaQL module (69beabb)
Continuous Integration
- update additional modules (77b32e9)
Dependencies
- The following workspace dependencies were updated
- devDependencies
- @webda/tsc-esm bumped from ^1.3.0 to ^4.0.0-beta.1
- devDependencies