diff --git a/packages/cli/src/Init.ts b/packages/cli/src/Init.ts index c394a47ef9a5..fc356c76d278 100644 --- a/packages/cli/src/Init.ts +++ b/packages/cli/src/Init.ts @@ -18,7 +18,8 @@ import { isError } from 'util' import { printError } from './utils/prompt/utils/print' export const defaultSchema = (provider: ConnectorType = 'postgresql') => { - if (provider === 'sqlserver' || provider === 'mongodb') { + // add preview flag + if (provider === 'mongodb') { return `// This is your Prisma schema file, // learn more about it in the docs: https://pris.ly/d/prisma-schema @@ -29,9 +30,7 @@ datasource db { generator client { provider = "prisma-client-js" - previewFeatures = ["${ - provider === 'sqlserver' ? 'microsoftSqlServer' : 'mongoDb' - }"] + previewFeatures = ["mongoDb"] } ` } else { diff --git a/packages/client/src/__tests__/integration/errors/default-onDelete-cascade-sqlserver/schema.prisma b/packages/client/src/__tests__/integration/errors/default-onDelete-cascade-sqlserver/schema.prisma index f1e86e9a7adb..d1f2e8a189a1 100644 --- a/packages/client/src/__tests__/integration/errors/default-onDelete-cascade-sqlserver/schema.prisma +++ b/packages/client/src/__tests__/integration/errors/default-onDelete-cascade-sqlserver/schema.prisma @@ -4,8 +4,7 @@ datasource my_db { } generator client { - provider = "prisma-client-js" - previewFeatures = ["microsoftSqlServer"] + provider = "prisma-client-js" } model Post { diff --git a/packages/client/src/__tests__/integration/happy/blog-env-mssql/schema.prisma b/packages/client/src/__tests__/integration/happy/blog-env-mssql/schema.prisma index e5d405c673de..ea61fc14a979 100644 --- a/packages/client/src/__tests__/integration/happy/blog-env-mssql/schema.prisma +++ b/packages/client/src/__tests__/integration/happy/blog-env-mssql/schema.prisma @@ -5,12 +5,11 @@ datasource my_db { generator client { provider = "prisma-client-js" - previewFeatures = ["microsoftSqlServer"] } // / User model comment model User { - id String @default(uuid()) @id + id String @id @default(uuid()) email String @unique // / name comment name String? @@ -18,7 +17,7 @@ model User { } model Post { - id String @default(cuid()) @id + id String @id @default(cuid()) createdAt DateTime @default(now()) updatedAt DateTime @updatedAt published Boolean diff --git a/packages/client/src/__tests__/integration/happy/referentialActions-onDelete-cascade-sqlserver/schema.prisma b/packages/client/src/__tests__/integration/happy/referentialActions-onDelete-cascade-sqlserver/schema.prisma index e4ef8e1252bb..6706461966c1 100644 --- a/packages/client/src/__tests__/integration/happy/referentialActions-onDelete-cascade-sqlserver/schema.prisma +++ b/packages/client/src/__tests__/integration/happy/referentialActions-onDelete-cascade-sqlserver/schema.prisma @@ -5,7 +5,7 @@ datasource my_db { generator client { provider = "prisma-client-js" - previewFeatures = ["microsoftSqlServer", "referentialActions"] + previewFeatures = ["referentialActions"] } model Post { diff --git a/packages/engine-core/src/binary/BinaryEngine.ts b/packages/engine-core/src/binary/BinaryEngine.ts index 85f4299fed2b..dbea54cf3d1c 100644 --- a/packages/engine-core/src/binary/BinaryEngine.ts +++ b/packages/engine-core/src/binary/BinaryEngine.ts @@ -171,6 +171,9 @@ export class BinaryEngine extends Engine { this.connection = new Connection() initHooks() + + // See also warnOnDeprecatedFeatureFlag at + // https://github.com/prisma/prisma/blob/main/packages/sdk/src/engine-commands/getDmmf.ts#L179 const removedFlags = [ 'middlewares', 'aggregateApi', @@ -185,6 +188,7 @@ export class BinaryEngine extends Engine { 'nativeTypes', 'createMany', 'groupBy', + 'microsoftSqlServer', ] const removedFlagsUsed = this.previewFeatures.filter((e) => removedFlags.includes(e), diff --git a/packages/integration-tests/src/__tests__/__helpers__/integrationTest.ts b/packages/integration-tests/src/__tests__/__helpers__/integrationTest.ts index 513b7a91b506..309bd43d187f 100644 --- a/packages/integration-tests/src/__tests__/__helpers__/integrationTest.ts +++ b/packages/integration-tests/src/__tests__/__helpers__/integrationTest.ts @@ -149,10 +149,7 @@ type Settings = { /** * A list of available preview features on the Prisma client. */ -type PreviewFeature = - | 'connectOrCreate' - | 'microsoftSqlServer' - | 'transactionApi' +type PreviewFeature = '' /** * Settings to add properties on the Prisma client. diff --git a/packages/integration-tests/src/__tests__/integration/mssql/__prismaClientSettings.ts b/packages/integration-tests/src/__tests__/integration/mssql/__prismaClientSettings.ts deleted file mode 100644 index b8f694d07d8e..000000000000 --- a/packages/integration-tests/src/__tests__/integration/mssql/__prismaClientSettings.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Input } from '../../__helpers__/integrationTest' - -export const prismaClientSettings = { - previewFeatures: ['microsoftSqlServer'], -} as Input['prismaClientSettings'] diff --git a/packages/integration-tests/src/__tests__/integration/mssql/introspection.test.ts b/packages/integration-tests/src/__tests__/integration/mssql/introspection.test.ts index 09fdcf2f9bc2..b53a633c1e76 100644 --- a/packages/integration-tests/src/__tests__/integration/mssql/introspection.test.ts +++ b/packages/integration-tests/src/__tests__/integration/mssql/introspection.test.ts @@ -1,6 +1,8 @@ -import { introspectionIntegrationTest } from '../../__helpers__/integrationTest' +import { + introspectionIntegrationTest, + Input, +} from '../../__helpers__/integrationTest' import { database } from './__database' import { scenarios } from './__scenarios' -import { prismaClientSettings } from './__prismaClientSettings' -introspectionIntegrationTest({ scenarios, database, prismaClientSettings }) +introspectionIntegrationTest({ scenarios, database }) diff --git a/packages/integration-tests/src/__tests__/integration/mssql/runtime.test.ts b/packages/integration-tests/src/__tests__/integration/mssql/runtime.test.ts index 8d5dd9b2190c..1d766a477905 100644 --- a/packages/integration-tests/src/__tests__/integration/mssql/runtime.test.ts +++ b/packages/integration-tests/src/__tests__/integration/mssql/runtime.test.ts @@ -1,6 +1,5 @@ import { runtimeIntegrationTest } from '../../__helpers__/integrationTest' import { database } from './__database' import { scenarios } from './__scenarios' -import { prismaClientSettings } from './__prismaClientSettings' -runtimeIntegrationTest({ database, scenarios, prismaClientSettings }) +runtimeIntegrationTest({ database, scenarios }) diff --git a/packages/migrate/src/__tests__/fixtures/nativeTypes-mssql/prisma/schema.prisma b/packages/migrate/src/__tests__/fixtures/nativeTypes-mssql/prisma/schema.prisma index 6f84e86dfffb..989a027436ce 100644 --- a/packages/migrate/src/__tests__/fixtures/nativeTypes-mssql/prisma/schema.prisma +++ b/packages/migrate/src/__tests__/fixtures/nativeTypes-mssql/prisma/schema.prisma @@ -4,8 +4,7 @@ datasource db { } generator client { - previewFeatures = ["microsoftSqlServer"] - provider = "prisma-client-js" + provider = "prisma-client-js" } model User { diff --git a/packages/sdk/src/engine-commands/getDmmf.ts b/packages/sdk/src/engine-commands/getDmmf.ts index ae8917bc4bb5..58cae48f452c 100644 --- a/packages/sdk/src/engine-commands/getDmmf.ts +++ b/packages/sdk/src/engine-commands/getDmmf.ts @@ -176,6 +176,9 @@ function addMissingOpenSSLInfo(message: string) { } return message } + +// See also removedFlags at +// https://github.com/prisma/prisma/blob/main/packages/engine-core/src/binary/BinaryEngine.ts#L174 function warnOnDeprecatedFeatureFlag(previewFeatures?: string[]) { const getMessage = (flag: string) => `${chalk.blueBright( @@ -193,6 +196,7 @@ function warnOnDeprecatedFeatureFlag(previewFeatures?: string[]) { nativeTypes: getMessage('nativeTypes'), createMany: getMessage('createMany'), groupBy: getMessage('groupBy'), + microsoftSqlServer: getMessage('microsoftSqlServer'), } previewFeatures?.forEach((f) => {