Skip to content

Commit 213fdf3

Browse files
committed
Merge remote-tracking branch 'origin/dev' into v2
2 parents 16cceda + 1ae38c1 commit 213fdf3

File tree

31 files changed

+353
-83
lines changed

31 files changed

+353
-83
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Update Samples
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
jobs:
8+
dispatch:
9+
runs-on: ubuntu-latest
10+
11+
strategy:
12+
matrix:
13+
repo:
14+
[
15+
'zenstackhq/sample-todo-nextjs',
16+
'zenstackhq/sample-todo-nextjs-tanstack',
17+
'zenstackhq/sample-todo-trpc',
18+
'zenstackhq/sample-todo-sveltekit',
19+
]
20+
21+
steps:
22+
- name: Repository Dispatch
23+
uses: peter-evans/[email protected]
24+
with:
25+
token: ${{ secrets.RELEASE_TRIGGER_TOKEN }}
26+
repository: ${{ matrix.repo }}
27+
event-type: zenstack-release

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,8 @@ Thank you for your support!
235235
<td align="center"><a href="https://github.com/j0hannr"><img src="https://avatars.githubusercontent.com/u/52762073?v=4" width="100" style="border-radius:50%" alt="Johann Rohn"/><br />Johann Rohn</a></td>
236236

237237
<td align="center"><a href="https://github.com/baenie"><img src="https://avatars.githubusercontent.com/u/58309104?v=4" width="100" style="border-radius:50%" alt="Benjamin Zecirovic"/><br />Benjamin Zecirovic</a></td>
238+
<td align="center"><a href="https://github.com/iamfj"><img src="https://avatars.githubusercontent.com/u/24557998?v=4" width="100" style="border-radius:50%" alt="Fabian Jocks"/><br />Fabian Jocks</a></td>
239+
238240
</tr>
239241
</table>
240242

packages/ide/jetbrains/CHANGELOG.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,15 @@
1515

1616
## 1.7.0
1717
### Added
18-
- Auto-completion is now supported inside attributes.
18+
19+
- Added support to complex usage of `@@index` attribute like `@@index([content(ops: raw("gin_trgm_ops"))], type: Gin)`.
20+
21+
### Fixed
22+
23+
- Fixed several ZModel validation issues related to model inheritance.
24+
25+
## 1.7.0
26+
27+
### Added
28+
29+
- Auto-completion is now supported inside attributes.

