From 120aa3420c5d3fc7d94a10daab8f4f7747714c40 Mon Sep 17 00:00:00 2001 From: chenos Date: Mon, 21 Apr 2025 18:52:26 +0800 Subject: [PATCH] chore(deps): upgrade dependencies (#6708) * chore: upgrade jsonwebtoken to version 9.0.2 * chore: update * fix: deps * fix: semver * chore: dicer * chore: upgrade multer * fix: dicer * fix: remove sqlite * chore: check db dialect * chore: remove sqlite3 * fix: yarn add sqlite3 --no-save -W * fix: test * fix: test * fix: ci * fix: test * fix: deps --- .github/workflows/nocobase-test-backend.yml | 4 ++- .github/workflows/nocobase-test-windows.yml | 4 ++- docker/nocobase/Dockerfile | 6 +++- packages/core/auth/package.json | 4 +-- packages/core/cli/src/commands/dev.js | 3 +- packages/core/cli/src/commands/e2e.js | 3 +- packages/core/cli/src/commands/global.js | 3 +- packages/core/cli/src/commands/start.js | 3 +- .../core/cli/src/commands/test-coverage.js | 4 ++- packages/core/cli/src/commands/test.js | 3 +- packages/core/cli/src/commands/upgrade.js | 3 +- packages/core/cli/src/util.js | 8 ++++- packages/core/create-nocobase-app/src/cli.js | 2 +- .../core/create-nocobase-app/src/generator.js | 31 ++++--------------- .../templates/app/package.json.tpl | 5 +-- .../core/data-source-manager/package.json | 4 +-- packages/core/resourcer/package.json | 2 +- packages/core/resourcer/src/resourcer.ts | 2 +- packages/core/resourcer/src/utils.ts | 20 ++++++++---- packages/core/server/package.json | 8 ++--- .../core/server/src/plugin-manager/deps.ts | 4 +-- packages/core/test/package.json | 1 - .../core/test/src/scripts/test-db-creator.ts | 10 +++--- packages/core/utils/package.json | 2 +- .../plugins/@nocobase/plugin-acl/package.json | 4 +-- .../plugin-action-import/package.json | 2 +- .../plugin-file-manager/package.json | 6 ++-- .../@nocobase/plugin-users/package.json | 4 +-- 28 files changed, 83 insertions(+), 72 deletions(-) diff --git a/.github/workflows/nocobase-test-backend.yml b/.github/workflows/nocobase-test-backend.yml index ebeea8c41f..c925ff3fb9 100644 --- a/.github/workflows/nocobase-test-backend.yml +++ b/.github/workflows/nocobase-test-backend.yml @@ -61,7 +61,9 @@ jobs: node-version: ${{ matrix.node_version }} cache: 'yarn' - name: Install project dependencies - run: yarn install + run: | + yarn install + yarn add sqlite3 --no-save -W - name: Test with Sqlite run: yarn test --server --single-thread=false env: diff --git a/.github/workflows/nocobase-test-windows.yml b/.github/workflows/nocobase-test-windows.yml index c1d378a6ba..cd20394a83 100644 --- a/.github/workflows/nocobase-test-windows.yml +++ b/.github/workflows/nocobase-test-windows.yml @@ -63,7 +63,9 @@ jobs: ${{ runner.os }}-yarn- - name: Install project dependencies - run: yarn --prefer-offline + run: | + yarn --prefer-offline + yarn add sqlite3 --no-save -W - name: Test with Sqlite run: yarn test --server --single-thread=false diff --git a/docker/nocobase/Dockerfile b/docker/nocobase/Dockerfile index 3fb6bafc89..9c0a1bbfff 100644 --- a/docker/nocobase/Dockerfile +++ b/docker/nocobase/Dockerfile @@ -8,7 +8,11 @@ RUN cd /app \ && yarn config set network-timeout 600000 -g \ && npx -y create-nocobase-app@${CNA_VERSION} my-nocobase-app --skip-dev-dependencies -a -e APP_ENV=production \ && cd /app/my-nocobase-app \ - && yarn install --production + && yarn install --production \ + && rm -rf yarn.lock \ + && find node_modules -type f -name "yarn.lock" -delete \ + && find node_modules -type f -name "bower.json" -delete \ + && find node_modules -type f -name "composer.json" -delete RUN cd /app \ && rm -rf nocobase.tar.gz \ diff --git a/packages/core/auth/package.json b/packages/core/auth/package.json index 6cc5856688..ad319f0bbc 100644 --- a/packages/core/auth/package.json +++ b/packages/core/auth/package.json @@ -11,8 +11,8 @@ "@nocobase/database": "1.6.21", "@nocobase/resourcer": "1.6.21", "@nocobase/utils": "1.6.21", - "@types/jsonwebtoken": "^8.5.8", - "jsonwebtoken": "^8.5.1" + "@types/jsonwebtoken": "^9.0.9", + "jsonwebtoken": "^9.0.2" }, "repository": { "type": "git", diff --git a/packages/core/cli/src/commands/dev.js b/packages/core/cli/src/commands/dev.js index c12c5df2d5..9caa52b0ff 100644 --- a/packages/core/cli/src/commands/dev.js +++ b/packages/core/cli/src/commands/dev.js @@ -8,7 +8,7 @@ */ const _ = require('lodash'); const { Command } = require('commander'); -const { generatePlugins, run, postCheck, nodeCheck, promptForTs, isPortReachable } = require('../util'); +const { generatePlugins, run, postCheck, nodeCheck, promptForTs, isPortReachable, checkDBDialect } = require('../util'); const { getPortPromise } = require('portfinder'); const chokidar = require('chokidar'); const { uid } = require('@formily/shared'); @@ -36,6 +36,7 @@ module.exports = (cli) => { .option('-i, --inspect [port]') .allowUnknownOption() .action(async (opts) => { + checkDBDialect(); let subprocess; const runDevClient = () => { console.log('starting client', 1 * clientPort); diff --git a/packages/core/cli/src/commands/e2e.js b/packages/core/cli/src/commands/e2e.js index 8daa5e6389..cf3bf6172a 100644 --- a/packages/core/cli/src/commands/e2e.js +++ b/packages/core/cli/src/commands/e2e.js @@ -8,7 +8,7 @@ */ const { Command } = require('commander'); -const { run, isPortReachable } = require('../util'); +const { run, isPortReachable, checkDBDialect } = require('../util'); const { execSync } = require('node:child_process'); const axios = require('axios'); const { pTest } = require('./p-test'); @@ -165,6 +165,7 @@ const filterArgv = () => { */ module.exports = (cli) => { const e2e = cli.command('e2e').hook('preAction', () => { + checkDBDialect(); if (process.env.APP_BASE_URL) { process.env.APP_BASE_URL = process.env.APP_BASE_URL.replace('localhost', '127.0.0.1'); console.log('APP_BASE_URL:', process.env.APP_BASE_URL); diff --git a/packages/core/cli/src/commands/global.js b/packages/core/cli/src/commands/global.js index 524ad3cd09..48bab4fb23 100644 --- a/packages/core/cli/src/commands/global.js +++ b/packages/core/cli/src/commands/global.js @@ -8,7 +8,7 @@ */ const { Command } = require('commander'); -const { run, isDev, isProd, promptForTs, downloadPro } = require('../util'); +const { run, isDev, isProd, promptForTs, downloadPro, checkDBDialect } = require('../util'); /** * @@ -21,6 +21,7 @@ module.exports = (cli) => { .option('-h, --help') .option('--ts-node-dev') .action(async (options) => { + checkDBDialect(); const cmd = process.argv.slice(2)?.[0]; if (cmd === 'install') { await downloadPro(); diff --git a/packages/core/cli/src/commands/start.js b/packages/core/cli/src/commands/start.js index 968e8654b2..3200b0ffba 100644 --- a/packages/core/cli/src/commands/start.js +++ b/packages/core/cli/src/commands/start.js @@ -8,7 +8,7 @@ */ const _ = require('lodash'); const { Command } = require('commander'); -const { run, postCheck, downloadPro, promptForTs } = require('../util'); +const { run, postCheck, downloadPro, promptForTs, checkDBDialect } = require('../util'); const { existsSync, rmSync } = require('fs'); const { resolve, isAbsolute } = require('path'); const chalk = require('chalk'); @@ -50,6 +50,7 @@ module.exports = (cli) => { .option('--quickstart') .allowUnknownOption() .action(async (opts) => { + checkDBDialect(); if (opts.quickstart) { await downloadPro(); } diff --git a/packages/core/cli/src/commands/test-coverage.js b/packages/core/cli/src/commands/test-coverage.js index ee6d50695d..8a26113203 100644 --- a/packages/core/cli/src/commands/test-coverage.js +++ b/packages/core/cli/src/commands/test-coverage.js @@ -7,7 +7,7 @@ * For more information, please refer to: https://www.nocobase.com/agreement. */ -const { run } = require('../util'); +const { run, checkDBDialect } = require('../util'); const fg = require('fast-glob'); const coreClientPackages = ['packages/core/client', 'packages/core/sdk']; @@ -30,6 +30,7 @@ const getPackagesDir = (isClient) => { module.exports = (cli) => { cli.command('test-coverage:server').action(async () => { + checkDBDialect(); const packageRoots = getPackagesDir(false); for (const dir of packageRoots) { try { @@ -41,6 +42,7 @@ module.exports = (cli) => { }); cli.command('test-coverage:client').action(async () => { + checkDBDialect(); const packageRoots = getPackagesDir(true); for (const dir of packageRoots) { try { diff --git a/packages/core/cli/src/commands/test.js b/packages/core/cli/src/commands/test.js index d97a5f1026..0ec62ac4e8 100644 --- a/packages/core/cli/src/commands/test.js +++ b/packages/core/cli/src/commands/test.js @@ -8,7 +8,7 @@ */ const { Command } = require('commander'); -const { run } = require('../util'); +const { run, checkDBDialect } = require('../util'); const path = require('path'); /** @@ -29,6 +29,7 @@ function addTestCommand(name, cli) { .arguments('[paths...]') .allowUnknownOption() .action(async (paths, opts) => { + checkDBDialect(); if (name === 'test:server') { process.env.TEST_ENV = 'server-side'; } else if (name === 'test:client') { diff --git a/packages/core/cli/src/commands/upgrade.js b/packages/core/cli/src/commands/upgrade.js index 4774564e41..3182fd0fc2 100644 --- a/packages/core/cli/src/commands/upgrade.js +++ b/packages/core/cli/src/commands/upgrade.js @@ -10,7 +10,7 @@ const chalk = require('chalk'); const { Command } = require('commander'); const { resolve } = require('path'); -const { run, promptForTs, runAppCommand, hasCorePackages, downloadPro, hasTsNode } = require('../util'); +const { run, promptForTs, runAppCommand, hasCorePackages, downloadPro, hasTsNode, checkDBDialect } = require('../util'); const { existsSync, rmSync } = require('fs'); /** @@ -26,6 +26,7 @@ module.exports = (cli) => { .option('--next') .option('-S|--skip-code-update') .action(async (options) => { + checkDBDialect(); if (hasTsNode()) promptForTs(); if (hasCorePackages()) { // await run('yarn', ['install']); diff --git a/packages/core/cli/src/util.js b/packages/core/cli/src/util.js index 1c760cd4ba..855acd317b 100644 --- a/packages/core/cli/src/util.js +++ b/packages/core/cli/src/util.js @@ -360,7 +360,7 @@ exports.initEnv = function initEnv() { API_BASE_PATH: '/api/', API_CLIENT_STORAGE_PREFIX: 'NOCOBASE_', API_CLIENT_STORAGE_TYPE: 'localStorage', - DB_DIALECT: 'sqlite', + // DB_DIALECT: 'sqlite', DB_STORAGE: 'storage/db/nocobase.sqlite', // DB_TIMEZONE: '+00:00', DB_UNDERSCORED: parseEnv('DB_UNDERSCORED'), @@ -472,6 +472,12 @@ exports.initEnv = function initEnv() { } }; +exports.checkDBDialect = function () { + if (!process.env.DB_DIALECT) { + throw new Error('DB_DIALECT is required.'); + } +}; + exports.generatePlugins = function () { try { require.resolve('@nocobase/devtools/umiConfig'); diff --git a/packages/core/create-nocobase-app/src/cli.js b/packages/core/create-nocobase-app/src/cli.js index 0fd40eb008..1abad655b0 100644 --- a/packages/core/create-nocobase-app/src/cli.js +++ b/packages/core/create-nocobase-app/src/cli.js @@ -21,7 +21,7 @@ cli .option('--quickstart', 'quickstart app creation') .option('--skip-dev-dependencies') .option('-a, --all-db-dialect', 'install all database dialect dependencies') - .option('-d, --db-dialect ', 'database dialect, current support sqlite/mysql/postgres', 'sqlite') + .option('-d, --db-dialect ', 'database dialect, current support mysql/postgres', 'postgres') .option('-e, --env ', 'environment variables write into .env file', concat, []) .description('create a new application') .action(async (name, options) => { diff --git a/packages/core/create-nocobase-app/src/generator.js b/packages/core/create-nocobase-app/src/generator.js index fc7ef0179d..1e62f8beac 100644 --- a/packages/core/create-nocobase-app/src/generator.js +++ b/packages/core/create-nocobase-app/src/generator.js @@ -61,7 +61,7 @@ class AppGenerator extends Generator { checkDialect() { const dialect = this.args.dbDialect; - const supportDialects = ['mysql', 'mariadb', 'sqlite', 'postgres']; + const supportDialects = ['mysql', 'mariadb', 'postgres']; if (!supportDialects.includes(dialect)) { console.log( `dialect ${chalk.red(dialect)} is not supported, currently supported dialects are ${chalk.green( @@ -76,27 +76,15 @@ class AppGenerator extends Generator { const env = this.env; const envs = []; const dependencies = []; - const { dbDialect, allDbDialect } = this.args; + const { dbDialect } = this.args; - if (allDbDialect) { - dependencies.push(`"mysql2": "^3.11.0"`); - dependencies.push(`"mariadb": "^2.5.6"`); - dependencies.push(`"pg": "^8.7.3"`); - dependencies.push(`"pg-hstore": "^2.3.4"`); - dependencies.push(`"sqlite3": "^5.0.8"`); - } + dependencies.push(`"mysql2": "^3.14.0"`); + dependencies.push(`"mariadb": "^3.4.1"`); + dependencies.push(`"pg": "^8.14.1"`); + dependencies.push(`"pg-hstore": "^2.3.4"`); switch (dbDialect) { - case 'sqlite': - if (!allDbDialect) { - dependencies.push(`"sqlite3": "^5.0.8"`); - } - envs.push(`DB_STORAGE=${env.DB_STORAGE || 'storage/db/nocobase.sqlite'}`); - break; case 'mysql': - if (!allDbDialect) { - dependencies.push(`"mysql2": "^3.11.0"`); - } envs.push(`DB_HOST=${env.DB_HOST || 'localhost'}`); envs.push(`DB_PORT=${env.DB_PORT || 3306}`); envs.push(`DB_DATABASE=${env.DB_DATABASE || ''}`); @@ -104,9 +92,6 @@ class AppGenerator extends Generator { envs.push(`DB_PASSWORD=${env.DB_PASSWORD || ''}`); break; case 'mariadb': - if (!allDbDialect) { - dependencies.push(`"mariadb": "^2.5.6"`); - } envs.push(`DB_HOST=${env.DB_HOST || 'localhost'}`); envs.push(`DB_PORT=${env.DB_PORT || 3306}`); envs.push(`DB_DATABASE=${env.DB_DATABASE || ''}`); @@ -115,10 +100,6 @@ class AppGenerator extends Generator { break; case 'kingbase': case 'postgres': - if (!allDbDialect) { - dependencies.push(`"pg": "^8.7.3"`); - dependencies.push(`"pg-hstore": "^2.3.4"`); - } envs.push(`DB_HOST=${env.DB_HOST || 'localhost'}`); envs.push(`DB_PORT=${env.DB_PORT || 5432}`); envs.push(`DB_DATABASE=${env.DB_DATABASE || ''}`); diff --git a/packages/core/create-nocobase-app/templates/app/package.json.tpl b/packages/core/create-nocobase-app/templates/app/package.json.tpl index 27bd36a66d..1cf18a9ab3 100644 --- a/packages/core/create-nocobase-app/templates/app/package.json.tpl +++ b/packages/core/create-nocobase-app/templates/app/package.json.tpl @@ -28,9 +28,10 @@ "@types/react-dom": "^18.0.0", "react-router-dom": "6.28.1", "react-router": "6.28.1", - "async": "3.2.6", + "async": "^3.2.6", "antd": "5.12.8", - "rollup": "4.24.0" + "rollup": "4.24.0", + "semver": "^7.7.1" }, "dependencies": { "@nocobase/cli": "{{{version}}}", diff --git a/packages/core/data-source-manager/package.json b/packages/core/data-source-manager/package.json index 2d0f614d9b..6bc30eb060 100644 --- a/packages/core/data-source-manager/package.json +++ b/packages/core/data-source-manager/package.json @@ -11,8 +11,8 @@ "@nocobase/database": "1.6.21", "@nocobase/resourcer": "1.6.21", "@nocobase/utils": "1.6.21", - "@types/jsonwebtoken": "^8.5.8", - "jsonwebtoken": "^8.5.1" + "@types/jsonwebtoken": "^9.0.9", + "jsonwebtoken": "^9.0.2" }, "repository": { "type": "git", diff --git a/packages/core/resourcer/package.json b/packages/core/resourcer/package.json index 96164b488e..58c524b4cd 100644 --- a/packages/core/resourcer/package.json +++ b/packages/core/resourcer/package.json @@ -10,7 +10,7 @@ "deepmerge": "^4.2.2", "koa-compose": "^4.1.0", "lodash": "^4.17.21", - "path-to-regexp": "6.2.2", + "path-to-regexp": "^6.3.0", "qs": "^6.9.4" }, "repository": { diff --git a/packages/core/resourcer/src/resourcer.ts b/packages/core/resourcer/src/resourcer.ts index 6d750e4d20..53ed79a53c 100644 --- a/packages/core/resourcer/src/resourcer.ts +++ b/packages/core/resourcer/src/resourcer.ts @@ -367,7 +367,7 @@ export class ResourceManager { : params.resourceName; ctx.action.params.filterByTk = params.resourceIndex; const query = parseQuery(ctx.request.querystring); - if (pathToRegexp('/resourcer/{:associatedName.}?:resourceName{\\::actionName}').test(ctx.request.path)) { + if (pathToRegexp('/resourcer/:rest(.*)').test(ctx.request.path)) { ctx.action.mergeParams({ ...query, ...params, diff --git a/packages/core/resourcer/src/utils.ts b/packages/core/resourcer/src/utils.ts index 3ef70517e6..b8b9780e4d 100644 --- a/packages/core/resourcer/src/utils.ts +++ b/packages/core/resourcer/src/utils.ts @@ -67,17 +67,25 @@ export function parseRequest(request: ParseRequest, options: ParseOptions = {}): ...(options.accessors || {}), }; const keys = []; - const regexp = pathToRegexp('/resourcer/{:associatedName.}?:resourceName{\\::actionName}', keys); + + const regexp = pathToRegexp('/resourcer/:rest(.*)', keys); const reqPath = decodeURI(request.path); const matches = regexp.exec(reqPath); if (matches) { const params = {}; - keys.forEach((obj, index) => { - if (matches[index + 1] === undefined) { - return; + const [resource, action] = matches[1].split(':'); + const [res1, res2] = resource.split('.'); + if (res1) { + if (res2) { + params['associatedName'] = res1; + params['resourceName'] = res2; + } else { + params['resourceName'] = res1; } - params[obj.name] = matches[index + 1]; - }); + } + if (action) { + params['actionName'] = action; + } return params; } const defaults = { diff --git a/packages/core/server/package.json b/packages/core/server/package.json index 887cc7da21..9b84969117 100644 --- a/packages/core/server/package.json +++ b/packages/core/server/package.json @@ -8,8 +8,8 @@ "@formily/json-schema": "2.x", "@hapi/topo": "^6.0.0", "@koa/cors": "^5.0.0", - "@koa/multer": "^3.0.2", - "@koa/router": "^9.4.0", + "@koa/multer": "^3.1.0", + "@koa/router": "^13.1.0", "@nocobase/acl": "1.6.21", "@nocobase/actions": "1.6.21", "@nocobase/auth": "1.6.21", @@ -26,7 +26,7 @@ "@types/decompress": "4.2.7", "@types/ini": "^1.3.31", "@types/koa-send": "^4.1.3", - "@types/multer": "^1.4.5", + "@types/multer": "^1.4.12", "async-mutex": "^0.5.0", "axios": "^1.7.0", "chalk": "^4.1.1", @@ -45,7 +45,7 @@ "koa-send": "^5.0.1", "koa-static": "^5.0.0", "lodash": "^4.17.21", - "multer": "^1.4.2", + "multer": "^1.4.5-lts.2", "nanoid": "^3.3.11", "semver": "^7.7.1", "serve-handler": "^6.1.6", diff --git a/packages/core/server/src/plugin-manager/deps.ts b/packages/core/server/src/plugin-manager/deps.ts index ba3365bb1b..f6565d65d6 100644 --- a/packages/core/server/src/plugin-manager/deps.ts +++ b/packages/core/server/src/plugin-manager/deps.ts @@ -15,7 +15,7 @@ const deps: Record = { '@formily': '2.x', '@formily/antd-v5': '1.x', - jsonwebtoken: '8.x', + jsonwebtoken: '9.x', 'cache-manager': '5.x', sequelize: '6.x', umzug: '3.x', @@ -26,7 +26,7 @@ const deps: Record = { 'winston-daily-rotate-file': '4.x', koa: '2.x', '@koa/cors': '5.x', - '@koa/router': '9.x', + '@koa/router': '13.x', multer: '1.x', '@koa/multer': '3.x', 'koa-bodyparser': '4.x', diff --git a/packages/core/test/package.json b/packages/core/test/package.json index 19fbaa3f95..a252decfbb 100644 --- a/packages/core/test/package.json +++ b/packages/core/test/package.json @@ -69,7 +69,6 @@ "mysql2": "^3.11.0", "pg": "^8.7.3", "pg-hstore": "^2.3.4", - "sqlite3": "^5.0.8", "supertest": "^6.1.6", "vite": "^5.0.0", "vitest": "^1.5.0", diff --git a/packages/core/test/src/scripts/test-db-creator.ts b/packages/core/test/src/scripts/test-db-creator.ts index e496ec1857..2d9bcb0998 100644 --- a/packages/core/test/src/scripts/test-db-creator.ts +++ b/packages/core/test/src/scripts/test-db-creator.ts @@ -7,13 +7,13 @@ * For more information, please refer to: https://www.nocobase.com/agreement. */ -import http from 'http'; -import url from 'url'; -import pg from 'pg'; import dotenv from 'dotenv'; -import path from 'path'; -import mysql from 'mysql2/promise'; +import http from 'http'; import mariadb from 'mariadb'; +import mysql from 'mysql2/promise'; +import path from 'path'; +import pg from 'pg'; +import url from 'url'; dotenv.config({ path: path.resolve(process.cwd(), '.env.test') }); diff --git a/packages/core/utils/package.json b/packages/core/utils/package.json index f3006f7866..8b6cc3884e 100644 --- a/packages/core/utils/package.json +++ b/packages/core/utils/package.json @@ -13,7 +13,7 @@ "flat-to-nested": "^1.1.1", "graphlib": "^2.1.8", "handlebars": "^4.7.8", - "multer": "^1.4.5-lts.1", + "multer": "^1.4.5-lts.2", "object-path": "^0.11.8" }, "gitHead": "d0b4efe4be55f8c79a98a331d99d9f8cf99021a1" diff --git a/packages/plugins/@nocobase/plugin-acl/package.json b/packages/plugins/@nocobase/plugin-acl/package.json index 42a33b1884..4a7d6c7fcb 100644 --- a/packages/plugins/@nocobase/plugin-acl/package.json +++ b/packages/plugins/@nocobase/plugin-acl/package.json @@ -13,8 +13,8 @@ "Users & permissions" ], "devDependencies": { - "@types/jsonwebtoken": "^8.5.8", - "jsonwebtoken": "^8.5.1", + "@types/jsonwebtoken": "^9.0.9", + "jsonwebtoken": "^9.0.2", "react": "^18.2.0", "react-dom": "^18.2.0" }, diff --git a/packages/plugins/@nocobase/plugin-action-import/package.json b/packages/plugins/@nocobase/plugin-action-import/package.json index 30d76ecd69..3cc5379889 100644 --- a/packages/plugins/@nocobase/plugin-action-import/package.json +++ b/packages/plugins/@nocobase/plugin-action-import/package.json @@ -15,7 +15,7 @@ "@formily/core": "2.x", "@formily/react": "2.x", "@formily/shared": "2.x", - "@koa/multer": "^3.0.2", + "@koa/multer": "^3.1.0", "@types/node-xlsx": "^0.15.1", "antd": "5.x", "async-mutex": "^0.5.0", diff --git a/packages/plugins/@nocobase/plugin-file-manager/package.json b/packages/plugins/@nocobase/plugin-file-manager/package.json index 3c84944be0..89934bca05 100644 --- a/packages/plugins/@nocobase/plugin-file-manager/package.json +++ b/packages/plugins/@nocobase/plugin-file-manager/package.json @@ -15,15 +15,15 @@ "@formily/core": "2.x", "@formily/react": "2.x", "@formily/shared": "2.x", - "@koa/multer": "^3.0.0", - "@types/koa-multer": "^1.0.1", + "@koa/multer": "^3.1.0", + "@types/koa-multer": "^1.0.4", "@types/multer": "^1.4.5", "antd": "5.x", "cos-nodejs-sdk-v5": "^2.11.14", "koa-static": "^5.0.0", "mime-match": "^1.0.2", "mkdirp": "~0.5.4", - "multer": "^1.4.2", + "multer": "^1.4.5-lts.2", "multer-aliyun-oss": "2.1.3", "multer-cos": "^1.0.3", "multer-s3": "^3.0.1", diff --git a/packages/plugins/@nocobase/plugin-users/package.json b/packages/plugins/@nocobase/plugin-users/package.json index 6d2da76042..78781b4591 100644 --- a/packages/plugins/@nocobase/plugin-users/package.json +++ b/packages/plugins/@nocobase/plugin-users/package.json @@ -10,8 +10,8 @@ "homepage": "https://docs.nocobase.com/handbook/users", "homepage.zh-CN": "https://docs-cn.nocobase.com/handbook/users", "devDependencies": { - "@types/jsonwebtoken": "^8.5.8", - "jsonwebtoken": "^8.5.1" + "@types/jsonwebtoken": "^9.0.9", + "jsonwebtoken": "^9.0.2" }, "peerDependencies": { "@nocobase/actions": "1.x",