-
Notifications
You must be signed in to change notification settings - Fork 26.1k
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: Enable SearchParams to be displayed after redirect in Server Action #62582
fix: Enable SearchParams to be displayed after redirect in Server Action #62582
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for fixing! I think we need a test case for this. You can refer to https://github.com/vercel/next.js/tree/canary/test/e2e/app-dir/actions to see how you can add one.
@shuding
command. |
Just ran the test from my local env, LGTM! |
@chungweileong94 |
@coffeecupjapan Now that I look at the test that you wrote, I don't think this fixes the #62525. In the test, you redirect to EDIT: My bad, I was trying to patch it directly in my project, but it doesn't work that way for some reason, but it's working good in your repo🙏 |
Stats from current PRDefault Build (Increase detected
|
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
buildDuration | 13.7s | 13.9s | |
buildDurationCached | 7.5s | 6.3s | N/A |
nodeModulesSize | 197 MB | 197 MB | |
nextStartRea..uration (ms) | 434ms | 430ms | N/A |
Client Bundles (main, webpack)
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
2453-HASH.js gzip | 30.5 kB | 30.5 kB | N/A |
3304.HASH.js gzip | 181 B | 181 B | ✓ |
3f784ff6-HASH.js gzip | 53.7 kB | 53.7 kB | N/A |
8299-HASH.js gzip | 5.04 kB | 5.04 kB | N/A |
framework-HASH.js gzip | 45.2 kB | 45.2 kB | ✓ |
main-app-HASH.js gzip | 242 B | 242 B | ✓ |
main-HASH.js gzip | 32.1 kB | 32.2 kB | N/A |
webpack-HASH.js gzip | 1.7 kB | 1.7 kB | N/A |
Overall change | 45.6 kB | 45.6 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31 kB | 31 kB | ✓ |
Overall change | 31 kB | 31 kB | ✓ |
Client Pages
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
_app-HASH.js gzip | 196 B | 197 B | N/A |
_error-HASH.js gzip | 184 B | 184 B | ✓ |
amp-HASH.js gzip | 505 B | 505 B | ✓ |
css-HASH.js gzip | 324 B | 325 B | N/A |
dynamic-HASH.js gzip | 2.5 kB | 2.5 kB | N/A |
edge-ssr-HASH.js gzip | 258 B | 258 B | ✓ |
head-HASH.js gzip | 352 B | 352 B | ✓ |
hooks-HASH.js gzip | 370 B | 371 B | N/A |
image-HASH.js gzip | 4.2 kB | 4.2 kB | ✓ |
index-HASH.js gzip | 259 B | 259 B | ✓ |
link-HASH.js gzip | 2.67 kB | 2.67 kB | N/A |
routerDirect..HASH.js gzip | 314 B | 312 B | N/A |
script-HASH.js gzip | 386 B | 386 B | ✓ |
withRouter-HASH.js gzip | 309 B | 309 B | ✓ |
1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
Overall change | 6.56 kB | 6.56 kB | ✓ |
Client Build Manifests
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
_buildManifest.js gzip | 483 B | 485 B | N/A |
Overall change | 0 B | 0 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
index.html gzip | 528 B | 527 B | N/A |
link.html gzip | 541 B | 540 B | N/A |
withRouter.html gzip | 523 B | 521 B | N/A |
Overall change | 0 B | 0 B | ✓ |
Edge SSR bundle Size
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
edge-ssr.js gzip | 95.1 kB | 95.1 kB | N/A |
page.js gzip | 3.05 kB | 3.06 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Middleware size
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
middleware-b..fest.js gzip | 624 B | 625 B | N/A |
middleware-r..fest.js gzip | 151 B | 151 B | ✓ |
middleware.js gzip | 25.5 kB | 25.5 kB | N/A |
edge-runtime..pack.js gzip | 839 B | 839 B | ✓ |
Overall change | 990 B | 990 B | ✓ |
Next Runtimes
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
app-page-exp...dev.js gzip | 171 kB | 171 kB | N/A |
app-page-exp..prod.js gzip | 96.7 kB | 96.7 kB | N/A |
app-page-tur..prod.js gzip | 98.5 kB | 98.5 kB | N/A |
app-page-tur..prod.js gzip | 92.9 kB | 92.9 kB | N/A |
app-page.run...dev.js gzip | 150 kB | 150 kB | N/A |
app-page.run..prod.js gzip | 91.4 kB | 91.4 kB | N/A |
app-route-ex...dev.js gzip | 21.3 kB | 21.3 kB | ✓ |
app-route-ex..prod.js gzip | 15 kB | 15 kB | ✓ |
app-route-tu..prod.js gzip | 15 kB | 15 kB | ✓ |
app-route-tu..prod.js gzip | 14.8 kB | 14.8 kB | ✓ |
app-route.ru...dev.js gzip | 20.9 kB | 20.9 kB | ✓ |
app-route.ru..prod.js gzip | 14.8 kB | 14.8 kB | ✓ |
pages-api-tu..prod.js gzip | 9.51 kB | 9.51 kB | ✓ |
pages-api.ru...dev.js gzip | 9.79 kB | 9.79 kB | ✓ |
pages-api.ru..prod.js gzip | 9.51 kB | 9.51 kB | ✓ |
pages-turbo...prod.js gzip | 22.3 kB | 22.3 kB | ✓ |
pages.runtim...dev.js gzip | 23 kB | 23 kB | ✓ |
pages.runtim..prod.js gzip | 22.3 kB | 22.3 kB | ✓ |
server.runti..prod.js gzip | 50.6 kB | 50.6 kB | ✓ |
Overall change | 249 kB | 249 kB | ✓ |
build cache Overall increase ⚠️
vercel/next.js canary | coffeecupjapan/next.js coffeecup/ServerActionSearchParamsBug | Change | |
---|---|---|---|
0.pack gzip | 1.56 MB | 1.56 MB | N/A |
index.pack gzip | 105 kB | 105 kB | |
Overall change | 105 kB | 105 kB |
Diff details
Diff for middleware.js
Diff too large to display
Diff for app-page-exp..ntime.dev.js
Diff too large to display
Diff for app-page-exp..time.prod.js
Diff too large to display
Diff for app-page-tur..time.prod.js
Diff too large to display
Diff for app-page-tur..time.prod.js
Diff too large to display
Diff for app-page.runtime.dev.js
Diff too large to display
Diff for app-page.runtime.prod.js
Diff too large to display
Tests Passed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@coffeecupjapan thanks for the PR & test-case!
What?
Fixes #62525
Closes NEXT-2620
Since codes below do not consider searchParams,
redirect
in server action removes all searchParams passed from client side.93e4bb8#diff-c809d50461027cdba7c092e564818b1172133d337abc5c513f829c94c8483dc6R186
So I just add conditional branch for searchParams.
lint, prettier was applied.
Also I have done tests by commands below. and it was all passed.