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

Remove AbortController and respect URL length limits #9626

Merged
merged 8 commits into from
Jun 18, 2024

Conversation

brophdawg11
Copy link
Contributor

@brophdawg11 brophdawg11 commented Jun 17, 2024

  • Using the abort controller causes log noise in StrictMode, and there's no real benefit to aborting since the response is still valid so might as well patch those routes to avoid subsequent requests if we navigate back to those routes.
  • Switch to a POST request if the URL goes beyond 4196 characters (a fairly conservative limit) to avoid running into URL or Request size limits
    • Only GET requests get the built-in Cache-Control response header

Copy link

changeset-bot bot commented Jun 17, 2024

🦋 Changeset detected

Latest commit: f298e0e

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/react Patch
@remix-run/testing Patch
@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/serve Patch
@remix-run/server-runtime 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

@@ -193,10 +187,7 @@ export function useFogOFWarDiscovery(
attributeFilter: ["data-discover", "href"],
});

return () => {
fogOfWar?.controller?.abort();
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This is technically against the "rules of react" because we're not cleaning up our side effect, but functionally it shouldn't cause any issues since the requests are additive and shouldn't have race conditions

@brophdawg11 brophdawg11 changed the title Remove AbortController and use a POST if needed Remove AbortController and check U Jun 17, 2024
@brophdawg11 brophdawg11 changed the title Remove AbortController and check U Remove AbortController and respect URL length limits Jun 17, 2024
knownGoodPaths.add(path);
nextPaths.delete(path);
return false;
}
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This could produce false positives, so we only add to knownGoodPaths in response to a manifest fetch where we matched on the server

@brophdawg11 brophdawg11 merged commit 2504efd into release-next Jun 18, 2024
3 checks passed
@brophdawg11 brophdawg11 deleted the brophdawg11/fow-abort-and-post branch June 18, 2024 17:06
Copy link
Contributor

🤖 Hello there,

We just published version 2.10.0-pre.3 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!

Copy link
Contributor

🤖 Hello there,

We just published version 2.10.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!

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.

1 participant