feature(constants) add constants/node:constants module and tests(prisma) use prima 5.0.0 + use same connection for postgres, add prisma mssql (disabled for now) (#3672)

* use prima 5.0.0 + use same connection for postgres

* change mongodb test URL

* constants module + mssql prisma test (disabled)
This commit is contained in:
Ciro Spaciari
2023-07-18 20:09:18 -03:00
committed by GitHub
parent 49231b2cb9
commit 112f01ca61
16 changed files with 529 additions and 20 deletions

View File

@@ -193,9 +193,8 @@ jobs:
name: Test (node runner)
env:
SMTP_SENDGRID_SENDER: ${{ secrets.SMTP_SENDGRID_SENDER }}
TLS_MONGODB_DATABASE_URL: ${{ secrets.TLS_MONGODB_DATABASE_URL }}
TLS_POSTGRES_DATABASE_URL: ${{ secrets.TLS_POSTGRES_DATABASE_URL }}
PRISMA_POSTGRES_DATABASE_URL: ${{ secrets.PRISMA_POSTGRES_DATABASE_URL }}
PRISMA_MONGODB_DATABASE_URL: ${{ secrets.PRISMA_MONGODB_DATABASE_URL }}
# if: ${{github.event.inputs.use_bun == 'false'}}
run: |
bun install

View File

@@ -432,9 +432,8 @@ jobs:
name: Test (node runner)
env:
SMTP_SENDGRID_SENDER: ${{ secrets.SMTP_SENDGRID_SENDER }}
TLS_MONGODB_DATABASE_URL: ${{ secrets.TLS_MONGODB_DATABASE_URL }}
TLS_POSTGRES_DATABASE_URL: ${{ secrets.TLS_POSTGRES_DATABASE_URL }}
PRISMA_POSTGRES_DATABASE_URL: ${{ secrets.PRISMA_POSTGRES_DATABASE_URL }}
PRISMA_MONGODB_DATABASE_URL: ${{ secrets.PRISMA_MONGODB_DATABASE_URL }}
# if: ${{github.event.inputs.use_bun == 'false'}}
run: |
bun install

View File

@@ -436,9 +436,8 @@ jobs:
name: Test (node runner)
env:
SMTP_SENDGRID_SENDER: ${{ secrets.SMTP_SENDGRID_SENDER }}
TLS_MONGODB_DATABASE_URL: ${{ secrets.TLS_MONGODB_DATABASE_URL }}
TLS_POSTGRES_DATABASE_URL: ${{ secrets.TLS_POSTGRES_DATABASE_URL }}
PRISMA_POSTGRES_DATABASE_URL: ${{ secrets.PRISMA_POSTGRES_DATABASE_URL }}
PRISMA_MONGODB_DATABASE_URL: ${{ secrets.PRISMA_MONGODB_DATABASE_URL }}
# if: ${{github.event.inputs.use_bun == 'false'}}
run: |
bun install

View File

@@ -438,9 +438,8 @@ jobs:
name: Test (node runner)
env:
SMTP_SENDGRID_SENDER: ${{ secrets.SMTP_SENDGRID_SENDER }}
TLS_MONGODB_DATABASE_URL: ${{ secrets.TLS_MONGODB_DATABASE_URL }}
TLS_POSTGRES_DATABASE_URL: ${{ secrets.TLS_POSTGRES_DATABASE_URL }}
PRISMA_POSTGRES_DATABASE_URL: ${{ secrets.PRISMA_POSTGRES_DATABASE_URL }}
PRISMA_MONGODB_DATABASE_URL: ${{ secrets.PRISMA_MONGODB_DATABASE_URL }}
# if: ${{github.event.inputs.use_bun == 'false'}}
run: |
bun install

View File

@@ -1841,6 +1841,7 @@ pub const ModuleLoader = struct {
.@"node:async_hooks" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:async_hooks", "node/async_hooks.js", specifier),
.@"node:child_process" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:child_process", "node/child_process.js", specifier),
.@"node:crypto" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:crypto", "node/crypto.js", specifier),
.@"node:constants" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:constants", "node/constants.js", specifier),
.@"node:dns" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:dns", "node/dns.js", specifier),
.@"node:dns/promises" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:dns/promises", "node/dns.promises.js", specifier),
.@"node:events" => return jsResolvedSource(jsc_vm, jsc_vm.load_builtins_from_path, .@"node:child_process", "node/events.js", specifier),
@@ -2021,6 +2022,7 @@ pub const HardcodedModule = enum {
@"node:buffer",
@"node:child_process",
@"node:crypto",
@"node:constants",
@"node:dns",
@"node:dns/promises",
@"node:events",
@@ -2086,6 +2088,7 @@ pub const HardcodedModule = enum {
.{ "node:child_process", HardcodedModule.@"node:child_process" },
.{ "node:cluster", HardcodedModule.@"node:cluster" },
.{ "node:crypto", HardcodedModule.@"node:crypto" },
.{ "node:constants", HardcodedModule.@"node:constants" },
.{ "node:dgram", HardcodedModule.@"node:dgram" },
.{ "node:diagnostics_channel", HardcodedModule.@"node:diagnostics_channel" },
.{ "node:dns", HardcodedModule.@"node:dns" },
@@ -2148,6 +2151,7 @@ pub const HardcodedModule = enum {
.{ "bun:events_native", .{ .path = "bun:events_native" } },
.{ "child_process", .{ .path = "node:child_process" } },
.{ "crypto", .{ .path = "node:crypto" } },
.{ "constants", .{ .path = "node:constants" } },
.{ "detect-libc", .{ .path = "detect-libc" } },
.{ "detect-libc/lib/detect-libc.js", .{ .path = "detect-libc" } },
.{ "dns", .{ .path = "node:dns" } },
@@ -2166,6 +2170,7 @@ pub const HardcodedModule = enum {
.{ "node:buffer", .{ .path = "node:buffer" } },
.{ "node:child_process", .{ .path = "node:child_process" } },
.{ "node:crypto", .{ .path = "node:crypto" } },
.{ "node:constants", .{ .path = "node:constants" } },
.{ "node:dns", .{ .path = "node:dns" } },
.{ "node:dns/promises", .{ .path = "node:dns/promises" } },
.{ "node:events", .{ .path = "node:events" } },

View File

@@ -10,7 +10,7 @@ const TMP_DIR = path.join(import.meta.dir, "out/tmp");
const minifyList = [
"node/stream.js",
"node/crypto.js",
"node/constants.js",
"node/assert.js",
"node/assert.strict.js",
"node/fs.promises.ts",

476
src/js/node/constants.js Normal file
View File

@@ -0,0 +1,476 @@
const constants = {
RTLD_LAZY: 1,
RTLD_NOW: 2,
RTLD_GLOBAL: 256,
RTLD_LOCAL: 0,
RTLD_DEEPBIND: 8,
E2BIG: 7,
EACCES: 13,
EADDRINUSE: 98,
EADDRNOTAVAIL: 99,
EAFNOSUPPORT: 97,
EAGAIN: 11,
EALREADY: 114,
EBADF: 9,
EBADMSG: 74,
EBUSY: 16,
ECANCELED: 125,
ECHILD: 10,
ECONNABORTED: 103,
ECONNREFUSED: 111,
ECONNRESET: 104,
EDEADLK: 35,
EDESTADDRREQ: 89,
EDOM: 33,
EDQUOT: 122,
EEXIST: 17,
EFAULT: 14,
EFBIG: 27,
EHOSTUNREACH: 113,
EIDRM: 43,
EILSEQ: 84,
EINPROGRESS: 115,
EINTR: 4,
EINVAL: 22,
EIO: 5,
EISCONN: 106,
EISDIR: 21,
ELOOP: 40,
EMFILE: 24,
EMLINK: 31,
EMSGSIZE: 90,
EMULTIHOP: 72,
ENAMETOOLONG: 36,
ENETDOWN: 100,
ENETRESET: 102,
ENETUNREACH: 101,
ENFILE: 23,
ENOBUFS: 105,
ENODATA: 61,
ENODEV: 19,
ENOENT: 2,
ENOEXEC: 8,
ENOLCK: 37,
ENOLINK: 67,
ENOMEM: 12,
ENOMSG: 42,
ENOPROTOOPT: 92,
ENOSPC: 28,
ENOSR: 63,
ENOSTR: 60,
ENOSYS: 38,
ENOTCONN: 107,
ENOTDIR: 20,
ENOTEMPTY: 39,
ENOTSOCK: 88,
ENOTSUP: 95,
ENOTTY: 25,
ENXIO: 6,
EOPNOTSUPP: 95,
EOVERFLOW: 75,
EPERM: 1,
EPIPE: 32,
EPROTO: 71,
EPROTONOSUPPORT: 93,
EPROTOTYPE: 91,
ERANGE: 34,
EROFS: 30,
ESPIPE: 29,
ESRCH: 3,
ESTALE: 116,
ETIME: 62,
ETIMEDOUT: 110,
ETXTBSY: 26,
EWOULDBLOCK: 11,
EXDEV: 18,
PRIORITY_LOW: 19,
PRIORITY_BELOW_NORMAL: 10,
PRIORITY_NORMAL: 0,
PRIORITY_ABOVE_NORMAL: -7,
PRIORITY_HIGH: -14,
PRIORITY_HIGHEST: -20,
SIGHUP: 1,
SIGINT: 2,
SIGQUIT: 3,
SIGILL: 4,
SIGTRAP: 5,
SIGABRT: 6,
SIGIOT: 6,
SIGBUS: 7,
SIGFPE: 8,
SIGKILL: 9,
SIGUSR1: 10,
SIGSEGV: 11,
SIGUSR2: 12,
SIGPIPE: 13,
SIGALRM: 14,
SIGTERM: 15,
SIGCHLD: 17,
SIGSTKFLT: 16,
SIGCONT: 18,
SIGSTOP: 19,
SIGTSTP: 20,
SIGTTIN: 21,
SIGTTOU: 22,
SIGURG: 23,
SIGXCPU: 24,
SIGXFSZ: 25,
SIGVTALRM: 26,
SIGPROF: 27,
SIGWINCH: 28,
SIGIO: 29,
SIGPOLL: 29,
SIGPWR: 30,
SIGSYS: 31,
UV_FS_SYMLINK_DIR: 1,
UV_FS_SYMLINK_JUNCTION: 2,
O_RDONLY: 0,
O_WRONLY: 1,
O_RDWR: 2,
UV_DIRENT_UNKNOWN: 0,
UV_DIRENT_FILE: 1,
UV_DIRENT_DIR: 2,
UV_DIRENT_LINK: 3,
UV_DIRENT_FIFO: 4,
UV_DIRENT_SOCKET: 5,
UV_DIRENT_CHAR: 6,
UV_DIRENT_BLOCK: 7,
S_IFMT: 61440,
S_IFREG: 32768,
S_IFDIR: 16384,
S_IFCHR: 8192,
S_IFBLK: 24576,
S_IFIFO: 4096,
S_IFLNK: 40960,
S_IFSOCK: 49152,
O_CREAT: 64,
O_EXCL: 128,
UV_FS_O_FILEMAP: 0,
O_NOCTTY: 256,
O_TRUNC: 512,
O_APPEND: 1024,
O_DIRECTORY: 65536,
O_NOATIME: 262144,
O_NOFOLLOW: 131072,
O_SYNC: 1052672,
O_DSYNC: 4096,
O_DIRECT: 16384,
O_NONBLOCK: 2048,
S_IRWXU: 448,
S_IRUSR: 256,
S_IWUSR: 128,
S_IXUSR: 64,
S_IRWXG: 56,
S_IRGRP: 32,
S_IWGRP: 16,
S_IXGRP: 8,
S_IRWXO: 7,
S_IROTH: 4,
S_IWOTH: 2,
S_IXOTH: 1,
F_OK: 0,
R_OK: 4,
W_OK: 2,
X_OK: 1,
UV_FS_COPYFILE_EXCL: 1,
COPYFILE_EXCL: 1,
UV_FS_COPYFILE_FICLONE: 2,
COPYFILE_FICLONE: 2,
UV_FS_COPYFILE_FICLONE_FORCE: 4,
COPYFILE_FICLONE_FORCE: 4,
OPENSSL_VERSION_NUMBER: 805306496,
SSL_OP_ALL: 2147485776,
SSL_OP_ALLOW_NO_DHE_KEX: 1024,
SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION: 262144,
SSL_OP_CIPHER_SERVER_PREFERENCE: 4194304,
SSL_OP_CISCO_ANYCONNECT: 32768,
SSL_OP_COOKIE_EXCHANGE: 8192,
SSL_OP_CRYPTOPRO_TLSEXT_BUG: 2147483648,
SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS: 2048,
SSL_OP_LEGACY_SERVER_CONNECT: 4,
SSL_OP_NO_COMPRESSION: 131072,
SSL_OP_NO_ENCRYPT_THEN_MAC: 524288,
SSL_OP_NO_QUERY_MTU: 4096,
SSL_OP_NO_RENEGOTIATION: 1073741824,
SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION: 65536,
SSL_OP_NO_SSLv2: 0,
SSL_OP_NO_SSLv3: 33554432,
SSL_OP_NO_TICKET: 16384,
SSL_OP_NO_TLSv1: 67108864,
SSL_OP_NO_TLSv1_1: 268435456,
SSL_OP_NO_TLSv1_2: 134217728,
SSL_OP_NO_TLSv1_3: 536870912,
SSL_OP_PRIORITIZE_CHACHA: 2097152,
SSL_OP_TLS_ROLLBACK_BUG: 8388608,
ENGINE_METHOD_RSA: 1,
ENGINE_METHOD_DSA: 2,
ENGINE_METHOD_DH: 4,
ENGINE_METHOD_RAND: 8,
ENGINE_METHOD_EC: 2048,
ENGINE_METHOD_CIPHERS: 64,
ENGINE_METHOD_DIGESTS: 128,
ENGINE_METHOD_PKEY_METHS: 512,
ENGINE_METHOD_PKEY_ASN1_METHS: 1024,
ENGINE_METHOD_ALL: 65535,
ENGINE_METHOD_NONE: 0,
DH_CHECK_P_NOT_SAFE_PRIME: 2,
DH_CHECK_P_NOT_PRIME: 1,
DH_UNABLE_TO_CHECK_GENERATOR: 4,
DH_NOT_SUITABLE_GENERATOR: 8,
RSA_PKCS1_PADDING: 1,
RSA_NO_PADDING: 3,
RSA_PKCS1_OAEP_PADDING: 4,
RSA_X931_PADDING: 5,
RSA_PKCS1_PSS_PADDING: 6,
RSA_PSS_SALTLEN_DIGEST: -1,
RSA_PSS_SALTLEN_MAX_SIGN: -2,
RSA_PSS_SALTLEN_AUTO: -2,
//usockets default values
defaultCoreCipherList:
"DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256",
TLS1_VERSION: 769,
TLS1_1_VERSION: 770,
TLS1_2_VERSION: 771,
TLS1_3_VERSION: 772,
POINT_CONVERSION_COMPRESSED: 2,
POINT_CONVERSION_UNCOMPRESSED: 4,
POINT_CONVERSION_HYBRID: 6,
};
export const {
RTLD_LAZY,
RTLD_NOW,
RTLD_GLOBAL,
RTLD_LOCAL,
RTLD_DEEPBIND,
E2BIG,
EACCES,
EADDRINUSE,
EADDRNOTAVAIL,
EAFNOSUPPORT,
EAGAIN,
EALREADY,
EBADF,
EBADMSG,
EBUSY,
ECANCELED,
ECHILD,
ECONNABORTED,
ECONNREFUSED,
ECONNRESET,
EDEADLK,
EDESTADDRREQ,
EDOM,
EDQUOT,
EEXIST,
EFAULT,
EFBIG,
EHOSTUNREACH,
EIDRM,
EILSEQ,
EINPROGRESS,
EINTR,
EINVAL,
EIO,
EISCONN,
EISDIR,
ELOOP,
EMFILE,
EMLINK,
EMSGSIZE,
EMULTIHOP,
ENAMETOOLONG,
ENETDOWN,
ENETRESET,
ENETUNREACH,
ENFILE,
ENOBUFS,
ENODATA,
ENODEV,
ENOENT,
ENOEXEC,
ENOLCK,
ENOLINK,
ENOMEM,
ENOMSG,
ENOPROTOOPT,
ENOSPC,
ENOSR,
ENOSTR,
ENOSYS,
ENOTCONN,
ENOTDIR,
ENOTEMPTY,
ENOTSOCK,
ENOTSUP,
ENOTTY,
ENXIO,
EOPNOTSUPP,
EOVERFLOW,
EPERM,
EPIPE,
EPROTO,
EPROTONOSUPPORT,
EPROTOTYPE,
ERANGE,
EROFS,
ESPIPE,
ESRCH,
ESTALE,
ETIME,
ETIMEDOUT,
ETXTBSY,
EWOULDBLOCK,
EXDEV,
PRIORITY_LOW,
PRIORITY_BELOW_NORMAL,
PRIORITY_NORMAL,
PRIORITY_ABOVE_NORMAL,
PRIORITY_HIGH,
PRIORITY_HIGHEST,
SIGHUP,
SIGINT,
SIGQUIT,
SIGILL,
SIGTRAP,
SIGABRT,
SIGIOT,
SIGBUS,
SIGFPE,
SIGKILL,
SIGUSR1,
SIGSEGV,
SIGUSR2,
SIGPIPE,
SIGALRM,
SIGTERM,
SIGCHLD,
SIGSTKFLT,
SIGCONT,
SIGSTOP,
SIGTSTP,
SIGTTIN,
SIGTTOU,
SIGURG,
SIGXCPU,
SIGXFSZ,
SIGVTALRM,
SIGPROF,
SIGWINCH,
SIGIO,
SIGPOLL,
SIGPWR,
SIGSYS,
UV_FS_SYMLINK_DIR,
UV_FS_SYMLINK_JUNCTION,
O_RDONLY,
O_WRONLY,
O_RDWR,
UV_DIRENT_UNKNOWN,
UV_DIRENT_FILE,
UV_DIRENT_DIR,
UV_DIRENT_LINK,
UV_DIRENT_FIFO,
UV_DIRENT_SOCKET,
UV_DIRENT_CHAR,
UV_DIRENT_BLOCK,
S_IFMT,
S_IFREG,
S_IFDIR,
S_IFCHR,
S_IFBLK,
S_IFIFO,
S_IFLNK,
S_IFSOCK,
O_CREAT,
O_EXCL,
UV_FS_O_FILEMAP,
O_NOCTTY,
O_TRUNC,
O_APPEND,
O_DIRECTORY,
O_NOATIME,
O_NOFOLLOW,
O_SYNC,
O_DSYNC,
O_DIRECT,
O_NONBLOCK,
S_IRWXU,
S_IRUSR,
S_IWUSR,
S_IXUSR,
S_IRWXG,
S_IRGRP,
S_IWGRP,
S_IXGRP,
S_IRWXO,
S_IROTH,
S_IWOTH,
S_IXOTH,
F_OK,
R_OK,
W_OK,
X_OK,
UV_FS_COPYFILE_EXCL,
COPYFILE_EXCL,
UV_FS_COPYFILE_FICLONE,
COPYFILE_FICLONE,
UV_FS_COPYFILE_FICLONE_FORCE,
COPYFILE_FICLONE_FORCE,
OPENSSL_VERSION_NUMBER,
SSL_OP_ALL,
SSL_OP_ALLOW_NO_DHE_KEX,
SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION,
SSL_OP_CIPHER_SERVER_PREFERENCE,
SSL_OP_CISCO_ANYCONNECT,
SSL_OP_COOKIE_EXCHANGE,
SSL_OP_CRYPTOPRO_TLSEXT_BUG,
SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS,
SSL_OP_LEGACY_SERVER_CONNECT,
SSL_OP_NO_COMPRESSION,
SSL_OP_NO_ENCRYPT_THEN_MAC,
SSL_OP_NO_QUERY_MTU,
SSL_OP_NO_RENEGOTIATION,
SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION,
SSL_OP_NO_SSLv2,
SSL_OP_NO_SSLv3,
SSL_OP_NO_TICKET,
SSL_OP_NO_TLSv1,
SSL_OP_NO_TLSv1_1,
SSL_OP_NO_TLSv1_2,
SSL_OP_NO_TLSv1_3,
SSL_OP_PRIORITIZE_CHACHA,
SSL_OP_TLS_ROLLBACK_BUG,
ENGINE_METHOD_RSA,
ENGINE_METHOD_DSA,
ENGINE_METHOD_DH,
ENGINE_METHOD_RAND,
ENGINE_METHOD_EC,
ENGINE_METHOD_CIPHERS,
ENGINE_METHOD_DIGESTS,
ENGINE_METHOD_PKEY_METHS,
ENGINE_METHOD_PKEY_ASN1_METHS,
ENGINE_METHOD_ALL,
ENGINE_METHOD_NONE,
DH_CHECK_P_NOT_SAFE_PRIME,
DH_CHECK_P_NOT_PRIME,
DH_UNABLE_TO_CHECK_GENERATOR,
DH_NOT_SUITABLE_GENERATOR,
RSA_PKCS1_PADDING,
RSA_NO_PADDING,
RSA_PKCS1_OAEP_PADDING,
RSA_X931_PADDING,
RSA_PKCS1_PSS_PADDING,
RSA_PSS_SALTLEN_DIGEST,
RSA_PSS_SALTLEN_MAX_SIGN,
RSA_PSS_SALTLEN_AUTO,
defaultCoreCipherList,
TLS1_VERSION,
TLS1_1_VERSION,
TLS1_2_VERSION,
TLS1_3_VERSION,
POINT_CONVERSION_COMPRESSED,
POINT_CONVERSION_UNCOMPRESSED,
POINT_CONVERSION_HYBRID,
} = constants;
export default constants;

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@@ -35,19 +35,20 @@ describe("postgres", () => {
it("should insert, select and delete", async () => {
const sql = postgres(CONNECTION_STRING as string);
try {
await sql`CREATE TABLE IF NOT EXISTS users (
await sql`CREATE TABLE IF NOT EXISTS usernames (
user_id serial PRIMARY KEY,
username VARCHAR ( 50 ) NOT NULL
);`;
const [{ user_id, username }] = await sql`insert into users (username) values ('bun') returning *`;
const [{ user_id, username }] = await sql`insert into usernames (username) values ('bun') returning *`;
expect(username).toBe("bun");
const [{ user_id: user_id2, username: username2 }] = await sql`select * from users where user_id = ${user_id}`;
const [{ user_id: user_id2, username: username2 }] =
await sql`select * from usernames where user_id = ${user_id}`;
expect(username2).toBe("bun");
expect(user_id2).toBe(user_id);
const [{ username: username3 }] = await sql`delete from users where user_id = ${user_id} returning *`;
const [{ username: username3 }] = await sql`delete from usernames where user_id = ${user_id} returning *`;
expect(username3).toBe("bun");
} finally {
sql.end();

View File

@@ -4,13 +4,13 @@
"type": "module",
"devDependencies": {
"bun-types": "0.6.12",
"prisma": "4.15.0"
"prisma": "5.0.0"
},
"peerDependencies": {
"typescript": "5.0.0"
},
"dependencies": {
"@prisma/client": "4.15.0"
"@prisma/client": "5.0.0"
},
"scripts": {
"postinstall": "prisma generate --schema=./prisma/schema.prisma"

View File

@@ -10,7 +10,7 @@ function* TestIDGenerator() {
}
const test_id = TestIDGenerator();
["sqlite", "postgres" /*"mongodb"*/].forEach(async type => {
["sqlite", "postgres" /*"mssql", "mongodb"*/].forEach(async type => {
let Client: typeof PrismaClient;
try {

View File

@@ -8,7 +8,7 @@ generator client {
datasource db {
provider = "mongodb"
url = env("PRISMA_MONGODB_DATABASE_URL")
url = env("TLS_MONGODB_DATABASE_URL")
}
model User {

View File

@@ -0,0 +1,30 @@
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
generator client {
provider = "prisma-client-js"
output = "client"
}
datasource db {
provider = "sqlserver"
url = env("TLS_MSSQL_DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
testId Int
email String
name String?
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
testId Int
title String
content String?
published Boolean @default(false)
author User @relation(fields: [authorId], references: [id])
authorId Int
}

View File

@@ -8,7 +8,7 @@ generator client {
datasource db {
provider = "postgres"
url = env("PRISMA_POSTGRES_DATABASE_URL")
url = env("TLS_POSTGRES_DATABASE_URL")
}
model User {

View File

@@ -4,7 +4,7 @@
"@types/dedent": "0.7.0"
},
"dependencies": {
"@prisma/client": "4.15.0",
"@prisma/client": "5.0.0",
"@swc/core": "1.3.38",
"@types/react": "18.0.28",
"@types/react-dom": "18.0.11",
@@ -21,7 +21,7 @@
"pg": "8.11.1",
"pg-connection-string": "2.6.1",
"postgres": "3.3.5",
"prisma": "4.15.0",
"prisma": "5.0.0",
"socket.io": "4.7.1",
"socket.io-client": "4.7.1",
"supertest": "6.3.3",