@ailnaf/zoddb 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,74 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.0] - 2026-10-18
4
+
5
+ write 2.0 + raw SQL escape hatch。
6
+
7
+ ### Added
8
+
9
+ - 嵌套 update(write 2.0):一次 update 可原子修改父行、已有子行和关系连接
10
+ - 一对多子行 `create` / `update` / `delete`;子行必须属于该父行
11
+ - one 关系 `connect` / `disconnect`;`disconnect` 仅限 nullable FK
12
+ - 与 M2M `connect` / `set` / `disconnect` 组合
13
+ - 含关系写入时父行必须恰好 1 行;任一步失败全部回滚
14
+ - 关系写入不能修改父/子主键;目标表必须单列主键
15
+ - `db.rawQuery<T>(text, params)` / `tx.rawQuery`:参数化 raw SQL 逃生口
16
+ - 复用 zoddb 的主连接 / 事务 / `onQuery` hooks
17
+ - 发 SQL 前拒绝 undefined 参数
18
+ - 默认走主连接;事务内使用事务连接
19
+ - 不经过 zod / 关系映射;复杂报表、CTE、窗口函数和批量 SQL 不离开 zoddb
20
+ - README/docs 增加嵌套 update 和复杂 SQL 章节
21
+ - Studio / external dogfood 覆盖嵌套 update、rawQuery 和失败回滚
22
+
23
+ ### Changed
24
+
25
+ - `db.sql` / `db.raw` 的边界文档化:`db.sql` 是 tagged template,`db.raw` 是未管理的 postgres.js 连接
26
+ - 公开 runtime 仍为 15 个 graph/error exports;`rawQuery` 是客户端方法,不是新 export
27
+
28
+ ### Known limitations
29
+
30
+ - 仅支持 PostgreSQL
31
+ - 关系过滤最大深度 2;`with` 关系加载最大深度 3
32
+ - 关系聚合仅 `count` / `sum` / `max`
33
+ - M2M 行级 `where` / `orderBy` / `limit` 仍不支持
34
+ - 嵌套写只做一层;不做递归/replace/级联删除/嵌套 upsert/复合主键目标写
35
+ - rawQuery 不经过 zod / 关系映射;Studio 不暴露 rawQuery / SQL 控制台
36
+ - forward-only migration;不支持 down migration、shadow DB、零停机在线 DDL
37
+
38
+ [0.3.0]: https://www.npmjs.com/package/@ailnaf/zoddb/v/0.3.0
39
+
40
+ ## [0.2.0] - 2026-10-18
41
+
42
+ graph query 2.0:补关系型后台/内容应用的高频查询表达。
43
+
44
+ ### Added
45
+
46
+ - `every` 关系过滤:空关系为 true,存在不满足(含 NULL 谓词)为 false;支持 forward / reverse / M2M,与 `some` / `none` 组合
47
+ - `with.aggregate`:关系级 `count` / `sum` / `max`
48
+ - 空关系 `count=0`、`sum/max=null`
49
+ - `sum` 仅数值列;`max` 保留列类型
50
+ - 支持一对多、反向、M2M through
51
+ - 聚合复用关系 `where`,不受 `limit/offset` 影响
52
+ - 结果挂在 `<relation>Aggregate`
53
+ - 三层 `with` 加载:每层支持 `where` / `orderBy` / `limit` / `offset`;第 4 层在运行时和类型层显式拒绝
54
+ - 查询数回归:20 父行下 `every`=1、aggregate=3、三层 `with`=3,锁定无 N+1
55
+ - Studio / 外部 dogfood 覆盖新查询能力
56
+
57
+ ### Changed
58
+
59
+ - `with` 关系加载上限从文档承诺的 2 层提升到 3 层;关系过滤仍为深度 2
60
+ - 文档明确批量查询数边界和新能力限制
61
+
62
+ ### Known limitations
63
+
64
+ - 仅支持 PostgreSQL
65
+ - 关系过滤最大深度 2
66
+ - 关系聚合仅 `count` / `sum` / `max`;不做 `avg` / `min` / 关系 groupBy / having / 嵌套聚合
67
+ - M2M 行级 `where` / `orderBy` / `limit` 仍不支持
68
+ - forward-only migration;不支持 down migration、shadow DB、零停机在线 DDL
69
+
70
+ [0.2.0]: https://www.npmjs.com/package/@ailnaf/zoddb/v/0.2.0
71
+
3
72
  ## [0.1.0] - 2026-10-18
