diff --git a/packages/@n8n/benchmark/package.json b/packages/@n8n/benchmark/package.json index 40f51c71fb9..b92e1124b54 100644 --- a/packages/@n8n/benchmark/package.json +++ b/packages/@n8n/benchmark/package.json @@ -45,7 +45,7 @@ "@n8n/typescript-config": "workspace:*", "@types/convict": "^6.1.1", "@types/k6": "^0.52.0", - "typescript": "catalog:" + "typescript": "catalog:typescript" }, "bin": { "n8n-benchmark": "./bin/n8n-benchmark" diff --git a/packages/@n8n/benchmark/src/test-execution/k6-executor.ts b/packages/@n8n/benchmark/src/test-execution/k6-executor.ts index 5ccf253269c..b456c0a2fde 100644 --- a/packages/@n8n/benchmark/src/test-execution/k6-executor.ts +++ b/packages/@n8n/benchmark/src/test-execution/k6-executor.ts @@ -6,6 +6,8 @@ import { $, which, tmpfile } from 'zx'; import { AppMetricsPoller } from '@/test-execution/app-metrics-poller'; import { buildTestReport, type K6Tag } from '@/test-execution/test-report'; import type { Scenario } from '@/types/scenario'; + +import type { K6EndOfTestSummary } from './k6-summary'; export type { K6Tag }; export type K6ExecutorOpts = { diff --git a/packages/@n8n/benchmark/src/test-execution/k6-summary.ts b/packages/@n8n/benchmark/src/test-execution/k6-summary.ts index 12567a9d664..1dba7d854eb 100644 --- a/packages/@n8n/benchmark/src/test-execution/k6-summary.ts +++ b/packages/@n8n/benchmark/src/test-execution/k6-summary.ts @@ -160,10 +160,9 @@ Example JSON: */ type TrendStat = 'avg' | 'min' | 'med' | 'max' | 'p(90)' | 'p(95)'; -type MetricType = 'trend' | 'rate' | 'counter'; type MetricContains = 'time' | 'default' | 'data'; -interface TrendValues { +export interface TrendValues { avg: number; min: number; med: number; @@ -172,48 +171,48 @@ interface TrendValues { 'p(95)': number; } -interface RateValues { +export interface RateValues { rate: number; passes: number; fails: number; } -interface CounterValues { +export interface CounterValues { count: number; rate: number; } -interface K6TrendMetric { +export interface K6TrendMetric { type: 'trend'; contains: 'time'; values: TrendValues; } -interface RateMetric { +export interface RateMetric { type: 'rate'; contains: 'default'; values: RateValues; } -interface K6CounterMetric { +export interface K6CounterMetric { type: 'counter'; contains: MetricContains; values: CounterValues; } -interface Options { +export interface Options { summaryTrendStats: TrendStat[]; summaryTimeUnit: string; noColor: boolean; } -interface State { +export interface State { isStdOutTTY: boolean; isStdErrTTY: boolean; testRunDurationMs: number; } -interface Metrics { +export interface Metrics { http_req_tls_handshaking: K6TrendMetric; checks: RateMetric; http_req_sending: K6TrendMetric; @@ -231,7 +230,7 @@ interface Metrics { data_sent: K6CounterMetric; } -interface K6Check { +export interface K6Check { name: string; path: string; id: string; @@ -239,7 +238,7 @@ interface K6Check { fails: number; } -interface RootGroup { +export interface RootGroup { name: string; path: string; id: string; @@ -247,7 +246,7 @@ interface RootGroup { checks: K6Check[]; } -interface K6EndOfTestSummary { +export interface K6EndOfTestSummary { options: Options; state: State; metrics: Metrics; diff --git a/packages/@n8n/benchmark/src/test-execution/test-report.ts b/packages/@n8n/benchmark/src/test-execution/test-report.ts index b739b802b41..7cecb146143 100644 --- a/packages/@n8n/benchmark/src/test-execution/test-report.ts +++ b/packages/@n8n/benchmark/src/test-execution/test-report.ts @@ -3,6 +3,8 @@ import { nanoid } from 'nanoid'; import { PrometheusMetricsParser } from '@/test-execution/prometheus-metrics-parser'; import type { Scenario } from '@/types/scenario'; +import type { K6Check, K6CounterMetric, K6EndOfTestSummary, K6TrendMetric } from './k6-summary'; + export type K6Tag = { name: string; value: string; diff --git a/packages/@n8n/benchmark/tsconfig.build.json b/packages/@n8n/benchmark/tsconfig.build.json index afcbdd550ec..42136935296 100644 --- a/packages/@n8n/benchmark/tsconfig.build.json +++ b/packages/@n8n/benchmark/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "rootDir": "src", "outDir": "dist" diff --git a/packages/@n8n/benchmark/tsconfig.json b/packages/@n8n/benchmark/tsconfig.json index a27b4bb6ea3..b994e4177d0 100644 --- a/packages/@n8n/benchmark/tsconfig.json +++ b/packages/@n8n/benchmark/tsconfig.json @@ -1,7 +1,7 @@ { "extends": [ - "@n8n/typescript-config/tsconfig.common.json", - "@n8n/typescript-config/tsconfig.backend.json" + "@n8n/typescript-config/tsconfig.common.go.json", + "@n8n/typescript-config/tsconfig.backend.go.json" ], "compilerOptions": { "paths": { diff --git a/packages/@n8n/chat-hub/package.json b/packages/@n8n/chat-hub/package.json index 2fda4f837d9..f6848dd81cc 100644 --- a/packages/@n8n/chat-hub/package.json +++ b/packages/@n8n/chat-hub/package.json @@ -26,7 +26,7 @@ "@n8n/typescript-config": "workspace:*", "@n8n/vitest-config": "workspace:*", "@vitest/coverage-v8": "catalog:", - "typescript": "catalog:", + "typescript": "catalog:typescript", "vitest": "catalog:" }, "dependencies": { diff --git a/packages/@n8n/chat-hub/tsconfig.build.json b/packages/@n8n/chat-hub/tsconfig.build.json index c134a3ee7ea..ac376c250d1 100644 --- a/packages/@n8n/chat-hub/tsconfig.build.json +++ b/packages/@n8n/chat-hub/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/chat-hub/tsconfig.json b/packages/@n8n/chat-hub/tsconfig.json index 0eac8b7643e..ba5b01ac8cd 100644 --- a/packages/@n8n/chat-hub/tsconfig.json +++ b/packages/@n8n/chat-hub/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@n8n/typescript-config/tsconfig.common.json", + "extends": "@n8n/typescript-config/tsconfig.common.go.json", "compilerOptions": { "types": ["node", "vitest/globals"] }, diff --git a/packages/@n8n/cli/package.json b/packages/@n8n/cli/package.json index 472109a9b3f..facae363b3e 100644 --- a/packages/@n8n/cli/package.json +++ b/packages/@n8n/cli/package.json @@ -81,7 +81,7 @@ "@n8n/typescript-config": "workspace:*", "@n8n/vitest-config": "workspace:*", "@types/node": "catalog:", - "typescript": "catalog:", + "typescript": "catalog:typescript", "vitest": "catalog:" } } diff --git a/packages/@n8n/cli/tsconfig.build.json b/packages/@n8n/cli/tsconfig.build.json index a8561a96258..fa5d0655c56 100644 --- a/packages/@n8n/cli/tsconfig.build.json +++ b/packages/@n8n/cli/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/cli/tsconfig.json b/packages/@n8n/cli/tsconfig.json index 6d6f85495b6..86b9137d1c4 100644 --- a/packages/@n8n/cli/tsconfig.json +++ b/packages/@n8n/cli/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": ["@n8n/typescript-config/tsconfig.common.json"], + "extends": ["@n8n/typescript-config/tsconfig.common.go.json"], "compilerOptions": { "rootDir": "src", "outDir": "dist", diff --git a/packages/@n8n/client-oauth2/package.json b/packages/@n8n/client-oauth2/package.json index 761d5cd55e7..931d32594c6 100644 --- a/packages/@n8n/client-oauth2/package.json +++ b/packages/@n8n/client-oauth2/package.json @@ -30,7 +30,7 @@ "@n8n/typescript-config": "workspace:*", "@n8n/vitest-config": "workspace:*", "@vitest/coverage-v8": "catalog:", - "typescript": "catalog:", + "typescript": "catalog:typescript", "vite": "catalog:", "vitest": "catalog:", "vitest-mock-extended": "catalog:", diff --git a/packages/@n8n/client-oauth2/tsconfig.build.json b/packages/@n8n/client-oauth2/tsconfig.build.json index ff87f685ba6..3fdfe1410d4 100644 --- a/packages/@n8n/client-oauth2/tsconfig.build.json +++ b/packages/@n8n/client-oauth2/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/client-oauth2/tsconfig.json b/packages/@n8n/client-oauth2/tsconfig.json index 67684248ccb..06ddb1e1ff9 100644 --- a/packages/@n8n/client-oauth2/tsconfig.json +++ b/packages/@n8n/client-oauth2/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@n8n/typescript-config/tsconfig.common.json", + "extends": "@n8n/typescript-config/tsconfig.common.go.json", "compilerOptions": { "types": ["node", "vitest/globals", "vite/client"], "paths": { diff --git a/packages/@n8n/computer-use/package.json b/packages/@n8n/computer-use/package.json index 36ae1740206..dc65afde75b 100644 --- a/packages/@n8n/computer-use/package.json +++ b/packages/@n8n/computer-use/package.json @@ -61,7 +61,7 @@ "@types/node": "catalog:", "@types/yargs-parser": "21.0.0", "@vitest/coverage-v8": "catalog:", - "typescript": "catalog:", + "typescript": "catalog:typescript", "vite": "catalog:", "vitest": "catalog:" }, diff --git a/packages/@n8n/computer-use/src/tools/mouse-keyboard/mouse-keyboard.test.ts b/packages/@n8n/computer-use/src/tools/mouse-keyboard/mouse-keyboard.test.ts index 120eb8c3521..e87e616ab19 100644 --- a/packages/@n8n/computer-use/src/tools/mouse-keyboard/mouse-keyboard.test.ts +++ b/packages/@n8n/computer-use/src/tools/mouse-keyboard/mouse-keyboard.test.ts @@ -307,7 +307,7 @@ describe('MouseKeyboardModule.activate', () => { }, })); - const { MouseKeyboardModule: IsolatedModule } = await import('./index'); + const { MouseKeyboardModule: IsolatedModule } = await import('./index.js'); const result = await IsolatedModule.activate(MODULE_CTX); vi.doUnmock('@jitsi/robotjs'); diff --git a/packages/@n8n/computer-use/tsconfig.build.json b/packages/@n8n/computer-use/tsconfig.build.json index 7c9019949bd..cff7ac19199 100644 --- a/packages/@n8n/computer-use/tsconfig.build.json +++ b/packages/@n8n/computer-use/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/computer-use/tsconfig.json b/packages/@n8n/computer-use/tsconfig.json index 84eecb91d87..da90611aa35 100644 --- a/packages/@n8n/computer-use/tsconfig.json +++ b/packages/@n8n/computer-use/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@n8n/typescript-config/tsconfig.common.json", + "extends": "@n8n/typescript-config/tsconfig.common.go.json", "compilerOptions": { "types": ["node", "vitest/globals", "vite/client"] }, diff --git a/packages/@n8n/config/package.json b/packages/@n8n/config/package.json index 59ad6cee4be..41f34161c53 100644 --- a/packages/@n8n/config/package.json +++ b/packages/@n8n/config/package.json @@ -32,7 +32,7 @@ "@n8n/typescript-config": "workspace:*", "@n8n/vitest-config": "workspace:*", "@vitest/coverage-v8": "catalog:", - "typescript": "catalog:", + "typescript": "catalog:typescript", "vite": "catalog:", "vitest": "catalog:", "vitest-mock-extended": "catalog:" diff --git a/packages/@n8n/config/tsconfig.build.json b/packages/@n8n/config/tsconfig.build.json index cb6f7f235dc..bdd2a8da3f9 100644 --- a/packages/@n8n/config/tsconfig.build.json +++ b/packages/@n8n/config/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/config/tsconfig.json b/packages/@n8n/config/tsconfig.json index 030c4b4a073..84220f4b36a 100644 --- a/packages/@n8n/config/tsconfig.json +++ b/packages/@n8n/config/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@n8n/typescript-config/tsconfig.common.json", + "extends": "@n8n/typescript-config/tsconfig.common.go.json", "compilerOptions": { "emitDecoratorMetadata": true, "experimentalDecorators": true, diff --git a/packages/@n8n/constants/package.json b/packages/@n8n/constants/package.json index 40c52385d0a..5f77b49b1fc 100644 --- a/packages/@n8n/constants/package.json +++ b/packages/@n8n/constants/package.json @@ -22,7 +22,7 @@ ], "devDependencies": { "@n8n/typescript-config": "workspace:*", - "typescript": "catalog:" + "typescript": "catalog:typescript" }, "license": "LicenseRef-n8n-sustainable-use" } diff --git a/packages/@n8n/constants/tsconfig.build.json b/packages/@n8n/constants/tsconfig.build.json index 739279efaec..3d4abcd930f 100644 --- a/packages/@n8n/constants/tsconfig.build.json +++ b/packages/@n8n/constants/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/constants/tsconfig.json b/packages/@n8n/constants/tsconfig.json index 3853fa5340a..65c96bede5d 100644 --- a/packages/@n8n/constants/tsconfig.json +++ b/packages/@n8n/constants/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@n8n/typescript-config/tsconfig.common.json", + "extends": "@n8n/typescript-config/tsconfig.common.go.json", "compilerOptions": { "types": ["node"], "experimentalDecorators": true, diff --git a/packages/@n8n/crdt/package.json b/packages/@n8n/crdt/package.json index dcd968cef89..e0ff826a472 100644 --- a/packages/@n8n/crdt/package.json +++ b/packages/@n8n/crdt/package.json @@ -37,7 +37,7 @@ "devDependencies": { "@n8n/typescript-config": "workspace:*", "@n8n/vitest-config": "workspace:*", - "typescript": "catalog:", + "typescript": "catalog:typescript", "vitest": "catalog:", "vitest-websocket-mock": "^0.5.0" }, diff --git a/packages/@n8n/crdt/src/transports/integration.test.ts b/packages/@n8n/crdt/src/transports/integration.test.ts index 47a9d796f3f..083a19fc84f 100644 --- a/packages/@n8n/crdt/src/transports/integration.test.ts +++ b/packages/@n8n/crdt/src/transports/integration.test.ts @@ -11,7 +11,7 @@ import { WebSocketTransport } from './websocket'; */ describe('onUpdate behavior verification', () => { it('should fire onUpdate for local changes', async () => { - const { createCRDTProvider, CRDTEngine } = await import('../index'); + const { createCRDTProvider, CRDTEngine } = await import('../index.js'); const provider = createCRDTProvider({ engine: CRDTEngine.yjs }); const doc = provider.createDoc('doc1'); @@ -28,7 +28,7 @@ describe('onUpdate behavior verification', () => { }); it('should fire onUpdate when applyUpdate is called', async () => { - const { createCRDTProvider, CRDTEngine } = await import('../index'); + const { createCRDTProvider, CRDTEngine } = await import('../index.js'); const provider = createCRDTProvider({ engine: CRDTEngine.yjs }); const doc1 = provider.createDoc('doc1'); @@ -55,9 +55,9 @@ describe('onUpdate behavior verification', () => { }); it('should forward updates via onUpdate to another transport', async () => { - const { createCRDTProvider, CRDTEngine } = await import('../index'); - const { MockTransport } = await import('../transports'); - const { createSyncProvider } = await import('../sync/base-sync-provider'); + const { createCRDTProvider, CRDTEngine } = await import('../index.js'); + const { MockTransport } = await import('../transports/index.js'); + const { createSyncProvider } = await import('../sync/base-sync-provider.js'); const provider = createCRDTProvider({ engine: CRDTEngine.yjs }); diff --git a/packages/@n8n/crdt/src/undo/undo-manager.test.ts b/packages/@n8n/crdt/src/undo/undo-manager.test.ts index a5443729c89..b10a744f7e6 100644 --- a/packages/@n8n/crdt/src/undo/undo-manager.test.ts +++ b/packages/@n8n/crdt/src/undo/undo-manager.test.ts @@ -628,7 +628,7 @@ describe('UndoManager - provider-specific tests', () => { }); it('should emit undoRedo origin when undo/redo is triggered', async () => { - const { ChangeOrigin } = await import('../types'); + const { ChangeOrigin } = await import('../types.js'); const provider = new YjsProvider(); const doc = provider.createDoc('test'); const nodesMap = doc.getMap('nodes'); @@ -664,7 +664,7 @@ describe('UndoManager - provider-specific tests', () => { }); it('should emit position changes on undo via onTransactionBatch', async () => { - const { ChangeOrigin, isMapChange } = await import('../types'); + const { ChangeOrigin, isMapChange } = await import('../types.js'); const provider = new YjsProvider(); const doc = provider.createDoc('test'); const nodesMap = doc.getMap('nodes'); @@ -729,7 +729,7 @@ describe('UndoManager - provider-specific tests', () => { }); it('should emit position changes with correct path structure', async () => { - const { isMapChange } = await import('../types'); + const { isMapChange } = await import('../types.js'); const provider = new YjsProvider(); const doc = provider.createDoc('test'); const nodesMap = doc.getMap('nodes'); @@ -786,7 +786,7 @@ describe('UndoManager - provider-specific tests', () => { }); it('should receive nested changes via observeDeep on the root map', async () => { - const { isMapChange } = await import('../types'); + const { isMapChange } = await import('../types.js'); const provider = new YjsProvider(); const doc = provider.createDoc('test'); const nodesMap = doc.getMap('nodes'); diff --git a/packages/@n8n/crdt/tsconfig.build.json b/packages/@n8n/crdt/tsconfig.build.json index 664f2961e1a..89f1c48460c 100644 --- a/packages/@n8n/crdt/tsconfig.build.json +++ b/packages/@n8n/crdt/tsconfig.build.json @@ -1,5 +1,5 @@ { - "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.json"], + "extends": ["./tsconfig.json", "@n8n/typescript-config/tsconfig.build.go.json"], "compilerOptions": { "composite": true, "rootDir": "src", diff --git a/packages/@n8n/crdt/tsconfig.json b/packages/@n8n/crdt/tsconfig.json index 801a1e65587..cc0ba4b4492 100644 --- a/packages/@n8n/crdt/tsconfig.json +++ b/packages/@n8n/crdt/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "@n8n/typescript-config/tsconfig.common.json", + "extends": "@n8n/typescript-config/tsconfig.common.go.json", "compilerOptions": { "types": ["node", "vitest/globals"] }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4874d4ec8ed..69ac7b67565 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1576,8 +1576,8 @@ importers: specifier: ^0.52.0 version: 0.52.0 typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 packages/@n8n/chat-hub: dependencies: @@ -1595,8 +1595,8 @@ importers: specifier: 'catalog:' version: 4.1.9(@vitest/browser@4.1.9)(vitest@4.1.9) typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 vitest: specifier: 'catalog:' version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@20.19.41)(@vitest/browser-playwright@4.1.9)(@vitest/coverage-v8@4.1.9)(jsdom@23.0.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))(vite@8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3)) @@ -1617,8 +1617,8 @@ importers: specifier: ^20.17.50 version: 20.19.41 typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 vitest: specifier: 'catalog:' version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@20.19.41)(@vitest/browser-playwright@4.1.9)(@vitest/coverage-v8@4.1.9)(jsdom@23.0.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))(vite@8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3)) @@ -1645,8 +1645,8 @@ importers: specifier: 'catalog:' version: 14.0.14 typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 vite: specifier: 'catalog:' version: 8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3) @@ -1655,7 +1655,7 @@ importers: version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@20.19.41)(@vitest/browser-playwright@4.1.9)(@vitest/coverage-v8@4.1.9)(jsdom@23.0.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))(vite@8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3)) vitest-mock-extended: specifier: 'catalog:' - version: 3.1.0(typescript@6.0.2)(vitest@4.1.9) + version: 3.1.0(typescript@7.0.2)(vitest@4.1.9) packages/@n8n/codemirror-lang: dependencies: @@ -1853,8 +1853,8 @@ importers: specifier: 'catalog:' version: 4.1.9(@vitest/browser@4.1.9)(vitest@4.1.9) typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 vite: specifier: 'catalog:' version: 8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3) @@ -1887,8 +1887,8 @@ importers: specifier: 'catalog:' version: 4.1.9(@vitest/browser@4.1.9)(vitest@4.1.9) typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 vite: specifier: 'catalog:' version: 8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3) @@ -1897,7 +1897,7 @@ importers: version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@20.19.41)(@vitest/browser-playwright@4.1.9)(@vitest/coverage-v8@4.1.9)(jsdom@23.0.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))(vite@8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3)) vitest-mock-extended: specifier: 'catalog:' - version: 3.1.0(typescript@6.0.2)(vitest@4.1.9) + version: 3.1.0(typescript@7.0.2)(vitest@4.1.9) packages/@n8n/constants: devDependencies: @@ -1905,8 +1905,8 @@ importers: specifier: workspace:* version: link:../typescript-config typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 packages/@n8n/crdt: dependencies: @@ -1924,8 +1924,8 @@ importers: specifier: workspace:* version: link:../vitest-config typescript: - specifier: 'catalog:' - version: 6.0.2 + specifier: catalog:typescript + version: 7.0.2 vitest: specifier: 'catalog:' version: 4.1.9(@opentelemetry/api@1.9.0)(@types/node@20.19.41)(@vitest/browser-playwright@4.1.9)(@vitest/coverage-v8@4.1.9)(jsdom@23.0.1(bufferutil@4.0.9)(utf-8-validate@5.0.10))(vite@8.0.2(@types/node@20.19.41)(esbuild@0.28.1)(jiti@2.6.1)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.16.1)(tsx@4.19.3)(yaml@2.8.3)) diff --git a/scripts/typescript-migration/SUMMARY.md b/scripts/typescript-migration/SUMMARY.md index 26b69fdc119..41325badbd4 100644 --- a/scripts/typescript-migration/SUMMARY.md +++ b/scripts/typescript-migration/SUMMARY.md @@ -1,6 +1,6 @@ # TypeScript 6 → 7 migration benchmarks -Generated 2026-07-14T09:31:26.831Z from `scripts/typescript-migration/results/`. +Generated 2026-07-15T09:07:07.705Z from `scripts/typescript-migration/results/`. | Package | typecheck Δ | build Δ | | --- | --- | --- | @@ -12,10 +12,18 @@ Generated 2026-07-14T09:31:26.831Z from `scripts/typescript-migration/results/`. | `@n8n/backend-common` | -57.0% | -54.5% | | `@n8n/backend-network` | -57.0% | -54.9% | | `@n8n/backend-test-utils` | -51.4% | -53.1% | +| `@n8n/chat-hub` | -50.4% | -50.5% | +| `@n8n/cli` | -45.7% | -45.7% | +| `@n8n/client-oauth2` | -45.6% | -39.7% | | `@n8n/codemirror-lang` | -36.3% | -31.4% | | `@n8n/codemirror-lang-html` | — | -17.0% | | `@n8n/codemirror-lang-sql` | -42.7% | -39.2% | +| `@n8n/computer-use` | -52.8% | -53.4% | +| `@n8n/config` | -48.2% | -37.9% | +| `@n8n/constants` | -35.8% | -36.6% | +| `@n8n/crdt` | -40.8% | -41.0% | | `@n8n/instance-ai` | -70.0% | -40.3% | +| `@n8n/n8n-benchmark` | -49.2% | -39.0% | | `@n8n/typeorm` | -37.9% | -68.7% | ``` @@ -114,6 +122,42 @@ build: after 751ms -850ms (-53.1%) ``` +``` +=== @n8n/chat-hub — median times (Δ vs "before") === + +typecheck: + before 1.14s + after 564ms -574ms (-50.4%) + +build: + before 1.07s + after 529ms -540ms (-50.5%) +``` + +``` +=== @n8n/cli — median times (Δ vs "before") === + +typecheck: + before 943ms + after 512ms -431ms (-45.7%) + +build: + before 982ms + after 533ms -449ms (-45.7%) +``` + +``` +=== @n8n/client-oauth2 — median times (Δ vs "before") === + +typecheck: + before 872ms + after 474ms -398ms (-45.6%) + +build: + before 763ms + after 460ms -303ms (-39.7%) +``` + ``` === @n8n/codemirror-lang — median times (Δ vs "before") === @@ -146,6 +190,54 @@ build: after 438ms -282ms (-39.2%) ``` +``` +=== @n8n/computer-use — median times (Δ vs "before") === + +typecheck: + before 1.27s + after 599ms -670ms (-52.8%) + +build: + before 1.15s + after 535ms -614ms (-53.4%) +``` + +``` +=== @n8n/config — median times (Δ vs "before") === + +typecheck: + before 1.02s + after 529ms -493ms (-48.2%) + +build: + before 952ms + after 591ms -361ms (-37.9%) +``` + +``` +=== @n8n/constants — median times (Δ vs "before") === + +typecheck: + before 670ms + after 430ms -240ms (-35.8%) + +build: + before 691ms + after 438ms -253ms (-36.6%) +``` + +``` +=== @n8n/crdt — median times (Δ vs "before") === + +typecheck: + before 921ms + after 545ms -376ms (-40.8%) + +build: + before 808ms + after 477ms -331ms (-41.0%) +``` + ``` === @n8n/instance-ai — median times (Δ vs "before") === @@ -158,6 +250,18 @@ build: after 1.91s -1293ms (-40.3%) ``` +``` +=== @n8n/n8n-benchmark — median times (Δ vs "before") === + +typecheck: + before 942ms + after 479ms -463ms (-49.2%) + +build: + before 948ms + after 578ms -370ms (-39.0%) +``` + ``` === @n8n/typeorm — median times (Δ vs "before") === diff --git a/scripts/typescript-migration/results/_n8n_chat-hub.json b/scripts/typescript-migration/results/_n8n_chat-hub.json new file mode 100644 index 00000000000..e88959a11d2 --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_chat-hub.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/chat-hub", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:38:17.186Z", + "tasks": { + "typecheck": { + "runsMs": [ + 1138, + 1135, + 1148 + ], + "min": 1135, + "median": 1138, + "mean": 1140 + }, + "build": { + "runsMs": [ + 1076, + 1067, + 1069 + ], + "min": 1067, + "median": 1069, + "mean": 1071 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:39:48.468Z", + "tasks": { + "typecheck": { + "runsMs": [ + 599, + 564, + 539 + ], + "min": 539, + "median": 564, + "mean": 567 + }, + "build": { + "runsMs": [ + 529, + 514, + 548 + ], + "min": 514, + "median": 529, + "mean": 530 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_cli.json b/scripts/typescript-migration/results/_n8n_cli.json new file mode 100644 index 00000000000..85d52e836e1 --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_cli.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/cli", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:40:37.362Z", + "tasks": { + "typecheck": { + "runsMs": [ + 990, + 943, + 902 + ], + "min": 902, + "median": 943, + "mean": 945 + }, + "build": { + "runsMs": [ + 999, + 970, + 982 + ], + "min": 970, + "median": 982, + "mean": 984 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:41:16.905Z", + "tasks": { + "typecheck": { + "runsMs": [ + 512, + 508, + 614 + ], + "min": 508, + "median": 512, + "mean": 544 + }, + "build": { + "runsMs": [ + 605, + 533, + 495 + ], + "min": 495, + "median": 533, + "mean": 544 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_client-oauth2.json b/scripts/typescript-migration/results/_n8n_client-oauth2.json new file mode 100644 index 00000000000..6124dcc09c6 --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_client-oauth2.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/client-oauth2", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:43:33.459Z", + "tasks": { + "typecheck": { + "runsMs": [ + 872, + 899, + 824 + ], + "min": 824, + "median": 872, + "mean": 865 + }, + "build": { + "runsMs": [ + 759, + 763, + 811 + ], + "min": 759, + "median": 763, + "mean": 778 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:46:15.468Z", + "tasks": { + "typecheck": { + "runsMs": [ + 494, + 459, + 474 + ], + "min": 459, + "median": 474, + "mean": 476 + }, + "build": { + "runsMs": [ + 472, + 460, + 436 + ], + "min": 436, + "median": 460, + "mean": 456 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_computer-use.json b/scripts/typescript-migration/results/_n8n_computer-use.json new file mode 100644 index 00000000000..3544c34586f --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_computer-use.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/computer-use", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:47:01.753Z", + "tasks": { + "typecheck": { + "runsMs": [ + 1367, + 1269, + 1255 + ], + "min": 1255, + "median": 1269, + "mean": 1297 + }, + "build": { + "runsMs": [ + 1149, + 1214, + 1133 + ], + "min": 1133, + "median": 1149, + "mean": 1165 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:51:49.540Z", + "tasks": { + "typecheck": { + "runsMs": [ + 792, + 599, + 588 + ], + "min": 588, + "median": 599, + "mean": 660 + }, + "build": { + "runsMs": [ + 535, + 549, + 530 + ], + "min": 530, + "median": 535, + "mean": 538 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_config.json b/scripts/typescript-migration/results/_n8n_config.json new file mode 100644 index 00000000000..eeadfc5795e --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_config.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/config", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:53:06.135Z", + "tasks": { + "typecheck": { + "runsMs": [ + 1022, + 1083, + 969 + ], + "min": 969, + "median": 1022, + "mean": 1024 + }, + "build": { + "runsMs": [ + 940, + 979, + 952 + ], + "min": 940, + "median": 952, + "mean": 957 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:54:38.495Z", + "tasks": { + "typecheck": { + "runsMs": [ + 507, + 529, + 584 + ], + "min": 507, + "median": 529, + "mean": 540 + }, + "build": { + "runsMs": [ + 596, + 591, + 525 + ], + "min": 525, + "median": 591, + "mean": 571 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_constants.json b/scripts/typescript-migration/results/_n8n_constants.json new file mode 100644 index 00000000000..88bdf53ea73 --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_constants.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/constants", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:55:20.856Z", + "tasks": { + "typecheck": { + "runsMs": [ + 687, + 670, + 664 + ], + "min": 664, + "median": 670, + "mean": 673 + }, + "build": { + "runsMs": [ + 691, + 685, + 692 + ], + "min": 685, + "median": 691, + "mean": 689 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:55:50.952Z", + "tasks": { + "typecheck": { + "runsMs": [ + 430, + 448, + 427 + ], + "min": 427, + "median": 430, + "mean": 435 + }, + "build": { + "runsMs": [ + 438, + 434, + 452 + ], + "min": 434, + "median": 438, + "mean": 442 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_crdt.json b/scripts/typescript-migration/results/_n8n_crdt.json new file mode 100644 index 00000000000..ccae32006c5 --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_crdt.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/crdt", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:56:21.223Z", + "tasks": { + "typecheck": { + "runsMs": [ + 981, + 915, + 921 + ], + "min": 915, + "median": 921, + "mean": 939 + }, + "build": { + "runsMs": [ + 808, + 814, + 806 + ], + "min": 806, + "median": 808, + "mean": 809 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T09:00:06.086Z", + "tasks": { + "typecheck": { + "runsMs": [ + 545, + 561, + 499 + ], + "min": 499, + "median": 545, + "mean": 535 + }, + "build": { + "runsMs": [ + 477, + 472, + 484 + ], + "min": 472, + "median": 477, + "mean": 478 + } + } + } + } +} diff --git a/scripts/typescript-migration/results/_n8n_n8n-benchmark.json b/scripts/typescript-migration/results/_n8n_n8n-benchmark.json new file mode 100644 index 00000000000..15d15b6852d --- /dev/null +++ b/scripts/typescript-migration/results/_n8n_n8n-benchmark.json @@ -0,0 +1,61 @@ +{ + "package": "@n8n/n8n-benchmark", + "runs": { + "before": { + "label": "before", + "tsVersion": "6.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:32:42.617Z", + "tasks": { + "typecheck": { + "runsMs": [ + 995, + 942, + 782 + ], + "min": 782, + "median": 942, + "mean": 906 + }, + "build": { + "runsMs": [ + 1013, + 948, + 913 + ], + "min": 913, + "median": 948, + "mean": 958 + } + } + }, + "after": { + "label": "after", + "tsVersion": "7.0.2", + "node": "v24.13.0", + "timestamp": "2026-07-15T08:37:20.138Z", + "tasks": { + "typecheck": { + "runsMs": [ + 479, + 476, + 507 + ], + "min": 476, + "median": 479, + "mean": 487 + }, + "build": { + "runsMs": [ + 926, + 578, + 577 + ], + "min": 577, + "median": 578, + "mean": 694 + } + } + } + } +}