Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: sourcemap takes into account special chars in output file #7574

Merged
merged 1 commit into from
Oct 2, 2023

Conversation

jacob-ebey
Copy link
Member

@jacob-ebey jacob-ebey commented Oct 2, 2023

Closes: #3768

  • Docs
  • Tests

Testing Strategy:

Initialized a new CF Pages template and built Remix into it. Ran the project, connected a debugger, threw an error in a loader and sourcemaps brought me back to the correct line in the source .ts route.

@changeset-bot
Copy link

changeset-bot bot commented Oct 2, 2023

🦋 Changeset detected

Latest commit: 1eb815b

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 16 packages
Name Type
@remix-run/dev Patch
create-remix Patch
remix Patch
@remix-run/architect Patch
@remix-run/cloudflare Patch
@remix-run/cloudflare-pages Patch
@remix-run/cloudflare-workers Patch
@remix-run/css-bundle Patch
@remix-run/deno Patch
@remix-run/eslint-config Patch
@remix-run/express Patch
@remix-run/node Patch
@remix-run/react Patch
@remix-run/serve Patch
@remix-run/server-runtime Patch
@remix-run/testing Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@@ -14,7 +14,7 @@ export async function write(
if ([".js", ".cjs", ".mjs"].some((ext) => file.path.endsWith(ext))) {
// fix sourceMappingURL to be relative to current path instead of /build
let filename = file.path.substring(file.path.lastIndexOf(path.sep) + 1);
let escapedFilename = filename.replace(/\./g, "\\.");
let escapedFilename = filename.replace(/([.[\]])/g, "\\$1");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this regex better than the 3-pass replace in #5809, but do we need to also escape the [ in the regex, as suggested in #3768 (comment)?

Suggested change
let escapedFilename = filename.replace(/([.[\]])/g, "\\$1");
let escapedFilename = filename.replace(/([.\[\]])/g, "\\$1");

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it's inside the existing group, so it's not needed.

Copy link
Contributor

@brophdawg11 brophdawg11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one question but LGTM otherwise

@github-actions
Copy link
Contributor

🤖 Hello there,

We just published version 2.1.0-pre.0 which includes this pull request. If you'd like to take it for a test run please try it out and let us know what you think!

Thanks!

@github-actions
Copy link
Contributor

🤖 Hello there,

We just published version 2.1.0 which includes this pull request. If you'd like to take it for a test run please try it out and let us know what you think!

Thanks!

@github-actions github-actions bot removed the awaiting release This issue has been fixed and will be released soon label Oct 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants