diff --git a/.github/uffizzi/docker-compose.uffizzi.yml b/.github/uffizzi/docker-compose.uffizzi.yml index 240acf8cc9..ac8e774c08 100644 --- a/.github/uffizzi/docker-compose.uffizzi.yml +++ b/.github/uffizzi/docker-compose.uffizzi.yml @@ -17,7 +17,7 @@ services: limits: memory: 500M mssql: - image: "mcr.microsoft.com/mssql/server:2017-latest" + image: "mcr.microsoft.com/mssql/server:2022-latest" environment: ACCEPT_EULA: "Y" SA_PASSWORD: Password123. @@ -31,7 +31,7 @@ services: MYSQL_PASSWORD: password MYSQL_ROOT_PASSWORD: password MYSQL_USER: noco - image: "mysql:8.3.0" + image: "mysql:9.1.0" deploy: resources: limits: diff --git a/docker-compose/3_traefik/docker-compose.yml b/docker-compose/3_traefik/docker-compose.yml index 5d4115d615..72c1523de5 100644 --- a/docker-compose/3_traefik/docker-compose.yml +++ b/docker-compose/3_traefik/docker-compose.yml @@ -34,7 +34,7 @@ services: retries: 10 test: "pg_isready -U ${DATABASE_USER} -d ${DATABASE_NAME}" timeout: 2s - image: "postgres:12.17-alpine" + image: "postgres:17.1-alpine" networks: - traefik_proxy restart: always @@ -71,7 +71,7 @@ services: - "-c" - "http://localhost:8081/ping" timeout: 3s - image: "traefik:v2.11" + image: "traefik:v3.2" networks: - default - traefik_proxy diff --git a/docker-compose/nginx-proxy-manager/docker-compose.yml b/docker-compose/nginx-proxy-manager/docker-compose.yml index 1e7f0fcd6a..4a5d604cd8 100644 --- a/docker-compose/nginx-proxy-manager/docker-compose.yml +++ b/docker-compose/nginx-proxy-manager/docker-compose.yml @@ -46,7 +46,7 @@ services: - "-h" - localhost timeout: 20s - image: "mysql:8.3.0" + image: "mysql:9.1.0" networks: - default restart: always diff --git a/package.json b/package.json index e1c73b22dd..e2e6d3037f 100644 --- a/package.json +++ b/package.json @@ -16,8 +16,8 @@ }, "license": "AGPL-3.0-or-later", "devDependencies": { - "lerna": "^7.4.2", - "husky": "^8.0.3", + "lerna": "^8.1.9", + "husky": "^9.1.7", "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz" }, "husky": { diff --git a/packages/nc-gui/package.json b/packages/nc-gui/package.json index e949bac46a..78a685e258 100644 --- a/packages/nc-gui/package.json +++ b/packages/nc-gui/package.json @@ -17,7 +17,7 @@ "url": "https://github.com/nocodb/nocodb/issues" }, "engines": { - "node": ">=18.19.1" + "node": ">=22.11.0" }, "web-types": "web-types.json", "scripts": { @@ -42,7 +42,7 @@ "@nuxt/image": "^1.3.0", "@pinia/nuxt": "^0.5.1", "@sentry/tracing": "^7.72.0", - "@sentry/vue": "^7.72.0", + "@sentry/vue": "^8.39.0", "@tiptap/extension-link": "^2.4.0", "@tiptap/extension-mention": "^2.9.1", "@tiptap/extension-placeholder": "^2.4.0", @@ -56,10 +56,10 @@ "@vue-flow/core": "^1.30.1", "@vuelidate/core": "^2.0.3", "@vuelidate/validators": "^2.0.4", - "@vueuse/core": "^10.7.2", - "@vueuse/integrations": "^10.7.2", + "@vueuse/core": "^11.2.0", + "@vueuse/integrations": "^11.2.0", "@vueuse/motion": "^2.2.5", - "ant-design-vue": "^3.2.20", + "ant-design-vue": "^4.2.6", "chart.js": "^4.4.2", "crossoriginworker": "^1.1.0", "d3-scale": "^4.0.2", @@ -69,18 +69,18 @@ "embla-carousel-vue": "^8.1.7", "emoji-mart-vue-fast": "^15.0.2", "file-saver": "^2.0.5", - "fuse.js": "^6.6.2", + "fuse.js": "^7.0.0", "html-entities": "^2.5.2", - "httpsnippet": "^2.0.0", - "inflection": "^1.13.4", - "isomorphic-dompurify": "^1.13.0", + "httpsnippet": "^3.0.1", + "inflection": "^3.0.0", + "isomorphic-dompurify": "^2.16.0", "jsbarcode": "^3.11.6", "jsep": "^1.3.8", - "jwt-decode": "^3.1.2", + "jwt-decode": "^4.0.0", "leaflet": "^1.9.4", "leaflet.markercluster": "^1.5.3", "locale-codes": "^1.3.1", - "marked": "^4.3.0", + "marked": "^15.0.1", "monaco-editor": "^0.50.0", "monaco-sql-languages": "^0.11.0", "nocodb-sdk": "workspace:^", @@ -109,10 +109,10 @@ "vue-advanced-cropper": "^2.8.8", "vue-barcode-reader": "^1.0.3", "vue-chartjs": "^5.3.1", - "vue-dompurify-html": "^3.1.2", + "vue-dompurify-html": "^5.1.0", "vue-github-button": "^3.1.0", - "vue-i18n": "^9.9.1", - "vue-qrcode-reader": "3.1.9", + "vue-i18n": "^10.0.4", + "vue-qrcode-reader": "5.5.11", "vue3-calendar-heatmap": "^2.0.5", "vue3-contextmenu": "^0.2.12", "vue3-grid-layout-next": "^1.0.7", @@ -122,7 +122,7 @@ "youtube-vue3": "^0.1.15" }, "devDependencies": { - "@antfu/eslint-config": "^0.26.3", + "@antfu/eslint-config": "^3.9.2", "@esbuild-plugins/node-modules-polyfill": "^0.2.2", "@iconify-json/ant-design": "^1.1.16", "@iconify-json/bi": "^1.1.23", @@ -144,7 +144,7 @@ "@iconify-json/system-uicons": "^1.1.12", "@iconify-json/tabler": "^1.1.112", "@iconify-json/vscode-icons": "^1.1.34", - "@intlify/unplugin-vue-i18n": "^0.13.0", + "@intlify/unplugin-vue-i18n": "^6.0.0", "@nuxt/image": "^1.3.0", "@types/d3-scale": "^4.0.8", "@types/dagre": "^0.7.52", @@ -164,27 +164,27 @@ "@types/validator": "^13.11.10", "@types/vue-barcode-reader": "^0.0.3", "@unocss/nuxt": "^0.58.9", - "@vitest/ui": "^0.34.7", + "@vitest/ui": "^2.1.5", "@vue/compiler-sfc": "^3.4.27", "@vue/test-utils": "^2.4.6", - "@vueuse/nuxt": "^10.7.2", + "@vueuse/nuxt": "^11.2.0", "@windicss/plugin-animations": "^1.0.9", "@windicss/plugin-question-mark": "^0.1.1", "@windicss/plugin-scrollbar": "^1.2.3", - "eslint": "^8.56.0", - "eslint-config-prettier": "^8.10.0", - "eslint-plugin-prettier": "^4.2.1", + "eslint": "^9.15.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-prettier": "^5.2.1", "happy-dom": "^6.0.4", "nuxt": "^3.11.2", - "nuxt-windicss": "^2.6.1", - "prettier": "^2.8.8", + "nuxt-windicss": "^3.0.1", + "prettier": "^3.3.3", "sass": "^1.71.1", "ts-loader": "^9.5.1", "unplugin-icons": "^0.18.5", "unplugin-vue-components": "^0.26.0", "vite-plugin-monaco-editor": "^1.1.0", "vite-plugin-purge-icons": "^0.10.0", - "vitest": "^1.2.2", + "vitest": "^2.1.5", "windicss": "^3.5.6" } } diff --git a/packages/nc-secret-mgr/package.json b/packages/nc-secret-mgr/package.json index 9cf42e3d4b..bc32093fe9 100644 --- a/packages/nc-secret-mgr/package.json +++ b/packages/nc-secret-mgr/package.json @@ -30,7 +30,7 @@ "author": "", "license": "ISC", "dependencies": { - "chalk": "^4.1.0", + "chalk": "^5.3.0", "commander": "^12.1.0", "enquirer": "^2.4.1", "figlet": "^1.7.0", @@ -42,19 +42,19 @@ }, "devDependencies": { "@types/figlet": "^1.5.8", - "chai": "^4.4.1", + "chai": "^5.1.2", "class-transformer": "0.3.1", "class-validator": "^0.14.1", "cross-env": "^7.0.3", "mocha": "^10.3.0", "nodemon": "^3.0.3", "pkg": "^5.8.0", - "eslint-config-prettier": "^8.10.0", + "eslint-config-prettier": "^9.1.0", "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-functional": "^5.0.8", + "eslint-plugin-functional": "^7.1.0", "eslint-plugin-import": "^2.29.1", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.8.8", + "eslint-plugin-prettier": "^5.2.1", + "prettier": "^3.3.3", "@mapbox/node-pre-gyp": "^1.0.11" } } diff --git a/packages/noco-docs/package-lock.json b/packages/noco-docs/package-lock.json index 4078dab22e..5017c162d3 100644 --- a/packages/noco-docs/package-lock.json +++ b/packages/noco-docs/package-lock.json @@ -15,26 +15,26 @@ "@docusaurus/plugin-sitemap": "3.1.1", "@docusaurus/preset-classic": "3.1.1", "@mdx-js/react": "^3.0.1", - "clsx": "^1.2.1", + "clsx": "^2.1.1", "dayjs": "^1.11.11", "docusaurus-plugin-sass": "^0.2.5", "docusaurus-theme-search-typesense": "^0.16.0", "nc-analytics": "^0.0.9", "plugin-image-zoom": "github:flexanalytics/plugin-image-zoom", - "prism-react-renderer": "^1.3.5", + "prism-react-renderer": "^2.4.0", "react": "^18.2.0", "react-dom": "^18.2.0", "sass": "^1.71.1" }, "devDependencies": { "@docusaurus/module-type-aliases": "3.1.1", - "@tsconfig/docusaurus": "^1.0.7", + "@tsconfig/docusaurus": "^2.0.3", "remark-cli": "^12.0.1", "remark-validate-links": "^13.0.1", - "typescript": "^4.9.5" + "typescript": "^5.6.3" }, "engines": { - "node": ">=16.20.2" + "node": ">=22.11.0" } }, "node_modules/@algolia/autocomplete-core": { @@ -2695,26 +2695,6 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/theme-classic/node_modules/clsx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", - "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@docusaurus/theme-classic/node_modules/prism-react-renderer": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.3.1.tgz", - "integrity": "sha512-Rdf+HzBLR7KYjzpJ1rSoxT9ioO85nZngQEoFIhL07XhtJHlCU3SOz0GJ6+qvMyQe0Se+BV3qpe6Yd/NmQF5Juw==", - "dependencies": { - "@types/prismjs": "^1.26.0", - "clsx": "^2.0.0" - }, - "peerDependencies": { - "react": ">=16.0.0" - } - }, "node_modules/@docusaurus/theme-common": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.1.1.tgz", @@ -2744,26 +2724,6 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/theme-common/node_modules/clsx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", - "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/@docusaurus/theme-common/node_modules/prism-react-renderer": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.3.1.tgz", - "integrity": "sha512-Rdf+HzBLR7KYjzpJ1rSoxT9ioO85nZngQEoFIhL07XhtJHlCU3SOz0GJ6+qvMyQe0Se+BV3qpe6Yd/NmQF5Juw==", - "dependencies": { - "@types/prismjs": "^1.26.0", - "clsx": "^2.0.0" - }, - "peerDependencies": { - "react": ">=16.0.0" - } - }, "node_modules/@docusaurus/theme-search-algolia": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.1.1.tgz", @@ -2794,14 +2754,6 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/theme-search-algolia/node_modules/clsx": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", - "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", - "engines": { - "node": ">=6" - } - }, "node_modules/@docusaurus/theme-translations": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.1.1.tgz", @@ -3789,10 +3741,11 @@ } }, "node_modules/@tsconfig/docusaurus": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@tsconfig/docusaurus/-/docusaurus-1.0.7.tgz", - "integrity": "sha512-ffTXxGIP/IRMCjuzHd6M4/HdIrw1bMfC7Bv8hMkTadnePkpe0lG0oDSdbRpSDZb2rQMAgpbWiR10BvxvNYwYrg==", - "dev": true + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/docusaurus/-/docusaurus-2.0.3.tgz", + "integrity": "sha512-3l1L5PzWVa7l0691TjnsZ0yOIEwG9DziSqu5IPZPlI5Dowi7z42cEym8Y35GHbgHvPcBfNxfrbxm7Cncn4nByQ==", + "dev": true, + "license": "MIT" }, "node_modules/@types/acorn": { "version": "4.0.6", @@ -5338,9 +5291,10 @@ } }, "node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", "engines": { "node": ">=6" } @@ -6313,6 +6267,15 @@ "react-dom": "^18.0.0" } }, + "node_modules/docusaurus-theme-search-typesense/node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/docusaurus-theme-search-typesense/node_modules/fs-extra": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", @@ -12691,11 +12654,16 @@ } }, "node_modules/prism-react-renderer": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", - "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.4.0.tgz", + "integrity": "sha512-327BsVCD/unU4CNLZTWVHyUHKnsqcvj2qbPlQ8MiBE2eq2rgctjigPA1Gp9HLF83kZ20zNN6jgizHJeEsyFYOw==", + "license": "MIT", + "dependencies": { + "@types/prismjs": "^1.26.0", + "clsx": "^2.0.0" + }, "peerDependencies": { - "react": ">=0.14.9" + "react": ">=16.0.0" } }, "node_modules/prismjs": { @@ -15232,15 +15200,16 @@ } }, "node_modules/typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=4.2.0" + "node": ">=14.17" } }, "node_modules/typesense": { diff --git a/packages/noco-docs/package.json b/packages/noco-docs/package.json index 96022207fa..c772a50443 100644 --- a/packages/noco-docs/package.json +++ b/packages/noco-docs/package.json @@ -36,23 +36,23 @@ "@docusaurus/plugin-sitemap": "3.1.1", "@docusaurus/preset-classic": "3.1.1", "@mdx-js/react": "^3.0.1", - "clsx": "^1.2.1", + "clsx": "^2.1.1", "dayjs": "^1.11.11", "docusaurus-plugin-sass": "^0.2.5", "docusaurus-theme-search-typesense": "^0.16.0", "nc-analytics": "^0.0.9", "plugin-image-zoom": "github:flexanalytics/plugin-image-zoom", - "prism-react-renderer": "^1.3.5", + "prism-react-renderer": "^2.4.0", "react": "^18.2.0", "react-dom": "^18.2.0", "sass": "^1.71.1" }, "devDependencies": { "@docusaurus/module-type-aliases": "3.1.1", - "@tsconfig/docusaurus": "^1.0.7", + "@tsconfig/docusaurus": "^2.0.3", "remark-cli": "^12.0.1", "remark-validate-links": "^13.0.1", - "typescript": "^4.9.5" + "typescript": "^5.6.3" }, "browserslist": { "production": [ @@ -67,6 +67,6 @@ ] }, "engines": { - "node": ">=16.20.2" + "node": ">=22.11.0" } } diff --git a/packages/nocodb-sdk/package.json b/packages/nocodb-sdk/package.json index e7d6e3ec9f..06d0cc93e7 100644 --- a/packages/nocodb-sdk/package.json +++ b/packages/nocodb-sdk/package.json @@ -18,7 +18,7 @@ "url": "https://github.com/nocodb/nocodb/issues" }, "engines": { - "node": ">=18.19.1" + "node": ">=22.11.0" }, "license": "AGPL-3.0-or-later", "keywords": [], @@ -44,19 +44,19 @@ "dayjs": "^1.11.11" }, "devDependencies": { - "@typescript-eslint/eslint-plugin": "^6.21.0", - "@typescript-eslint/parser": "^6.21.0", + "@typescript-eslint/eslint-plugin": "^8.15.0", + "@typescript-eslint/parser": "^8.15.0", "@types/jest": "^29.5.12", - "cspell": "^4.2.8", - "eslint": "^8.56.0", - "eslint-config-prettier": "^8.10.0", + "cspell": "^8.16.0", + "eslint": "^9.15.0", + "eslint-config-prettier": "^9.1.0", "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-functional": "^5.0.8", + "eslint-plugin-functional": "^7.1.0", "eslint-plugin-import": "^2.29.1", - "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-prettier": "^5.2.1", "npm-run-all": "^4.1.5", - "prettier": "^2.8.8", - "rimraf": "^5.0.7", + "prettier": "^3.3.3", + "rimraf": "^6.0.1", "tsc-alias": "^1.8.10", "typescript": "^5.3.3", "ts-jest": "^29.1.2" diff --git a/packages/nocodb/Dockerfile b/packages/nocodb/Dockerfile index b4b62b1dd6..800650904a 100644 --- a/packages/nocodb/Dockerfile +++ b/packages/nocodb/Dockerfile @@ -17,7 +17,7 @@ RUN cp $GOPATH/bin/litestream /usr/src/lt ########### # Builder ########### -FROM node:18-alpine as builder +FROM node:22.11.0-alpine as builder WORKDIR /usr/src/app # install node-gyp dependencies diff --git a/packages/nocodb/Dockerfile.local b/packages/nocodb/Dockerfile.local index 9c66e242db..bf82bb1061 100644 --- a/packages/nocodb/Dockerfile.local +++ b/packages/nocodb/Dockerfile.local @@ -3,7 +3,7 @@ ########### # Builder ########### -FROM node:18-alpine as builder +FROM node:22.11.0-alpine as builder WORKDIR /usr/src/app # install node-gyp dependencies diff --git a/packages/nocodb/Dockerfile.timely b/packages/nocodb/Dockerfile.timely index 5b9d98f4d4..eebd27bcb2 100644 --- a/packages/nocodb/Dockerfile.timely +++ b/packages/nocodb/Dockerfile.timely @@ -20,7 +20,7 @@ RUN git clone https://github.com/benbjohnson/litestream.git litestream \ ########### # Builder ########### -FROM --platform=$BUILDPLATFORM node:18-alpine as builder +FROM --platform=$BUILDPLATFORM node:22.11.0-alpine as builder WORKDIR /usr/src/app # Install node-gyp dependencies @@ -50,7 +50,7 @@ RUN pnpm install --prod --shamefully-hoist \ ############ ## Binary Dependencies Builder ############ -FROM --platform=$TARGETPLATFORM node:18.19.1-alpine as bin-builder +FROM --platform=$TARGETPLATFORM node:22.11.0-alpine as bin-builder WORKDIR /usr/src/app RUN apk add --no-cache jq diff --git a/packages/nocodb/package.json b/packages/nocodb/package.json index 9cb8884cbe..6915429821 100644 --- a/packages/nocodb/package.json +++ b/packages/nocodb/package.json @@ -16,7 +16,7 @@ "url": "https://github.com/nocodb/nocodb/issues" }, "engines": { - "node": ">=18.19.1" + "node": ">=22.11.0" }, "license": "AGPL-3.0-or-later", "scripts": { @@ -64,67 +64,67 @@ "@nestjs/passport": "^10.0.3", "@nestjs/platform-express": "^10.3.8", "@nestjs/platform-socket.io": "^10.3.8", - "@nestjs/throttler": "^5.1.2", + "@nestjs/throttler": "^6.2.1", "@nestjs/websockets": "^10.3.8", "@ntegral/nestjs-sentry": "^4.0.1", - "@sentry/node": "^6.19.7", - "@techpass/passport-openidconnect": "^0.3.3", - "@types/chai": "^4.3.16", + "@sentry/node": "^8.39.0", + "@techpass/passport-openidconnect": "^1.0.0", + "@types/chai": "^5.0.1", "airtable": "^0.12.2", "ajv": "^8.12.0", - "ajv-formats": "^2.1.1", - "auto-bind": "^4.0.0", + "ajv-formats": "^3.0.1", + "auto-bind": "^5.0.1", "aws-sdk": "^2.1550.0", "axios": "^1.6.8", "bcryptjs": "^2.4.3", - "boxen": "^5.1.2", + "boxen": "^8.0.1", "bull": "^4.12.5", - "bullmq": "^1.91.1", + "bullmq": "^5.28.1", "clear": "^0.1.0", "clickhouse": "^2.6.0", - "clickhouse-migrations": "^0.1.14", + "clickhouse-migrations": "^1.0.2", "colors": "^1.4.0", "compare-versions": "^6.1.0", "content-disposition": "^0.5.4", "cookie-parser": "^1.4.6", "cors": "^2.8.5", - "cron": "^1.8.2", + "cron": "^3.2.1", "crypto-js": "^4.2.0", "dataloader": "^2.2.2", "dayjs": "^1.11.11", "debug": "^4.3.4", - "dotenv": "^8.6.0", + "dotenv": "^16.4.5", "ejs": "^3.1.10", - "emittery": "^0.13.1", + "emittery": "^1.0.3", "express": "^4.18.3", - "fast-levenshtein": "^2.0.6", - "fs-extra": "^9.1.0", - "glob": "^10.4.5", + "fast-levenshtein": "^3.0.0", + "fs-extra": "^11.2.0", + "glob": "^11.0.0", "handlebars": "^4.7.8", "html-to-json-parser": "^2.0.1", "import-fresh": "^3.3.0", - "inflection": "^1.13.4", + "inflection": "^3.0.0", "ioredis": "^5.4.1", "ioredis-mock": "^8.9.0", - "is-docker": "^2.2.1", - "isomorphic-dompurify": "^1.13.0", + "is-docker": "^3.0.0", + "isomorphic-dompurify": "^2.16.0", "jsep": "^1.3.8", "json5": "^2.2.3", "jsonfile": "^6.1.0", "jsonwebtoken": "^9.0.2", "kafkajs": "^2.2.4", - "knex": "2.4.2", - "list-github-dir-content": "^3.0.0", + "knex": "3.1.0", + "list-github-dir-content": "^4.0.4", "lodash": "^4.17.21", - "mailersend": "^1.5.0", - "marked": "^4.3.0", - "mime": "^2.6.0", + "mailersend": "^2.3.0", + "marked": "^15.0.1", + "mime": "^4.0.4", "minio": "^8.0.1", - "mkdirp": "^2.1.6", - "mssql": "^10.0.2", + "mkdirp": "^3.0.1", + "mssql": "^11.0.1", "multer": "^1.4.5-lts.1", "mysql2": "^3.9.7", - "nanoid": "^3.3.7", + "nanoid": "^5.0.8", "nc-lib-gui": "0.258.2", "nestjs-throttler-storage-redis": "^0.4.4", "nocodb-sdk": "workspace:^", @@ -132,7 +132,7 @@ "object-hash": "^3.0.0", "object-sizeof": "^2.6.4", "os-locale": "^6.0.2", - "p-queue": "^6.6.2", + "p-queue": "^8.0.1", "papaparse": "^5.4.1", "parse-database-url": "^0.3.0", "passport": "^0.7.0", @@ -144,18 +144,18 @@ "pg": "^8.11.5", "redlock": "^5.0.0-beta.2", "reflect-metadata": "^0.2.1", - "request-filtering-agent": "^1.1.2", + "request-filtering-agent": "^2.0.1", "request-ip": "^3.3.0", "rxjs": "^7.8.1", "sharp": "^0.33.4", - "slash": "^3.0.0", - "slug": "^8.2.3", + "slash": "^5.1.0", + "slug": "^10.0.0", "socket.io": "^4.7.5", "sqlite3": "^5.1.7", - "tedious": "^16.6.1", + "tedious": "^18.6.1", "tinycolor2": "^1.6.0", - "twilio": "^4.23.0", - "uuid": "^9.0.1", + "twilio": "^5.3.6", + "uuid": "^11.0.3", "validator": "^13.11.0", "xlsx": "https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz" }, @@ -166,31 +166,31 @@ "@nestjsplus/dyn-schematics": "^1.0.12", "@types/content-disposition": "^0.5.8", "@types/ejs": "^3.1.5", - "@types/express": "^4.17.21", + "@types/express": "^5.0.0", "@types/jest": "^29.5.12", "@types/mocha": "^10.0.6", "@types/multer": "^1.4.11", - "@types/node": "20.11.30", + "@types/node": "22.9.1", "@types/passport-google-oauth20": "^2.0.16", - "@types/passport-jwt": "^3.0.13", - "@types/supertest": "^2.0.16", - "@typescript-eslint/eslint-plugin": "^6.21.0", - "@typescript-eslint/parser": "^6.21.0", - "chai": "^4.4.1", - "copy-webpack-plugin": "^11.0.0", + "@types/passport-jwt": "^4.0.1", + "@types/supertest": "^6.0.2", + "@typescript-eslint/eslint-plugin": "^8.15.0", + "@typescript-eslint/parser": "^8.15.0", + "chai": "^5.1.2", + "copy-webpack-plugin": "^12.0.2", "cross-env": "^7.0.3", - "eslint": "^8.56.0", - "eslint-config-prettier": "^8.10.0", + "eslint": "^9.15.0", + "eslint-config-prettier": "^9.1.0", "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-functional": "^5.0.8", + "eslint-plugin-functional": "^7.1.0", "eslint-plugin-import": "^2.29.1", - "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-prettier": "^5.2.1", "jest": "29.7.0", "mocha": "^10.3.0", "nodemon": "^3.0.3", - "prettier": "^2.8.8", + "prettier": "^3.3.3", "source-map-support": "^0.5.21", - "supertest": "^6.3.4", + "supertest": "^7.0.0", "ts-jest": "29.1.2", "ts-loader": "^9.5.1", "ts-node": "^10.9.2",