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 HDR for single fetch #9954

Merged
merged 2 commits into from
Sep 6, 2024
Merged

Conversation

brophdawg11
Copy link
Contributor

No description provided.

Copy link

changeset-bot bot commented Sep 6, 2024

🦋 Changeset detected

Latest commit: 0e87073

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

@@ -112,6 +113,61 @@ test("Vite / HMR & HDR / mdx", async ({ page, viteDev }) => {
expect(page.errors).toEqual([]);
});

test.describe("single fetch", () => {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Didn't have copies of these tests with the flag enabled so didn't catch this until we migrated the changes to RR v7 where single fetch is always on

await revalidate();
} finally {
window.__remixHdrActive = 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.

We need to know during the single fetch dataStrategy if this is an HDR revalidation so we can force a server call since the route may have a new loader on the server we don't yet know about

Comment on lines -268 to -271
results[m.route.id] = {
type: "data",
result: null,
};
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 was unnecessary - should instead be assigning to results based on the result of handler() below - not inside in the handlerOverride. This will properly handle these types of routes which never make it to handlerOverride

@brophdawg11 brophdawg11 merged commit 5900332 into release-next Sep 6, 2024
9 checks passed
@brophdawg11 brophdawg11 deleted the brophdawg11/single-fetch-hdr branch September 6, 2024 16:09
Copy link
Contributor

github-actions bot commented Sep 6, 2024

🤖 Hello there,

We just published version 2.12.0-pre.2 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

github-actions bot commented Sep 9, 2024

🤖 Hello there,

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