From 63dff49ec7ec7aab8870a56e4ebb988460840bd2 Mon Sep 17 00:00:00 2001 From: DarkPhoenix2704 Date: Wed, 14 Jan 2026 12:15:06 +0530 Subject: [PATCH] fix: bump dependencies --- .../sidebar/config/custom/HttpRequest.vue | 1 - .../packages/core-workflow-node/package.json | 2 +- .../src/nodes/http-request.ts | 43 +++---------------- packages/noco-integrations/pnpm-lock.yaml | 12 +++--- .../src/ee/controllers/utils.controller.ts | 4 +- .../source-create/source-create.controller.ts | 4 +- .../src/ee/services/sso-client.service.ts | 4 +- .../nocodb/src/ee/services/utils.service.ts | 4 +- .../nocodb/src/plugins/GenericS3/GenericS3.ts | 4 +- .../nocodb/src/plugins/discord/Discord.ts | 4 +- packages/nocodb/src/plugins/gcs/Gcs.ts | 4 +- .../src/plugins/mattermost/Mattermost.ts | 4 +- packages/nocodb/src/plugins/minio/Minio.ts | 4 +- packages/nocodb/src/plugins/slack/Slack.ts | 4 +- packages/nocodb/src/plugins/storage/Local.ts | 4 +- packages/nocodb/src/plugins/teams/Teams.ts | 4 +- .../src/services/attachments.service.ts | 4 +- packages/nocodb/src/services/utils.service.ts | 4 +- .../services/v3/data-attachment-v3.service.ts | 4 +- packages/nocodb/src/utils/webhook-invoker.ts | 4 +- pnpm-lock.yaml | 14 +++--- 21 files changed, 51 insertions(+), 85 deletions(-) diff --git a/packages/nc-gui/ee/components/smartsheet/workflow/sidebar/config/custom/HttpRequest.vue b/packages/nc-gui/ee/components/smartsheet/workflow/sidebar/config/custom/HttpRequest.vue index 7b1ce95c3d..fc756742e8 100644 --- a/packages/nc-gui/ee/components/smartsheet/workflow/sidebar/config/custom/HttpRequest.vue +++ b/packages/nc-gui/ee/components/smartsheet/workflow/sidebar/config/custom/HttpRequest.vue @@ -361,6 +361,5 @@ const showAdvanced = ref(false) } } } - } diff --git a/packages/noco-integrations/packages/core-workflow-node/package.json b/packages/noco-integrations/packages/core-workflow-node/package.json index dd7050232b..91cbe69499 100644 --- a/packages/noco-integrations/packages/core-workflow-node/package.json +++ b/packages/noco-integrations/packages/core-workflow-node/package.json @@ -11,7 +11,7 @@ "dependencies": { "@noco-integrations/core": "workspace:*", "cron-parser": "^5.4.0", - "request-filtering-agent": "^1.1.2", + "request-filtering-agent": "^3.2.0", "zod": "^3.25.76" }, "devDependencies": { diff --git a/packages/noco-integrations/packages/core-workflow-node/src/nodes/http-request.ts b/packages/noco-integrations/packages/core-workflow-node/src/nodes/http-request.ts index f828636c49..1c4af96d73 100644 --- a/packages/noco-integrations/packages/core-workflow-node/src/nodes/http-request.ts +++ b/packages/noco-integrations/packages/core-workflow-node/src/nodes/http-request.ts @@ -101,8 +101,7 @@ export class HttpRequest extends WorkflowNodeIntegration { if (!isDynamic) { try { new URL(config.url); - } catch (e) { - console.log(e); + } catch { errors.push({ path: 'config.url', message: 'Please provide a valid URL', @@ -165,12 +164,8 @@ export class HttpRequest extends WorkflowNodeIntegration { url: config.url, timeout: config.timeout || 30000, maxRedirects: config.followRedirects === false ? 0 : 5, - httpAgent: useAgent(config.url, { - stopPortScanningByUrlRedirection: true, - }), - httpsAgent: useAgent(config.url, { - stopPortScanningByUrlRedirection: true, - }), + httpAgent: useAgent(config.url), + httpsAgent: useAgent(config.url), validateStatus: config.validateStatus === false ? () => true @@ -264,7 +259,7 @@ export class HttpRequest extends WorkflowNodeIntegration { data: { method: axiosConfig.method, url: axiosConfig.url, - headers: this.sanitizeHeaders(headers), + headers, hasBody: !!axiosConfig.data, }, }); @@ -363,7 +358,6 @@ export class HttpRequest extends WorkflowNodeIntegration { }, }; } else if (axiosError.request) { - // No response received logs.push({ level: 'error', message: `No response received: ${axiosError.message}`, @@ -388,7 +382,6 @@ export class HttpRequest extends WorkflowNodeIntegration { } } - // Generic error handling const err = error as Error; logs.push({ level: 'error', @@ -460,32 +453,6 @@ export class HttpRequest extends WorkflowNodeIntegration { return []; } - /** - * Sanitize headers for logging (hide sensitive values) - */ - private sanitizeHeaders( - headers: Record, - ): Record { - const sensitiveKeys = [ - 'authorization', - 'x-api-key', - 'api-key', - 'apikey', - 'token', - ]; - const sanitized: Record = {}; - - for (const [key, value] of Object.entries(headers)) { - if (sensitiveKeys.some((k) => key.toLowerCase().includes(k))) { - sanitized[key] = value ? '[REDACTED]' : ''; - } else { - sanitized[key] = value; - } - } - - return sanitized; - } - public async generateInputVariables(): Promise { const variables: NocoSDK.VariableDefinition[] = [ { @@ -517,7 +484,7 @@ export class HttpRequest extends WorkflowNodeIntegration { itemSchema: [ { key: 'key', - name: 'Header Name', + name: 'Header name', type: NocoSDK.VariableType.String, }, { diff --git a/packages/noco-integrations/pnpm-lock.yaml b/packages/noco-integrations/pnpm-lock.yaml index b30fc78701..2a6bcfa7f9 100644 --- a/packages/noco-integrations/pnpm-lock.yaml +++ b/packages/noco-integrations/pnpm-lock.yaml @@ -334,8 +334,8 @@ importers: specifier: ^5.4.0 version: 5.4.0 request-filtering-agent: - specifier: ^1.1.2 - version: 1.1.2 + specifier: ^3.2.0 + version: 3.2.0 zod: specifier: ^3.25.76 version: 3.25.76 @@ -3559,9 +3559,9 @@ packages: resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} engines: {node: '>= 0.4'} - request-filtering-agent@1.1.2: - resolution: {integrity: sha512-v6uYIoey6rhe+nQXB5rlYEWJI+5SrnvM72XGeLUsykzu2omOEPoW4QmzEH+8/sheK4M/hwQ85L7aPj1cTJfPLg==} - deprecated: This version is not maintain. Please upgrade to the latest version. + request-filtering-agent@3.2.0: + resolution: {integrity: sha512-tKPrKdsmTFuGG1/pBEpzTB66mDZ2lZLW8kjW4N6jj4QjnxUTKrIfv5p2zuJRfztOos86jRPD41lRaGjh+1QqDw==} + engines: {node: '>=20.0.0'} resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} @@ -6778,7 +6778,7 @@ snapshots: gopd: 1.2.0 set-function-name: 2.0.2 - request-filtering-agent@1.1.2: + request-filtering-agent@3.2.0: dependencies: ipaddr.js: 2.3.0 diff --git a/packages/nocodb/src/ee/controllers/utils.controller.ts b/packages/nocodb/src/ee/controllers/utils.controller.ts index 178959ff01..bc68411f1a 100644 --- a/packages/nocodb/src/ee/controllers/utils.controller.ts +++ b/packages/nocodb/src/ee/controllers/utils.controller.ts @@ -122,8 +122,8 @@ export class UtilsController extends UtilsControllerCE { if (host && port) { const url = `${host.includes('://') ? '' : 'http://'}${host}:${port}`; await axios(url, { - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), timeout: 100, }).catch((err) => { if (err.message.includes('DNS lookup')) { diff --git a/packages/nocodb/src/ee/modules/jobs/jobs/source-create/source-create.controller.ts b/packages/nocodb/src/ee/modules/jobs/jobs/source-create/source-create.controller.ts index 9cd99ccb1f..c8a05a0924 100644 --- a/packages/nocodb/src/ee/modules/jobs/jobs/source-create/source-create.controller.ts +++ b/packages/nocodb/src/ee/modules/jobs/jobs/source-create/source-create.controller.ts @@ -110,8 +110,8 @@ export class SourceCreateController { if (host && port) { const url = `${host.includes('://') ? '' : 'http://'}${host}:${port}`; await axios(url, { - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), timeout: 100, }).catch((err) => { if (err.message.includes('DNS lookup')) { diff --git a/packages/nocodb/src/ee/services/sso-client.service.ts b/packages/nocodb/src/ee/services/sso-client.service.ts index 484b5c7174..fdc5ec7a54 100644 --- a/packages/nocodb/src/ee/services/sso-client.service.ts +++ b/packages/nocodb/src/ee/services/sso-client.service.ts @@ -143,8 +143,8 @@ export class SSOClientService { param.metadataUrl, process.env.NODE_ENV !== 'test' ? { - httpAgent: useAgent(param.metadataUrl, {}), - httpsAgent: useAgent(param.metadataUrl, {}), + httpAgent: useAgent(param.metadataUrl), + httpsAgent: useAgent(param.metadataUrl), } : {}, ); diff --git a/packages/nocodb/src/ee/services/utils.service.ts b/packages/nocodb/src/ee/services/utils.service.ts index 2cc7f6e8ab..9e09f3198b 100644 --- a/packages/nocodb/src/ee/services/utils.service.ts +++ b/packages/nocodb/src/ee/services/utils.service.ts @@ -97,8 +97,8 @@ export class UtilsService extends UtilsServiceCE { : {}, responseType: apiMeta.responseType || 'json', withCredentials: true, - httpAgent: useAgent(apiMeta.url, {}), - httpsAgent: useAgent(apiMeta.url, {}), + httpAgent: useAgent(apiMeta.url), + httpsAgent: useAgent(apiMeta.url), }; const data = await axios(_req); return data?.data; diff --git a/packages/nocodb/src/plugins/GenericS3/GenericS3.ts b/packages/nocodb/src/plugins/GenericS3/GenericS3.ts index f406123d17..77f7a254ae 100644 --- a/packages/nocodb/src/plugins/GenericS3/GenericS3.ts +++ b/packages/nocodb/src/plugins/GenericS3/GenericS3.ts @@ -144,8 +144,8 @@ export default class GenericS3 implements IStorageAdapterV2 { ): Promise { try { const response = await axios.get(url, { - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), responseType: buffer ? 'arraybuffer' : 'stream', }); const uploadParams: PutObjectRequest = { diff --git a/packages/nocodb/src/plugins/discord/Discord.ts b/packages/nocodb/src/plugins/discord/Discord.ts index 2754271ced..aaa7a48046 100644 --- a/packages/nocodb/src/plugins/discord/Discord.ts +++ b/packages/nocodb/src/plugins/discord/Discord.ts @@ -12,8 +12,8 @@ export default class Discord implements IWebhookNotificationAdapter { try { return await axios.post(webhook_url, { content, - httpAgent: useAgent(webhook_url, {}), - httpsAgent: useAgent(webhook_url, {}), + httpAgent: useAgent(webhook_url), + httpsAgent: useAgent(webhook_url), }); } catch (e) { console.log(e); diff --git a/packages/nocodb/src/plugins/gcs/Gcs.ts b/packages/nocodb/src/plugins/gcs/Gcs.ts index 97045408d8..2cd3eb6b66 100644 --- a/packages/nocodb/src/plugins/gcs/Gcs.ts +++ b/packages/nocodb/src/plugins/gcs/Gcs.ts @@ -157,8 +157,8 @@ export default class Gcs implements IStorageAdapterV2 { ): Promise<{ url: string; data: any }> { try { const response = await axios.get(url, { - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), responseType: buffer ? 'arraybuffer' : 'stream', }); diff --git a/packages/nocodb/src/plugins/mattermost/Mattermost.ts b/packages/nocodb/src/plugins/mattermost/Mattermost.ts index 352629feef..31bedef489 100644 --- a/packages/nocodb/src/plugins/mattermost/Mattermost.ts +++ b/packages/nocodb/src/plugins/mattermost/Mattermost.ts @@ -12,8 +12,8 @@ export default class Mattermost implements IWebhookNotificationAdapter { try { return await axios.post(webhook_url, { text, - httpAgent: useAgent(webhook_url, {}), - httpsAgent: useAgent(webhook_url, {}), + httpAgent: useAgent(webhook_url), + httpsAgent: useAgent(webhook_url), }); } catch (e) { console.log(e); diff --git a/packages/nocodb/src/plugins/minio/Minio.ts b/packages/nocodb/src/plugins/minio/Minio.ts index a760f13838..85d7956439 100644 --- a/packages/nocodb/src/plugins/minio/Minio.ts +++ b/packages/nocodb/src/plugins/minio/Minio.ts @@ -177,8 +177,8 @@ export default class Minio implements IStorageAdapterV2 { ): Promise { try { const response = await axios.get(url, { - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), responseType: buffer ? 'arraybuffer' : 'stream', }); diff --git a/packages/nocodb/src/plugins/slack/Slack.ts b/packages/nocodb/src/plugins/slack/Slack.ts index 5b5b05168a..ad7fde4062 100644 --- a/packages/nocodb/src/plugins/slack/Slack.ts +++ b/packages/nocodb/src/plugins/slack/Slack.ts @@ -12,8 +12,8 @@ export default class Slack implements IWebhookNotificationAdapter { try { return await axios.post(webhook_url, { text, - httpAgent: useAgent(webhook_url, {}), - httpsAgent: useAgent(webhook_url, {}), + httpAgent: useAgent(webhook_url), + httpsAgent: useAgent(webhook_url), }); } catch (e) { console.log(e); diff --git a/packages/nocodb/src/plugins/storage/Local.ts b/packages/nocodb/src/plugins/storage/Local.ts index dcd1b39dab..7084f70424 100644 --- a/packages/nocodb/src/plugins/storage/Local.ts +++ b/packages/nocodb/src/plugins/storage/Local.ts @@ -47,8 +47,8 @@ export default class Local implements IStorageAdapterV2 { 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36', origin: 'https://www.airtable.com/', }, - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), }); await mkdirp(path.dirname(destPath)); diff --git a/packages/nocodb/src/plugins/teams/Teams.ts b/packages/nocodb/src/plugins/teams/Teams.ts index 59001705fc..7728c63bff 100644 --- a/packages/nocodb/src/plugins/teams/Teams.ts +++ b/packages/nocodb/src/plugins/teams/Teams.ts @@ -12,8 +12,8 @@ export default class Teams implements IWebhookNotificationAdapter { try { return await axios.post(webhook_url, { Text, - httpAgent: useAgent(webhook_url, {}), - httpsAgent: useAgent(webhook_url, {}), + httpAgent: useAgent(webhook_url), + httpsAgent: useAgent(webhook_url), }); } catch (e) { console.log(e); diff --git a/packages/nocodb/src/services/attachments.service.ts b/packages/nocodb/src/services/attachments.service.ts index 6ad5fc7ab4..c5a834eff9 100644 --- a/packages/nocodb/src/services/attachments.service.ts +++ b/packages/nocodb/src/services/attachments.service.ts @@ -292,8 +292,8 @@ export class AttachmentsService { if (!url.startsWith('data:')) { response = await axios.head(url, { maxRedirects: 5, - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), }); mimeType = response.headers['content-type']?.split(';')[0]; size = response.headers['content-length']; diff --git a/packages/nocodb/src/services/utils.service.ts b/packages/nocodb/src/services/utils.service.ts index bd797779cb..fea67bcf82 100644 --- a/packages/nocodb/src/services/utils.service.ts +++ b/packages/nocodb/src/services/utils.service.ts @@ -179,8 +179,8 @@ export class UtilsService { : {}, responseType: apiMeta.responseType || 'json', withCredentials: true, - httpAgent: useAgent(apiMeta.url, {}), - httpsAgent: useAgent(apiMeta.url, {}), + httpAgent: useAgent(apiMeta.url), + httpsAgent: useAgent(apiMeta.url), }; const data = await axios(_req); return data?.data; diff --git a/packages/nocodb/src/services/v3/data-attachment-v3.service.ts b/packages/nocodb/src/services/v3/data-attachment-v3.service.ts index 67e198ff63..0a87e316b5 100644 --- a/packages/nocodb/src/services/v3/data-attachment-v3.service.ts +++ b/packages/nocodb/src/services/v3/data-attachment-v3.service.ts @@ -380,8 +380,8 @@ export class DataAttachmentV3Service { responseType: 'stream', maxRedirects: NC_ATTACHMENT_URL_MAX_REDIRECT, maxContentLength: NC_ATTACHMENT_FIELD_SIZE, - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), }); // Extract file information from response headers diff --git a/packages/nocodb/src/utils/webhook-invoker.ts b/packages/nocodb/src/utils/webhook-invoker.ts index 403d374887..dfca2fc761 100644 --- a/packages/nocodb/src/utils/webhook-invoker.ts +++ b/packages/nocodb/src/utils/webhook-invoker.ts @@ -161,8 +161,8 @@ export class WebhookInvoker { ...(process.env.NC_ALLOW_LOCAL_HOOKS !== 'true' && !ncIsNullOrUndefined(url) ? { - httpAgent: useAgent(url, {}), - httpsAgent: useAgent(url, {}), + httpAgent: useAgent(url), + httpsAgent: useAgent(url), } : {}), timeout: 30 * 1000, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3eaac32f64..21f596649e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8348,8 +8348,8 @@ packages: '@types/node@14.18.56': resolution: {integrity: sha512-+k+57NVS9opgrEn5l9c0gvD1r6C+PtyhVE4BTnMMRwiEA8ZO8uFcs6Yy2sXIy0eC95ZurBtRSvhZiHXBysbl6w==} - '@types/node@20.19.28': - resolution: {integrity: sha512-VyKBr25BuFDzBFCK5sUM6ZXiWfqgCTwTAOK8qzGV/m9FCirXYDlmczJ+d5dXBAQALGCdRRdbteKYfJ84NGEusw==} + '@types/node@20.19.29': + resolution: {integrity: sha512-YrT9ArrGaHForBaCNwFjoqJWmn8G1Pr7+BH/vwyLHciA9qT/wSiuOhxGCT50JA5xLvFBd6PIiGkE3afxcPE1nw==} '@types/node@20.3.0': resolution: {integrity: sha512-cumHmIAf6On83X7yP+LrsEyUOf/YlociZelmpRYaGFydoaPdxdt80MAbu6vWerQT2COCp2nPvHdsbD7tHn/YlQ==} @@ -25682,14 +25682,14 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 20.19.28 + '@types/node': 20.19.29 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.8.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.19.28)(ts-node@10.9.2(@swc/core@1.10.0)(@types/node@22.15.21)(typescript@5.8.3)) + jest-config: 29.7.0(@types/node@20.19.29)(ts-node@10.9.2(@swc/core@1.10.0)(@types/node@22.15.21)(typescript@5.8.3)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -29899,7 +29899,7 @@ snapshots: '@types/node@14.18.56': {} - '@types/node@20.19.28': + '@types/node@20.19.29': dependencies: undici-types: 6.21.0 @@ -36470,7 +36470,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@20.19.28)(ts-node@10.9.2(@swc/core@1.10.0)(@types/node@22.15.21)(typescript@5.8.3)): + jest-config@29.7.0(@types/node@20.19.29)(ts-node@10.9.2(@swc/core@1.10.0)(@types/node@22.15.21)(typescript@5.8.3)): dependencies: '@babel/core': 7.28.4 '@jest/test-sequencer': 29.7.0 @@ -36495,7 +36495,7 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 20.19.28 + '@types/node': 20.19.29 ts-node: 10.9.2(@swc/core@1.10.0)(@types/node@22.15.21)(typescript@5.8.3) transitivePeerDependencies: - babel-plugin-macros