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 extra DOM method call #8394

Merged
merged 1 commit into from
Aug 16, 2019
Merged

Remove extra DOM method call #8394

merged 1 commit into from
Aug 16, 2019

Conversation

Timer
Copy link
Member

@Timer Timer commented Aug 16, 2019

This should be slightly faster and smaller. We need to target -28B or more!

@Timer Timer added this to the 9.0.4 milestone Aug 16, 2019
@ijjk
Copy link
Member

ijjk commented Aug 16, 2019

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
zeit/next.js canary Timer/next.js trim-bytes Change
buildDuration 26.6s 26.4s -207ms
nodeModulesSize 41.3 MB 41.3 MB -44 B
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary Timer/next.js trim-bytes Change
main-HASH.js 17.9 kB 17.9 kB -27 B
main-HASH.js gzip 6.56 kB 6.56 kB -2 B
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
commons.HASH.js 190 kB 190 kB
commons.HASH.js gzip 61.6 kB 61.6 kB
Overall change -27 B
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary Timer/next.js trim-bytes Change
main-HASH.module.js 16.2 kB 16.2 kB -26 B
main-HASH.module.js gzip 6.27 kB 6.28 kB ⚠️ +3 B
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH.module.js gzip 746 B 746 B
commons.HASH.module.js 171 kB 171 kB
commons.HASH.module.js gzip 55.4 kB 55.4 kB
Overall change -26 B
Client Pages
zeit/next.js canary Timer/next.js trim-bytes Change
_app.js 1.9 kB 1.9 kB
_app.js gzip 905 B 905 B
_error.js 12.1 kB 12.1 kB
_error.js gzip 4.76 kB 4.76 kB
hooks.js 1.06 kB 1.06 kB
hooks.js gzip 601 B 600 B -1 B
index.js 343 B 343 B
index.js gzip 237 B 237 B
link.js 8.13 kB 8.13 kB
link.js gzip 3.49 kB 3.49 kB ⚠️ +1 B
routerDirect.js 429 B 429 B
routerDirect.js gzip 292 B 292 B
withRouter.js 439 B 439 B
withRouter.js gzip 289 B 290 B ⚠️ +1 B
Overall change
Client Pages Modern
zeit/next.js canary Timer/next.js trim-bytes Change
_app.module.js 1.79 kB 1.79 kB
_app.module.js gzip 865 B 865 B
_error.module.js 10.6 kB 10.6 kB
_error.module.js gzip 4.31 kB 4.31 kB
hooks.module.js 596 B 596 B
hooks.module.js gzip 354 B 354 B
index.module.js 319 B 319 B
index.module.js gzip 238 B 238 B
link.module.js 8.52 kB 8.52 kB
link.module.js gzip 3.67 kB 3.67 kB
routerDirect.module.js 417 B 417 B
routerDirect.module.js gzip 292 B 292 B
withRouter.module.js 427 B 427 B
withRouter.module.js gzip 291 B 291 B
Overall change
Fetched pages
zeit/next.js canary Timer/next.js trim-bytes Change
link 2.8 kB 2.8 kB
link gzip 849 B 849 B
index 2.75 kB 2.75 kB
index gzip 837 B 842 B ⚠️ +5 B
withRouter 2.81 kB 2.81 kB
withRouter gzip 835 B 838 B ⚠️ +3 B
Overall change

Diffs