4
73
 
5
74
  首个可发布预览版。
package/README.md CHANGED
@@ -21,7 +21,7 @@ CLI 命令仍然是 `zoddb`。也可以从 tarball 安装:
21
21
 
22
22
  ```bash
23
23
  npm pack
24
- npm i ./ailnaf-zoddb-0.1.0.tgz postgres zod
24
+ npm i ./ailnaf-zoddb-0.3.0.tgz postgres zod
25
25
  ```
26
26
 
27
27
  要求 Node.js **>= 22.18**。
@@ -171,6 +171,31 @@ const grace = await db.users.create({
171
171
 
172
172
  父行和子行同一事务;many 支持 `create` / `connect`,one 只支持 `connect`。
173
173
 
174
+ 嵌套 update(write 2.0):
175
+
176
+ ```ts
177
+ await db.posts.update(
178
+ { id: post.id },
179
+ {
180
+ title: 'Updated',
181
+ comments: {
182
+ create: [{ body: 'new' }],
183
+ update: [{ id: c1.id, body: 'edited' }],
184
+ delete: [{ id: c2.id }],
185
+ },
186
+ author: { connect: { id: alice.id } },
187
+ tags: { set: [{ id: tag.id }] },
188
+ },
189
+ )
190
+ ```
191
+
192
+ - 一对多支持 `create` / `update` / `delete`;子行 update/delete 必须属于该父行
193
+ - one 支持 `connect` / `disconnect`;`disconnect` 仅 nullable FK
194
+ - 含关系写入时父行必须恰好 1 行;任一步失败全部回滚
195
+ - 关系写入不能修改父/子主键,也不能同时写父 FK 列
196
+ - 返回父行数组;嵌套结果用 `findOne({ with })` 读取
197
+ - 只做一层关系写入,不做 replace / 递归 / 嵌套 upsert
198
+
174
199
  ## 查询
175
200
 
176
201
  ```ts
@@ -209,8 +234,32 @@ const users = await db.users.findMany({
209
234
  })
210
235
  ```
211
236
 
237
+ 关系聚合:
238
+
239
+ ```ts
240
+ const users = await db.users.findMany({
241
+ with: {
242
+ posts: {
243
+ aggregate: {
244
+ count: true,
245
+ sum: { views: true },
246
+ max: { createdAt: true },
247
+ },
248
+ },
249
+ },
250
+ })
251
+
252
+ users[0].postsAggregate
253
+ // { count: number, sum: { views: number | null }, max: { createdAt: Date | null } }
254
+ ```
255
+
256
+ - `count` 空关系为 0;`sum` / `max` 空关系为 null
257
+ - 普通关系聚合复用 `where`,但不受 `limit/offset` 影响;M2M 行级 `where` 仍不支持
258
+
212
259
  - 每个父行独立分页(窗口函数),不是全局 LIMIT
213
260
  - 1 条主查询 + 每条关系 1 条批量查询,不做 N+1
261
+ - 关系过滤内联为主查询的 `EXISTS`;每个 aggregate 关系额外 1 条聚合查询;三层 `with` 每层 1 条
262
+ - 支持最多 3 层 `with`;每层 `where/orderBy/limit` 独立生效,第 4 层运行时和类型层都拒绝
214
263
  - 关系名和返回类型从 graph 推导;拼错会在编译期报错
215
264
 
216
265
  关系过滤:
@@ -230,9 +279,13 @@ const authors = await db.users.findMany({
230
279
  const quiet = await db.users.findMany({
231
280
  where: { posts: { none: { published: true } } },
232
281
  })
282
+
283
+ const allPublished = await db.users.findMany({
284
+ where: { posts: { every: { published: true } } },
285
+ })
233
286
  ```
234
287
 
235
- 编译为 `EXISTS` / `NOT EXISTS`;支持 forward / reverse / M2M through,最大深度 2。
288
+ 编译为 `EXISTS` / `NOT EXISTS`,内联进主查询,不按父行查询;`every` 空关系为 `true`,存在一个不满足为 `false`;支持 forward / reverse / M2M through,最大深度 2。
236
289
 
237
290
  ## 多对多
238
291
 
@@ -279,6 +332,38 @@ await db.transaction(async tx => {
279
332
 
280
333
  回调抛错自动回滚;`tx` 有同样的 graph 命名空间。
281
334
 
335
+ ## 复杂 SQL(escape hatch)
336
+
337
+ graph API 覆盖不到的长尾 SQL 用 `rawQuery`,仍然复用 zoddb 的连接和事务:
338
+
339
+ ```ts
340
+ const report = await db.rawQuery<{ email: string; posts: number }>(
341
+ `with counts as (
342
+ select author_id, count(*)::int as posts
343
+ from posts group by author_id
344
+ )
345
+ select u.email, coalesce(c.posts, 0)::int as posts
346
+ from users u left join counts c on c.author_id = u.id
347
+ where u.email = $1`,
348
+ ['ada@acme.dev'],
349
+ )
350
+
351
+ await db.transaction(async tx => {
352
+ await tx.rawQuery(
353
+ 'update posts set views = views + $1 where id = $2',
354
+ [1, postId],
355
+ )
356
+ await tx.posts.create({ authorId, title: 'same transaction' })
357
+ })
358
+ ```
359
+
360
+ - 只支持位置参数 `$1...`;不要把不可信输入拼进 SQL,不提供 identifier 插值或 builder
361
+ - 返回 `T[]`,不经过 zod / 关系映射;需要映射时用 `db.sql` + `rows(table)`
362
+ - `undefined` 参数拒绝;`null` 合法
363
+ - `db.rawQuery` 默认主连接,`tx.rawQuery` 使用事务连接;调用发 `onQuery`,operation 为 `raw`
364
+ - `db.sql` 是 tagged template 逃生口;`db.raw` 是 postgres.js 原连接,绕过 hooks / 参数检查,非必要不要使用
365
+ - Studio 不暴露 rawQuery / SQL 控制台
366
+
282
367
  ## Studio(本地只读 / 可选写模式)
283
368
 
284
369
  ```bash
@@ -302,7 +387,7 @@ npx zoddb studio --write
302
387
 
303
388
  - 默认只读;只有 `--write` 才显示新建/编辑/删除/事务入口
304
389
  - 写请求走 `POST /api/write`,要求本地 token 和同源请求
305
- - 支持 create / update / delete / upsert / 嵌套 create / M2M 写入 / transaction
390
+ - 支持 create / update / delete / upsert / 嵌套 create / 嵌套 update / M2M / one 关系写入 / transaction
306
391
  - 删除需要二次确认;不提供 SQL、DDL 或迁移 apply
307
392
  - `npm run verify:pack` 会从 tarball 安装后启动 Studio,验证 schema / rows / migrations 三类请求
308
393
 
@@ -395,7 +480,7 @@ try {
395
480
 
396
481
  - 公开运行时只有 graph 建模、`zoddb`、`relationGraph` 和错误类型
397
482
  - 低层 `table` / DDL / `defineDb` / `relations` / `pg` 是内部实现,不对外
398
- - 不支持 query builder、懒加载、任意深度递归、`every`、关系排序/聚合全套
483
+ - 不支持 query builder、懒加载、任意深度递归、关系排序/聚合全套
399
484
  - 不支持 down migration、shadow DB、零停机在线 DDL
400
485
  - 仅 Postgres
401
486
 
@@ -404,7 +489,7 @@ try {
404
489
  ## 开发
405
490
 
406
491
  ```bash
407
- npm run check # typecheck + 385 个测试
492
+ npm run check # typecheck + 438 个测试
408
493
  npm run build # tsc → dist
409
494
  npm run verify:pack # 打包安装 smoke + 类型消费
410
495
  npm run verify:dogfood # 独立 app 干净安装 + 全链路 dogfood
package/dist/db.d.ts CHANGED
@@ -111,6 +111,7 @@ export interface SqlTag {
111
111
  export interface Db<R extends readonly Relations[] = readonly Relations[]> {
112
112
  readonly sql: SqlTag;
113
113
  readonly raw: postgres.Sql;
114
+ rawQuery<T extends Record<string, unknown> = Row>(text: string, params?: readonly unknown[]): Promise<T[]>;
114
115
  select<T extends Table>(table: T): SelectFragment<T, RowOf<T>>;
115
116
  select<T extends Table, const C extends Partial<Record<keyof RowOf<T>, true>>>(table: T, columns: C): SelectFragment<T, Pick<RowOf<T>, SelectedKeys<T, C>>>;
116
117
  insert<T extends Table>(table: T, values: InsertOf<T>): Promise<RowOf<T>[]>;
package/dist/db.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}