From 6df4f3bd9d74de47dc8732e7f3b42bef42d2facf Mon Sep 17 00:00:00 2001 From: Erika <3019731+Princesseuh@users.noreply.github.com> Date: Wed, 6 Sep 2023 20:36:50 +0200 Subject: [PATCH] fix: MDX errors not having stack trace and a confusing name (#8438) * fix(mdx): Fix errors having weird names and no stack trace * chore: changeset --- .changeset/olive-deers-switch.md | 5 +++++ packages/integrations/mdx/src/index.ts | 7 +++++++ 2 files changed, 12 insertions(+) create mode 100644 .changeset/olive-deers-switch.md diff --git a/.changeset/olive-deers-switch.md b/.changeset/olive-deers-switch.md new file mode 100644 index 000000000000..84cba951a634 --- /dev/null +++ b/.changeset/olive-deers-switch.md @@ -0,0 +1,5 @@ +--- +'@astrojs/mdx': patch +--- + +Fix errors not having a stacktrace diff --git a/packages/integrations/mdx/src/index.ts b/packages/integrations/mdx/src/index.ts index 9053e824c81d..c27abb4d1137 100644 --- a/packages/integrations/mdx/src/index.ts +++ b/packages/integrations/mdx/src/index.ts @@ -153,7 +153,14 @@ export default function mdx(partialMdxOptions: Partial = {}): AstroI }; } catch (e: any) { const err: SSRError = e; + + // For some reason MDX puts the error location in the error's name, not very useful for us. + err.name = 'MDXError'; err.loc = { file: fileId, line: e.line, column: e.column }; + + // For another some reason, MDX doesn't include a stack trace. Weird + Error.captureStackTrace(err); + throw err; } },