Diff for main-HASH.js
@@ -1654,7 +1654,7 @@ function () {
                 url = isDependency ? route : _this2.assetPrefix + "/_next/static/" + encodeURIComponent(_this2.buildId) + "/pages" + scriptRoute; // n.b. If preload is not supported, we fall back to `loadPage` which has
                 // its own deduping mechanism.
 
-                if (!(document.querySelector("link[rel=\"preload\"][href^=\"" + url + "\"]") || document.querySelector("script[data-next-page=\"" + route + "\"]"))) {
+                if (!document.querySelector("link[rel=\"preload\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]")) {
                   _context2.next = 9;
                   break;
                 }
Diff for main-HASH.module.js
@@ -1505,7 +1505,7 @@ class PageLoader {
       const url = isDependency ? route : _this2.assetPrefix + "/_next/static/" + encodeURIComponent(_this2.buildId) + "/pages" + scriptRoute; // n.b. If preload is not supported, we fall back to `loadPage` which has
       // its own deduping mechanism.
 
-      if (document.querySelector("link[rel=\"preload\"][href^=\"" + url + "\"]") || document.querySelector("script[data-next-page=\"" + route + "\"]")) {
+      if (document.querySelector("link[rel=\"preload\"][href^=\"" + url + "\"], script[data-next-page=\"" + route + "\"]")) {
         return;
       } // Inspired by quicklink, license: https://github.com/GoogleChromeLabs/quicklink/blob/master/LICENSE

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
zeit/next.js canary Timer/next.js trim-bytes Change
buildDuration 27.9s 26.8s -1.1s
nodeModulesSize 41.3 MB 41.3 MB -44 B
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary Timer/next.js trim-bytes Change
main-HASH.js 17.9 kB 17.9 kB -27 B
main-HASH.js gzip 6.56 kB 6.56 kB -2 B
webpack-HASH.js 1.53 kB 1.53 kB
webpack-HASH.js gzip 746 B 746 B
commons.HASH.js 190 kB 190 kB
commons.HASH.js gzip 61.6 kB 61.6 kB
Overall change -27 B
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary Timer/next.js trim-bytes Change
main-HASH.module.js 16.2 kB 16.2 kB -26 B
main-HASH.module.js gzip 6.28 kB 6.28 kB ⚠️ +2 B
webpack-HASH.module.js 1.53 kB 1.53 kB
webpack-HASH.module.js gzip 746 B 746 B
commons.HASH.module.js 171 kB 171 kB
commons.HASH.module.js gzip 55.4 kB 55.4 kB
Overall change -26 B
Client Pages
zeit/next.js canary Timer/next.js trim-bytes Change
_app.js 1.9 kB 1.9 kB
_app.js gzip 905 B 905 B
_error.js 12.1 kB 12.1 kB
_error.js gzip 4.76 kB 4.76 kB
hooks.js 1.06 kB 1.06 kB
hooks.js gzip 600 B 600 B
index.js 343 B 343 B
index.js gzip 237 B 237 B
link.js 8.13 kB 8.13 kB
link.js gzip 3.49 kB 3.49 kB
routerDirect.js 429 B 429 B
routerDirect.js gzip 292 B 292 B
withRouter.js 439 B 439 B
withRouter.js gzip 290 B 290 B
Overall change
Client Pages Modern
zeit/next.js canary Timer/next.js trim-bytes Change
_app.module.js 1.79 kB 1.79 kB
_app.module.js gzip 865 B 865 B
_error.module.js 10.6 kB 10.6 kB
_error.module.js gzip 4.31 kB 4.31 kB
hooks.module.js 596 B 596 B
hooks.module.js gzip 354 B 354 B
index.module.js 319 B 319 B
index.module.js gzip 238 B 238 B
link.module.js 8.52 kB 8.52 kB
link.module.js gzip 3.67 kB 3.67 kB
routerDirect.module.js 417 B 417 B
routerDirect.module.js gzip 292 B 292 B
withRouter.module.js 427 B 427 B
withRouter.module.js gzip 291 B 291 B
Overall change
Serverless bundles
zeit/next.js canary Timer/next.js trim-bytes Change
_error.js 247 kB 247 kB
_error.js gzip 66.3 kB 66.3 kB -1 B
hooks.html 2.87 kB 2.87 kB
hooks.html gzip 865 B 867 B ⚠️ +2 B
index.js 248 kB 248 kB
index.js gzip 66.6 kB 66.6 kB ⚠️ +2 B
link.js 255 kB 255 kB
link.js gzip 68.8 kB 68.8 kB ⚠️ +2 B
routerDirect.js 248 kB 248 kB
routerDirect.js gzip 66.5 kB 66.5 kB ⚠️ +1 B
withRouter.js 248 kB 248 kB
withRouter.js gzip 66.6 kB 66.6 kB ⚠️ +2 B
Overall change

@Timer Timer merged commit a04a5f0 into vercel:canary Aug 16, 2019
@Timer Timer deleted the trim-bytes branch August 16, 2019 16:00
@vercel vercel locked as resolved and limited conversation to collaborators Feb 1, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants