diff --git a/package.json b/package.json index 0559db853a..f4c90c9513 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ }, "dependencies": { "@fontsource/inter": "4.5.7", - "@prisma/client": "3.14.0", + "@prisma/client": "3.15.2", "bcryptjs": "^2.4.3", "chalk": "^4.1.1", "chart.js": "^2.9.4", @@ -117,7 +117,7 @@ "postcss-preset-env": "7.4.3", "postcss-rtlcss": "^3.6.1", "prettier": "^2.6.2", - "prisma": "3.14.0", + "prisma": "3.15.2", "prompts": "2.4.2", "rollup": "^2.70.1", "rollup-plugin-terser": "^7.0.2", diff --git a/scripts/check-db.js b/scripts/check-db.js index 2e27a8380d..b9582dbd75 100644 --- a/scripts/check-db.js +++ b/scripts/check-db.js @@ -5,6 +5,11 @@ const chalk = require('chalk'); const spawn = require('cross-spawn'); let message = ''; +const updateMessage = `To update your database, you need to run:\n${chalk.bold.whiteBright( + 'yarn update-db', +)}`; +const baselineMessage = cmd => + `You need to update your database by running:\n${chalk.bold.whiteBright(cmd)}`; function success(msg) { console.log(chalk.greenBright(`✓ ${msg}`)); @@ -34,9 +39,8 @@ async function checkTables() { success('Database tables found.'); } catch (e) { - message = `To update your database, you need to run:\n${chalk.bold.whiteBright( - 'yarn update-db', - )}`; + message = updateMessage; + throw new Error('Database tables not found.'); } } @@ -65,10 +69,12 @@ async function checkMigrations() { if (notManaged) { const cmd = output.match(/yarn prisma migrate resolve --applied ".*"/g); - message = `You need to update your database by running:\n${chalk.bold.whiteBright(cmd[0])}`; + message = baselineMessage(cmd[0]); + throw new Error('Database is out of date.'); } else if (missingMigrations) { - message = output; + message = updateMessage; + throw new Error('Database is out of date.'); } diff --git a/yarn.lock b/yarn.lock index 6478c811bd..65b1e2d33c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1359,22 +1359,22 @@ resolved "https://registry.yarnpkg.com/@panva/asn1.js/-/asn1.js-1.0.0.tgz#dd55ae7b8129e02049f009408b97c61ccf9032f6" integrity sha512-UdkG3mLEqXgnlKsWanWcgb6dOjUzJ+XC5f+aWw30qrtjxeNUSfKX1cd5FBzOaXQumoe9nIqeZUvrRJS03HCCtw== -"@prisma/client@3.14.0": - version "3.14.0" - resolved "https://registry.yarnpkg.com/@prisma/client/-/client-3.14.0.tgz#bb90405c012fcca11f4647d91153ed4c58f3bd48" - integrity sha512-atb41UpgTR1MCst0VIbiHTMw8lmXnwUvE1KyUCAkq08+wJyjRE78Due+nSf+7uwqQn+fBFYVmoojtinhlLOSaA== +"@prisma/client@3.15.2": + version "3.15.2" + resolved "https://registry.yarnpkg.com/@prisma/client/-/client-3.15.2.tgz#2181398147afc79bfe0d83c03a88dc45b49bd365" + integrity sha512-ErqtwhX12ubPhU4d++30uFY/rPcyvjk+mdifaZO5SeM21zS3t4jQrscy8+6IyB0GIYshl5ldTq6JSBo1d63i8w== dependencies: - "@prisma/engines-version" "3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a" + "@prisma/engines-version" "3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e" -"@prisma/engines-version@3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a": - version "3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a" - resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a.tgz#4edae57cf6527f35e22cebe75e49214fc0e99ac9" - integrity sha512-D+yHzq4a2r2Rrd0ZOW/mTZbgDIkUkD8ofKgusEI1xPiZz60Daks+UM7Me2ty5FzH3p/TgyhBpRrfIHx+ha20RQ== +"@prisma/engines-version@3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e": + version "3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e" + resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e.tgz#bf5e2373ca68ce7556b967cb4965a7095e93fe53" + integrity sha512-e3k2Vd606efd1ZYy2NQKkT4C/pn31nehyLhVug6To/q8JT8FpiMrDy7zmm3KLF0L98NOQQcutaVtAPhzKhzn9w== -"@prisma/engines@3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a": - version "3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a" - resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a.tgz#7fa11bc26a51d450185c816cc0ab8cac673fb4bf" - integrity sha512-LwZvI3FY6f43xFjQNRuE10JM5R8vJzFTSmbV9X0Wuhv9kscLkjRlZt0BEoiHmO+2HA3B3xxbMfB5du7ZoSFXGg== +"@prisma/engines@3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e": + version "3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e" + resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e.tgz#f691893df506b93e3cb1ccc15ec6e5ac64e8e570" + integrity sha512-NHlojO1DFTsSi3FtEleL9QWXeSF/UjhCW0fgpi7bumnNZ4wj/eQ+BJJ5n2pgoOliTOGv9nX2qXvmHap7rJMNmg== "@react-spring/animated@~9.4.5": version "9.4.5" @@ -5062,12 +5062,12 @@ prettier@^2.6.2: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.6.2.tgz#e26d71a18a74c3d0f0597f55f01fb6c06c206032" integrity sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew== -prisma@3.14.0: - version "3.14.0" - resolved "https://registry.yarnpkg.com/prisma/-/prisma-3.14.0.tgz#dd67ece37d7b5373e9fd9588971de0024b49be81" - integrity sha512-l9MOgNCn/paDE+i1K2fp9NZ+Du4trzPTJsGkaQHVBufTGqzoYHuNk8JfzXuIn0Gte6/ZjyKj652Jq/Lc1tp2yw== +prisma@3.15.2: + version "3.15.2" + resolved "https://registry.yarnpkg.com/prisma/-/prisma-3.15.2.tgz#4ebe32fb284da3ac60c49fbc16c75e56ecf32067" + integrity sha512-nMNSMZvtwrvoEQ/mui8L/aiCLZRCj5t6L3yujKpcDhIPk7garp8tL4nMx2+oYsN0FWBacevJhazfXAbV1kfBzA== dependencies: - "@prisma/engines" "3.14.0-36.2b0c12756921c891fec4f68d9444e18c7d5d4a6a" + "@prisma/engines" "3.15.1-1.461d6a05159055555eb7dfb337c9fb271cbd4d7e" progress@^2.0.0: version "2.0.3"