From fcbd53878f34571bd6e4a50751c9030d938252df Mon Sep 17 00:00:00 2001 From: ymc9 <104139426+ymc9@users.noreply.github.com> Date: Wed, 19 Nov 2025 10:11:32 -0800 Subject: [PATCH 1/3] fix: make datasource url optional --- .../src/language-server/validator/datasource-validator.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/schema/src/language-server/validator/datasource-validator.ts b/packages/schema/src/language-server/validator/datasource-validator.ts index d102e409f..bf934a085 100644 --- a/packages/schema/src/language-server/validator/datasource-validator.ts +++ b/packages/schema/src/language-server/validator/datasource-validator.ts @@ -43,9 +43,8 @@ export default class DataSourceValidator implements AstValidator { private validateUrl(ds: DataSource, accept: ValidationAcceptor) { const url = ds.fields.find((f) => f.name === 'url'); if (!url) { - accept('error', 'datasource must include a "url" field', { - node: ds, - }); + // url field is optional for new versions of Prisma + return; } for (const fieldName of ['url', 'shadowDatabaseUrl']) { From e5d8a1f14d99335e0242b1c397bbf65faede610d Mon Sep 17 00:00:00 2001 From: ymc9 <104139426+ymc9@users.noreply.github.com> Date: Wed, 19 Nov 2025 11:09:58 -0800 Subject: [PATCH 2/3] update tests --- .../tests/schema/validation/datasource-validation.test.ts | 5 +---- tests/integration/tests/cli/generate.test.ts | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/packages/schema/tests/schema/validation/datasource-validation.test.ts b/packages/schema/tests/schema/validation/datasource-validation.test.ts index 0c90da4db..f73e5a661 100644 --- a/packages/schema/tests/schema/validation/datasource-validation.test.ts +++ b/packages/schema/tests/schema/validation/datasource-validation.test.ts @@ -10,10 +10,7 @@ describe('Datasource Validation Tests', () => { expect(result).toMatchObject({ status: 'rejected', reason: { - cause: [ - { message: 'datasource must include a "provider" field' }, - { message: 'datasource must include a "url" field' }, - ], + cause: [{ message: 'datasource must include a "provider" field' }], }, }); }); diff --git a/tests/integration/tests/cli/generate.test.ts b/tests/integration/tests/cli/generate.test.ts index f066c8cfb..a420b30e8 100644 --- a/tests/integration/tests/cli/generate.test.ts +++ b/tests/integration/tests/cli/generate.test.ts @@ -45,7 +45,7 @@ model Post { // set up project fs.writeFileSync('package.json', JSON.stringify({ name: 'my app', version: '1.0.0' })); createNpmrc(); - installPackage('prisma @prisma/client zod@^3.25.0 @types/node@20'); + installPackage('prisma@6.19.x @prisma/client@6.19.x zod@^3.25.0 @types/node@20'); installPackage(path.join(__dirname, '../../../../packages/runtime/dist')); // set up schema From f3d87161dab2057c6dfde4841b148bd8d895e068 Mon Sep 17 00:00:00 2001 From: ymc9 <104139426+ymc9@users.noreply.github.com> Date: Wed, 19 Nov 2025 13:02:15 -0800 Subject: [PATCH 3/3] update tests --- packages/schema/tests/generator/prisma-generator.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/schema/tests/generator/prisma-generator.test.ts b/packages/schema/tests/generator/prisma-generator.test.ts index fc71b26bb..be643351f 100644 --- a/packages/schema/tests/generator/prisma-generator.test.ts +++ b/packages/schema/tests/generator/prisma-generator.test.ts @@ -21,7 +21,7 @@ describe('Prisma generator test', () => { process.chdir(r.name); execSync('npm init -y', { stdio: 'ignore' }); - execSync('npm install prisma'); + execSync('npm install prisma@6.19.x'); }); afterEach(() => {