From 08da4edc721e54cde5ea1acdc8fce54015b46a67 Mon Sep 17 00:00:00 2001 From: Phil Pluckthun Date: Tue, 30 Jul 2024 14:32:40 +0100 Subject: [PATCH] Bump stack trace limit when TS is used --- packages/cli-utils/src/ts/factory.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/cli-utils/src/ts/factory.ts b/packages/cli-utils/src/ts/factory.ts index 00585506..fa0183e5 100644 --- a/packages/cli-utils/src/ts/factory.ts +++ b/packages/cli-utils/src/ts/factory.ts @@ -44,6 +44,13 @@ export interface ProgramFactory { build(): ProgramContainer; } +/** Bumps the Error stack traces to a length of 100 for better debugging. */ +const bumpStackTraceLimit = () => { + if ('stackTraceLimit' in Error && Error.stackTraceLimit < 25) { + Error.stackTraceLimit = 25; + } +}; + export const programFactory = (params: ProgramFactoryParams): ProgramFactory => { const vfsMap = new Map(); const virtualMap: VirtualMap = new Map(); @@ -154,6 +161,8 @@ export const programFactory = (params: ProgramFactoryParams): ProgramFactory => }, build() { + bumpStackTraceLimit(); + // NOTE: This is necessary for `@0no-co/graphqlsp/api` to use the right instance // of the typescript library init({ typescript: ts });