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

Ensure index rewrite is matched with i18n correctly #20509

Merged
merged 4 commits into from Dec 28, 2020

Conversation

ijjk
Copy link
Member

@ijjk ijjk commented Dec 27, 2020

This makes sure we don't generate the wrong locale source variant for the rewrite requiring a / on the end which won't ever be added causing the rewrite to never match. Additional tests have been added to ensure this specific rewrite is working correctly.

Fixes: #20508

@vercel vercel bot temporarily deployed to Preview December 27, 2020 02:16 Inactive
@ijjk
Copy link
Member Author

ijjk commented Dec 27, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
buildDuration 9.8s 9.9s ⚠️ +70ms
nodeModulesSize 82.6 MB 82.6 MB ⚠️ +507 B
Page Load Tests Overall increase ✓
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
/ failed reqs 0 0
/ total time (seconds) 2.041 1.96 -0.08
/ avg req/sec 1224.76 1275.33 +50.57
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.203 1.229 ⚠️ +0.03
/error-in-render avg req/sec 2078.2 2034.97 ⚠️ -43.23
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
677f882d2ed8..5e70.js gzip 12.8 kB 12.8 kB
framework.HASH.js gzip 39 kB 39 kB
main-e0d2962..b163.js gzip 6.56 kB 6.56 kB
webpack-95c2..e870.js gzip 751 B 751 B
Overall change 59 kB 59 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
polyfills-d3..23f6.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_app-0d19cb6..5497.js gzip 1.28 kB 1.28 kB
_error-85785..a9f3.js gzip 3.44 kB 3.44 kB
hooks-42456f..0c06.js gzip 887 B 887 B
index-8081ce..e44f.js gzip 227 B 227 B
link-0ab9f83..fa00.js gzip 1.61 kB 1.61 kB
routerDirect..c3d8.js gzip 303 B 303 B
withRouter-0..a68e.js gzip 302 B 302 B
Overall change 8.05 kB 8.05 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_buildManifest.js gzip 323 B 323 B
Overall change 323 B 323 B
Rendered Page Sizes
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
index.html gzip 612 B 612 B
link.html gzip 620 B 620 B
withRouter.html gzip 607 B 607 B
Overall change 1.84 kB 1.84 kB

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
buildDuration 11.6s 11.4s -163ms
nodeModulesSize 82.6 MB 82.6 MB ⚠️ +507 B
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
677f882d2ed8..5e70.js gzip 12.8 kB 12.8 kB
framework.HASH.js gzip 39 kB 39 kB
main-e0d2962..b163.js gzip 6.56 kB 6.56 kB
webpack-95c2..e870.js gzip 751 B 751 B
Overall change 59 kB 59 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
polyfills-d3..23f6.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_app-0d19cb6..5497.js gzip 1.28 kB 1.28 kB
_error-85785..a9f3.js gzip 3.44 kB 3.44 kB
hooks-42456f..0c06.js gzip 887 B 887 B
index-8081ce..e44f.js gzip 227 B 227 B
link-0ab9f83..fa00.js gzip 1.61 kB 1.61 kB
routerDirect..c3d8.js gzip 303 B 303 B
withRouter-0..a68e.js gzip 302 B 302 B
Overall change 8.05 kB 8.05 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_buildManifest.js gzip 323 B 323 B
Overall change 323 B 323 B
Serverless bundles Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_error.js 1 MB 1 MB ⚠️ +41 B
404.html 2.67 kB 2.67 kB
hooks.html 1.92 kB 1.92 kB
index.js 1 MB 1 MB ⚠️ +41 B
link.js 1.06 MB 1.06 MB ⚠️ +41 B
routerDirect.js 1.05 MB 1.05 MB ⚠️ +41 B
withRouter.js 1.05 MB 1.05 MB ⚠️ +41 B
Overall change 5.16 MB 5.16 MB ⚠️ +205 B
Commit: 42735d5