packages/language/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"generate": "langium generate && npx ts-node script/generate-plist.ts",
1010
"watch": "concurrently \"langium generate --watch\" \"tsc --watch\"",
1111
"lint": "eslint src --ext ts",
12-
"build": "pnpm lint --max-warnings=0 && pnpm clean && pnpm generate && tsc && copyfiles -F ./README.md ./LICENSE ./package.json 'syntaxes/**/*' dist && pnpm pack dist --pack-destination '../../../.build'",
12+
"build": "pnpm lint --max-warnings=0 && pnpm clean && pnpm generate && tsc && copyfiles -F ./README.md ./LICENSE ./package.json 'syntaxes/**/*' dist && pnpm pack dist --pack-destination ../../../.build",
1313
"prepublishOnly": "pnpm build"
1414
},
1515
"publishConfig": {

packages/misc/redwood/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
},
1010
"scripts": {
1111
"clean": "rimraf dist",
12-
"build": "pnpm lint --max-warnings=0 && pnpm clean && tsc && pnpm pack dist --pack-destination '../../../.build'",
12+
"build": "pnpm lint --max-warnings=0 && pnpm clean && tsc && pnpm pack dist --pack-destination ../../../.build",
1313
"watch": "tsc --watch",
1414
"lint": "eslint src --ext ts",
1515
"prepublishOnly": "pnpm build"

packages/plugins/openapi/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
},
1515
"scripts": {
1616
"clean": "rimraf dist",
17-
"build": "pnpm lint --max-warnings=0 && pnpm clean && tsc && copyfiles ./package.json ./README.md ./LICENSE dist && copyfiles -u 1 ./src/plugin.zmodel dist && pnpm pack dist --pack-destination '../../../../.build'",
17+
"build": "pnpm lint --max-warnings=0 && pnpm clean && tsc && copyfiles ./package.json ./README.md ./LICENSE dist && copyfiles -u 1 ./src/plugin.zmodel dist && pnpm pack dist --pack-destination ../../../../.build",
1818
"watch": "tsc --watch",
1919
"lint": "eslint src --ext ts",
2020
"test": "jest",

packages/plugins/openapi/tests/openapi-restful.test.ts

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@
44
import OpenAPIParser from '@readme/openapi-parser';
55
import { getLiteral, getObjectLiteral } from '@zenstackhq/sdk';
66
import { Model, Plugin, isPlugin } from '@zenstackhq/sdk/ast';
7-
import { loadZModelAndDmmf } from '@zenstackhq/testtools';
7+
import { loadZModelAndDmmf, normalizePath } from '@zenstackhq/testtools';
88
import fs from 'fs';
99
import path from 'path';
1010
import * as tmp from 'tmp';
1111
import YAML from 'yaml';
1212
import generate from '../src';
1313

14+
tmp.setGracefulCleanup();
15+
1416
describe('Open API Plugin RESTful Tests', () => {
1517
it('run plugin', async () => {
1618
for (const specVersion of ['3.0.0', '3.1.0']) {
1719
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
1820
plugin openapi {
19-
provider = '${path.resolve(__dirname, '../dist')}'
21+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
2022
specVersion = '${specVersion}'
2123
}
2224
@@ -114,7 +116,7 @@ model Bar {
114116
it('options', async () => {
115117
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
116118
plugin openapi {
117-
provider = '${path.resolve(__dirname, '../dist')}'
119+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
118120
specVersion = '3.0.0'
119121
title = 'My Awesome API'
120122
version = '1.0.0'
@@ -151,7 +153,7 @@ model User {
151153
it('security schemes valid', async () => {
152154
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
153155
plugin openapi {
154-
provider = '${path.resolve(__dirname, '../dist')}'
156+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
155157
securitySchemes = {
156158
myBasic: { type: 'http', scheme: 'basic' },
157159
myBearer: { type: 'http', scheme: 'bearer', bearerFormat: 'JWT' },
@@ -198,7 +200,7 @@ model Post {
198200
it('security model level override', async () => {
199201
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
200202
plugin openapi {
201-
provider = '${path.resolve(__dirname, '../dist')}'
203+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
202204
securitySchemes = {
203205
myBasic: { type: 'http', scheme: 'basic' }
204206
}
@@ -230,7 +232,7 @@ model User {
230232
it('security schemes invalid', async () => {
231233
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
232234
plugin openapi {
233-
provider = '${path.resolve(__dirname, '../dist')}'
235+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
234236
securitySchemes = {
235237
myBasic: { type: 'invalid', scheme: 'basic' }
236238
}
@@ -251,7 +253,7 @@ model User {
251253
it('ignored model used as relation', async () => {
252254
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
253255
plugin openapi {
254-
provider = '${path.resolve(__dirname, '../dist')}'
256+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
255257
}
256258
257259
model User {
@@ -284,7 +286,7 @@ model Post {
284286
for (const specVersion of ['3.0.0', '3.1.0']) {
285287
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
286288
plugin openapi {
287-
provider = '${path.resolve(__dirname, '../dist')}'
289+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
288290
specVersion = '${specVersion}'
289291
}
290292

packages/plugins/openapi/tests/openapi-rpc.test.ts

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@
44
import OpenAPIParser from '@readme/openapi-parser';
55
import { getLiteral, getObjectLiteral } from '@zenstackhq/sdk';
66
import { Model, Plugin, isPlugin } from '@zenstackhq/sdk/ast';
7-
import { loadZModelAndDmmf } from '@zenstackhq/testtools';
7+
import { loadZModelAndDmmf, normalizePath } from '@zenstackhq/testtools';
88
import fs from 'fs';
99
import path from 'path';
1010
import * as tmp from 'tmp';
1111
import YAML from 'yaml';
1212
import generate from '../src';
1313

14+
tmp.setGracefulCleanup();
15+
1416
describe('Open API Plugin RPC Tests', () => {
1517
it('run plugin', async () => {
1618
for (const specVersion of ['3.0.0', '3.1.0']) {
1719
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
1820
plugin openapi {
19-
provider = '${path.resolve(__dirname, '../dist')}'
21+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
2022
specVersion = '${specVersion}'
2123
}
2224
@@ -127,7 +129,7 @@ model Bar {
127129
it('options', async () => {
128130
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
129131
plugin openapi {
130-
provider = '${path.resolve(__dirname, '../dist')}'
132+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
131133
specVersion = '3.0.0'
132134
title = 'My Awesome API'
133135
version = '1.0.0'
@@ -164,7 +166,7 @@ model User {
164166
it('security schemes valid', async () => {
165167
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
166168
plugin openapi {
167-
provider = '${path.resolve(__dirname, '../dist')}'
169+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
168170
securitySchemes = {
169171
myBasic: { type: 'http', scheme: 'basic' },
170172
myBearer: { type: 'http', scheme: 'bearer', bearerFormat: 'JWT' },
@@ -198,7 +200,7 @@ model User {
198200
it('security schemes invalid', async () => {
199201
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
200202
plugin openapi {
201-
provider = '${path.resolve(__dirname, '../dist')}'
203+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
202204
securitySchemes = {
203205
myBasic: { type: 'invalid', scheme: 'basic' }
204206
}
@@ -219,7 +221,7 @@ model User {
219221
it('security model level override', async () => {
220222
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
221223
plugin openapi {
222-
provider = '${path.resolve(__dirname, '../dist')}'
224+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
223225
securitySchemes = {
224226
myBasic: { type: 'http', scheme: 'basic' }
225227
}
@@ -247,7 +249,7 @@ model User {
247249
it('security operation level override', async () => {
248250
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
249251
plugin openapi {
250-
provider = '${path.resolve(__dirname, '../dist')}'
252+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
251253
securitySchemes = {
252254
myBasic: { type: 'http', scheme: 'basic' }
253255
}
@@ -280,7 +282,7 @@ model User {
280282
it('security inferred', async () => {
281283
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
282284
plugin openapi {
283-
provider = '${path.resolve(__dirname, '../dist')}'
285+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
284286
securitySchemes = {
285287
myBasic: { type: 'http', scheme: 'basic' }
286288
}
@@ -306,7 +308,7 @@ model User {
306308
it('v3.1.0 fields', async () => {
307309
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
308310
plugin openapi {
309-
provider = '${path.resolve(__dirname, '../dist')}'
311+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
310312
summary = 'awesome api'
311313
}
312314
@@ -330,7 +332,7 @@ model User {
330332
it('ignored model used as relation', async () => {
331333
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
332334
plugin openapi {
333-
provider = '${path.resolve(__dirname, '../dist')}'
335+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
334336
}
335337
336338
model User {
@@ -362,7 +364,7 @@ model Post {
362364
for (const specVersion of ['3.0.0', '3.1.0']) {
363365
const { model, dmmf, modelFile } = await loadZModelAndDmmf(`
364366
plugin openapi {
365-
provider = '${path.resolve(__dirname, '../dist')}'
367+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
366368
specVersion = '${specVersion}'
367369
}
368370
@@ -408,7 +410,7 @@ generator js {
408410
}
409411
410412
plugin openapi {
411-
provider = '${path.resolve(__dirname, '../dist')}'
413+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
412414
}
413415
414416
enum role {

packages/plugins/swr/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
},
1111
"scripts": {
1212
"clean": "rimraf dist",
13-
"build": "pnpm lint --max-warnings=0 && pnpm clean && tsc && tsup-node --config ./tsup.config.ts && copyfiles ./package.json ./README.md ./LICENSE dist && pnpm pack dist --pack-destination '../../../../.build'",
13+
"build": "pnpm lint --max-warnings=0 && pnpm clean && tsc && tsup-node --config ./tsup.config.ts && copyfiles ./package.json ./README.md ./LICENSE dist && pnpm pack dist --pack-destination ../../../../.build",
1414
"watch": "concurrently \"tsc --watch\" \"tsup-node --config ./tsup.config.ts --watch\"",
1515
"lint": "eslint src --ext ts",
1616
"test": "jest",

packages/plugins/swr/tests/swr.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/// <reference types="@types/jest" />
22

3-
import { loadSchema } from '@zenstackhq/testtools';
3+
import { loadSchema, normalizePath } from '@zenstackhq/testtools';
44
import path from 'path';
55

66
describe('SWR Plugin Tests', () => {
@@ -50,7 +50,7 @@ model Foo {
5050
await loadSchema(
5151
`
5252
plugin swr {
53-
provider = '${path.resolve(__dirname, '../dist')}'
53+
provider = '${normalizePath(path.resolve(__dirname, '../dist'))}'
5454
output = '$projectRoot/hooks'
5555
}
5656
@@ -60,7 +60,7 @@ ${sharedModel}
6060
provider: 'postgresql',
6161
pushDb: false,
6262
extraDependencies: [
63-
path.resolve(__dirname, '../dist'),
63+
`${normalizePath(path.join(__dirname, '../dist'))}`,
6464
6565
6666
'swr@^2',

0 commit comments

Comments
 (0)