Skip to content

Commit 7706cc3

Browse files
authored
Merge pull request #347 from zenstackhq/dev
merge dev to main (v3.0.0-beta.14)
2 parents 1b95b16 + 7826da3 commit 7706cc3

File tree

191 files changed

+16007
-2211
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

191 files changed

+16007
-2211
lines changed

BREAKINGCHANGES.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
1. `update` and `delete` policy rejection throws `NotFoundError`
22
1. `check()` ORM api has been removed
33
1. non-optional to-one relation doesn't automatically filter parent read when evaluating access policies
4+
1. `@omit` and `@password` attributes have been removed
5+
1. SWR plugin is removed

CLAUDE.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
1919

2020
### Testing
2121

22-
- Runtime package tests: `pnpm test` (includes vitest, typing generation, and typecheck)
23-
- CLI tests: `pnpm test`
2422
- E2E tests are in `tests/e2e/` directory
2523

2624
### ZenStack CLI Commands
@@ -35,7 +33,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
3533

3634
### Core Components
3735

38-
- **@zenstackhq/runtime** - Main database client and ORM engine built on Kysely
36+
- **@zenstackhq/orm** - ORM engine built above Kysely
3937
- **@zenstackhq/cli** - Command line interface and project management
4038
- **@zenstackhq/language** - ZModel language specification and parser (uses Langium)
4139
- **@zenstackhq/sdk** - Code generation utilities and schema processing
@@ -56,14 +54,14 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
5654

5755
### Package Dependencies
5856

59-
- **Runtime**: Depends on Kysely, Zod, and various utility libraries
57+
- **ORM**: Depends on Kysely, Zod, and various utility libraries
6058
- **CLI**: Depends on language package, Commander.js, and Prisma (for migrations)
6159
- **Language**: Uses Langium for grammar parsing and AST generation
6260
- **Database Support**: SQLite (better-sqlite3) and PostgreSQL (pg) only
6361

6462
### Testing Strategy
6563

66-
- Runtime package has comprehensive client API tests and policy tests
64+
- ORM package has comprehensive client API tests and policy tests
6765
- CLI has action-specific tests for commands
6866
- E2E tests validate real-world schema compatibility (cal.com, formbricks, trigger.dev)
6967
- Type coverage tests ensure TypeScript inference works correctly

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ Even without using advanced features, ZenStack offers the following benefits as
4747
2. More TypeScript type inference, less code generation.
4848
3. Fully-typed query-builder API as a better escape hatch compared to Prisma's [raw queries](https://www.prisma.io/docs/orm/prisma-client/using-raw-sql/raw-queries) or [typed SQL](https://www.prisma.io/docs/orm/prisma-client/using-raw-sql/typedsql).
4949

50-
> Although ZenStack v3's runtime doesn't depend on Prisma anymore (specifically, `@prisma/client`), it still relies on Prisma to handle database migration. See [database migration](https://zenstack.dev/docs/3.x/orm/migration) for more details.
50+
> Although ZenStack v3's ORM runtime doesn't depend on Prisma anymore (specifically, `@prisma/client`), it still relies on Prisma to handle database migration. See [database migration](https://zenstack.dev/docs/3.x/orm/migration) for more details.
5151
5252
# Quick start
5353

@@ -77,7 +77,7 @@ Alternatively, you can set it up manually:
7777

7878
```bash
7979
npm install -D @zenstackhq/cli@next
80-
npm install @zenstackhq/runtime@next
80+
npm install @zenstackhq/orm@next
8181
```
8282

8383
Then create a `zenstack` folder and a `schema.zmodel` file in it.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"name": "zenstack-v3",
3-
"version": "3.0.0-beta.13",
3+
"version": "3.0.0-beta.14",
44
"description": "ZenStack",
5-
"packageManager": "pnpm@10.12.1",
5+
"packageManager": "pnpm@10.20.0",
66
"scripts": {
77
"build": "turbo run build",
88
"watch": "turbo run watch build",

packages/cli/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"publisher": "zenstack",
44
"displayName": "ZenStack CLI",
55
"description": "FullStack database toolkit with built-in access control and automatic API generation.",
6-
"version": "3.0.0-beta.13",
6+
"version": "3.0.0-beta.14",
77
"type": "module",
88
"author": {
99
"name": "ZenStack Team"
@@ -49,7 +49,7 @@
4949
"@types/semver": "^7.7.0",
5050
"@types/tmp": "catalog:",
5151
"@zenstackhq/eslint-config": "workspace:*",
52-
"@zenstackhq/runtime": "workspace:*",
52+
"@zenstackhq/orm": "workspace:*",
5353
"@zenstackhq/testtools": "workspace:*",
5454
"@zenstackhq/typescript-config": "workspace:*",
5555
"@zenstackhq/vitest-config": "workspace:*",

packages/cli/src/actions/generate.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export async function run(options: Options) {
3333
console.log(`You can now create a ZenStack client with it.
3434
3535
\`\`\`ts
36-
import { ZenStackClient } from '@zenstackhq/runtime';
36+
import { ZenStackClient } from '@zenstackhq/orm';
3737
import { schema } from '${outputPath}/schema';
3838
3939
const client = new ZenStackClient(schema, {

packages/cli/src/actions/init.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { STARTER_ZMODEL } from './templates';
1313
export async function run(projectPath: string) {
1414
const packages = [
1515
{ name: '@zenstackhq/cli@next', dev: true },
16-
{ name: '@zenstackhq/runtime@next', dev: false },
16+
{ name: '@zenstackhq/orm@next', dev: false },
1717
];
1818
let pm = await detect();
1919
if (!pm) {

packages/cli/src/actions/migrate.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ async function runReset(prismaSchemaFile: string, options: ResetOptions) {
8686
'prisma migrate reset',
8787
` --schema "${prismaSchemaFile}"`,
8888
' --skip-generate',
89-
options.force ? ' --force' : ''
89+
options.force ? ' --force' : '',
9090
].join('');
9191

9292
await execPackage(cmd);

packages/cli/src/actions/templates.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ model Post {
2626
}
2727
`;
2828

29-
export const STARTER_MAIN_TS = `import { ZenStackClient } from '@zenstackhq/runtime';
29+
export const STARTER_MAIN_TS = `import { ZenStackClient } from '@zenstackhq/orm';
3030
import SQLite from 'better-sqlite3';
3131
import { SqliteDialect } from 'kysely';
3232
import { schema } from './zenstack/schema';

packages/cli/test/ts-schema-gen.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ExpressionUtils } from '@zenstackhq/runtime/schema';
1+
import { ExpressionUtils } from '@zenstackhq/orm/schema';
22
import { createTestProject, generateTsSchema, generateTsSchemaInPlace } from '@zenstackhq/testtools';
33
import fs from 'node:fs';
44
import path from 'node:path';

0 commit comments

Comments
 (0)