async rewrites() {
return [
{
source: '/',
Copy link
Member

Choose a reason for hiding this comment

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

Does this also match /nl?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yeah it matches all locales unless locale: false is specified, updated tests to reflect/test this

@vercel vercel bot temporarily deployed to Preview December 28, 2020 17:21 Inactive
@ijjk ijjk requested a review from Timer December 28, 2020 17:21
@ijjk
Copy link
Member Author

ijjk commented Dec 28, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
buildDuration 10.4s 10.5s ⚠️ +68ms
nodeModulesSize 82.6 MB 82.6 MB ⚠️ +507 B
Page Load Tests Overall decrease ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
/ failed reqs 0 0
/ total time (seconds) 2.117 2.167 ⚠️ +0.05
/ avg req/sec 1180.69 1153.42 ⚠️ -27.27
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.499 1.489 -0.01
/error-in-render avg req/sec 1668.2 1679.16 +10.96
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
677f882d2ed8..5e70.js gzip 12.8 kB 12.8 kB
framework.HASH.js gzip 39 kB 39 kB
main-e0d2962..b163.js gzip 6.56 kB 6.56 kB
webpack-95c2..e870.js gzip 751 B 751 B
Overall change 59 kB 59 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
polyfills-d3..23f6.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_app-0d19cb6..5497.js gzip 1.28 kB 1.28 kB
_error-85785..a9f3.js gzip 3.44 kB 3.44 kB
hooks-42456f..0c06.js gzip 887 B 887 B
index-8081ce..e44f.js gzip 227 B 227 B
link-0ab9f83..fa00.js gzip 1.61 kB 1.61 kB
routerDirect..c3d8.js gzip 303 B 303 B
withRouter-0..a68e.js gzip 302 B 302 B
Overall change 8.05 kB 8.05 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_buildManifest.js gzip 323 B 323 B
Overall change 323 B 323 B
Rendered Page Sizes
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
index.html gzip 612 B 612 B
link.html gzip 620 B 620 B
withRouter.html gzip 607 B 607 B
Overall change 1.84 kB 1.84 kB

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
buildDuration 12.1s 12.2s ⚠️ +99ms
nodeModulesSize 82.6 MB 82.6 MB ⚠️ +507 B
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
677f882d2ed8..5e70.js gzip 12.8 kB 12.8 kB
framework.HASH.js gzip 39 kB 39 kB
main-e0d2962..b163.js gzip 6.56 kB 6.56 kB
webpack-95c2..e870.js gzip 751 B 751 B
Overall change 59 kB 59 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
polyfills-d3..23f6.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_app-0d19cb6..5497.js gzip 1.28 kB 1.28 kB
_error-85785..a9f3.js gzip 3.44 kB 3.44 kB
hooks-42456f..0c06.js gzip 887 B 887 B
index-8081ce..e44f.js gzip 227 B 227 B
link-0ab9f83..fa00.js gzip 1.61 kB 1.61 kB
routerDirect..c3d8.js gzip 303 B 303 B
withRouter-0..a68e.js gzip 302 B 302 B
Overall change 8.05 kB 8.05 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_buildManifest.js gzip 323 B 323 B
Overall change 323 B 323 B
Serverless bundles Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_error.js 1 MB 1 MB ⚠️ +41 B
404.html 2.67 kB 2.67 kB
hooks.html 1.92 kB 1.92 kB
index.js 1 MB 1 MB ⚠️ +41 B
link.js 1.06 MB 1.06 MB ⚠️ +41 B
routerDirect.js 1.05 MB 1.05 MB ⚠️ +41 B
withRouter.js 1.05 MB 1.05 MB ⚠️ +41 B
Overall change 5.16 MB 5.16 MB ⚠️ +205 B
Commit: e0d562a

Copy link
Member

@Timer Timer left a comment

Choose a reason for hiding this comment

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

LGTM

@Timer Timer enabled auto-merge (squash) December 28, 2020 17:33
@vercel vercel bot temporarily deployed to Preview December 28, 2020 17:58 Inactive
@ijjk
Copy link
Member Author

ijjk commented Dec 28, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
buildDuration 9s 9s ⚠️ +5ms
nodeModulesSize 82.6 MB 82.6 MB ⚠️ +507 B
Page Load Tests Overall increase ✓
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
/ failed reqs 0 0
/ total time (seconds) 1.763 1.741 -0.02
/ avg req/sec 1417.76 1436.17 +18.41
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.105 1.112 ⚠️ +0.01
/error-in-render avg req/sec 2261.98 2248.64 ⚠️ -13.34
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
677f882d2ed8..1e91.js gzip 12.8 kB 12.8 kB
framework.HASH.js gzip 39 kB 39 kB
main-e0d2962..b163.js gzip 6.56 kB 6.56 kB
webpack-95c2..e870.js gzip 751 B 751 B
Overall change 59 kB 59 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
polyfills-d3..23f6.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_app-0d19cb6..5497.js gzip 1.28 kB 1.28 kB
_error-85785..a9f3.js gzip 3.44 kB 3.44 kB
hooks-42456f..0c06.js gzip 887 B 887 B
index-8081ce..e44f.js gzip 227 B 227 B
link-0ab9f83..fa00.js gzip 1.61 kB 1.61 kB
routerDirect..c3d8.js gzip 303 B 303 B
withRouter-0..a68e.js gzip 302 B 302 B
Overall change 8.05 kB 8.05 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_buildManifest.js gzip 323 B 323 B
Overall change 323 B 323 B
Rendered Page Sizes
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
index.html gzip 615 B 615 B
link.html gzip 621 B 621 B
withRouter.html gzip 609 B 609 B
Overall change 1.84 kB 1.84 kB

Serverless Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
buildDuration 10.5s 10.8s ⚠️ +260ms
nodeModulesSize 82.6 MB 82.6 MB ⚠️ +507 B
Client Bundles (main, webpack, commons)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
677f882d2ed8..1e91.js gzip 12.8 kB 12.8 kB
framework.HASH.js gzip 39 kB 39 kB
main-e0d2962..b163.js gzip 6.56 kB 6.56 kB
webpack-95c2..e870.js gzip 751 B 751 B
Overall change 59 kB 59 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
polyfills-d3..23f6.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_app-0d19cb6..5497.js gzip 1.28 kB 1.28 kB
_error-85785..a9f3.js gzip 3.44 kB 3.44 kB
hooks-42456f..0c06.js gzip 887 B 887 B
index-8081ce..e44f.js gzip 227 B 227 B
link-0ab9f83..fa00.js gzip 1.61 kB 1.61 kB
routerDirect..c3d8.js gzip 303 B 303 B
withRouter-0..a68e.js gzip 302 B 302 B
Overall change 8.05 kB 8.05 kB
Client Build Manifests
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_buildManifest.js gzip 323 B 323 B
Overall change 323 B 323 B
Serverless bundles Overall increase ⚠️
vercel/next.js canary ijjk/next.js i18n/index-rewrite Change
_error.js 1 MB 1 MB ⚠️ +41 B
404.html 2.67 kB 2.67 kB
hooks.html 1.92 kB 1.92 kB
index.js 1 MB 1 MB ⚠️ +41 B
link.js 1.06 MB 1.06 MB ⚠️ +41 B
routerDirect.js 1.05 MB 1.05 MB ⚠️ +41 B
withRouter.js 1.05 MB 1.05 MB ⚠️ +41 B
Overall change 5.16 MB 5.16 MB ⚠️ +205 B
Commit: 194c8d2

@kodiakhq kodiakhq bot merged commit db329fe into vercel:canary Dec 28, 2020
@ijjk ijjk deleted the i18n/index-rewrite branch December 28, 2020 19:21
@vercel vercel locked as resolved and limited conversation to collaborators Jan 29, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rewrite for / doesn't match with i18n on a non-locale: false rewrite
2 participants