Skip to content

Commit 6d5a75a

Browse files
committed
fix: replace stack-trace package with stacktracey to support commonjs
1 parent 51f19ce commit 6d5a75a

6 files changed

Lines changed: 47 additions & 19 deletions

File tree

packages/error-handler/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
},
3232
"dependencies": {
3333
"@fastify/sensible": "6.0.3",
34-
"stack-trace": "1.0.0-pre2"
34+
"stacktracey": "2.1.8"
3535
},
3636
"devDependencies": {
3737
"@prefabs.tech/eslint-config": "0.2.0",

packages/error-handler/src/errorHandler.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { STATUS_CODES } from "node:http";
22

33
import { HttpError } from "@fastify/sensible";
44
import { FastifyReply, FastifyRequest } from "fastify";
5-
import { parse } from "stack-trace";
5+
import StackTracey from "stacktracey";
66

77
import { CustomError } from "./utils/error";
88

@@ -20,6 +20,8 @@ export const errorHandler = (
2020

2121
const isStackTraceEnabled = request.server.stackTrace || false;
2222

23+
const stack = new StackTracey(error);
24+
2325
const isHttpError = error instanceof HttpError;
2426

2527
if (isHttpError) {
@@ -42,7 +44,7 @@ export const errorHandler = (
4244
};
4345

4446
if (isStackTraceEnabled && error.stack) {
45-
response.stack = parse(error);
47+
response.stack = stack.items;
4648
}
4749

4850
void reply.code(statusCode).send(response);
@@ -66,7 +68,7 @@ export const errorHandler = (
6668
statusCode: 500,
6769
};
6870

69-
response.stack = parse(error);
71+
response.stack = stack.items;
7072

7173
void reply.code(500).send(response);
7274

packages/error-handler/src/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,6 @@ export { CustomError } from "./utils/error";
1515

1616
export type { HttpErrors } from "@fastify/sensible";
1717

18+
export { default as StackTracey } from "stacktracey";
19+
1820
export type * from "./types";

packages/error-handler/src/types.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { FastifyError, FastifyRequest, FastifyReply } from "fastify";
2-
3-
import type { StackFrame } from "stack-trace";
2+
import StackTracey from "stacktracey";
43

54
type ErrorHandler = (
65
error: FastifyError,
@@ -18,10 +17,8 @@ type ErrorResponse = {
1817
code?: string;
1918
message: string;
2019
name: string;
21-
stack?: StackFrame[];
20+
stack?: StackTracey.Entry[];
2221
statusCode: number;
2322
};
2423

2524
export type { ErrorHandler, ErrorHandlerOptions, ErrorResponse };
26-
27-
export { type StackFrame } from "stack-trace";

packages/error-handler/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export default defineConfig(({ mode }) => {
2929
fastify: "Fastify",
3030
"fastify-plugin": "FastifyPlugin",
3131
"node:http": "NodeHttp",
32-
"stack-trace": "StackTrace",
32+
stacktracey: "StackTracey",
3333
},
3434
},
3535
},

pnpm-lock.yaml

Lines changed: 36 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)