Skip to content

Conversation

guybedford
Copy link
Contributor

@guybedford guybedford commented Nov 3, 2020

This adds inlining for Babel and the Babel plugins used in next.

This is based to the PR at #18823.

The approach is to make one large bundle and then separate out the individual packages from that in order to avoid duplications.

In the first attempt the Babel bundle size was 10MB... using "resolutions" in the Yarn workspace to reduce the duplicated packages this was brought down to a 2.8MB bundle for Babel and all the used plugins which is exactly the expected file size here.

This will thus add a 2.8MB download size to the next package, but save downloading any babel dependencies separately, removing a large number of package dependencies from the overall install.

@ijjk
Copy link
Member

ijjk commented Nov 3, 2020

Failing test suites

Commit: 79b7ef7

test/integration/font-optimization/test/index.test.js

  • Font optimization for SSR apps > should minify the css
  • Font optimization for emulated serverless apps > should minify the css
  • Font optimization for serverless apps > should minify the css
Expand output

● Font optimization for SSR apps › should minify the css

expect(received).toStrictEqual(expected) // deep equality

- Expected  - 1
+ Received  + 1

  Object {
    "https://fonts.googleapis.com/css2?family=Modak": "@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEsnME.woff) format('woff')}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMB-hR77LKVTy8.woff2) format('woff2');unicode-range:U+0900-097F,U+1CD0-1CF6,U+1CF8-1CF9,U+200C-200D,U+20A8,U+20B9,U+25CC,U+A830-A839,U+A8E0-A8FB}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMO-hR77LKVTy8.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMA-hR77LKV.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
    "https://fonts.googleapis.com/css2?family=Roboto:wght@700": "@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlvAA.woff) format('woff')}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCRc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfABc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCBc4AMP6lbBP.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfBxc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0370-03FF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCxc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfChc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfBBc4AMP6lQ.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
-   "https://fonts.googleapis.com/css?family=Voces": "@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDmk.woff) format('woff')}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PIDm_6pClI_ik.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDm_6pClI.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
+   "https://fonts.googleapis.com/css?family=Voces": "@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDmk.woff?ce=43710007) format('woff')}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PIDm_6pClI_ik.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDm_6pClI.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
  }

  101 |     })
  102 | 
> 103 |     expect(testCss).toStrictEqual(snapshotCss)
      |                     ^
  104 |   })
  105 | }
  106 | 

  at Object.<anonymous> (integration/font-optimization/test/index.test.js:103:21)

● Font optimization for serverless apps › should minify the css

expect(received).toStrictEqual(expected) // deep equality

- Expected  - 1
+ Received  + 1

  Object {
    "https://fonts.googleapis.com/css2?family=Modak": "@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEsnME.woff) format('woff')}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMB-hR77LKVTy8.woff2) format('woff2');unicode-range:U+0900-097F,U+1CD0-1CF6,U+1CF8-1CF9,U+200C-200D,U+20A8,U+20B9,U+25CC,U+A830-A839,U+A8E0-A8FB}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMO-hR77LKVTy8.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMA-hR77LKV.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
    "https://fonts.googleapis.com/css2?family=Roboto:wght@700": "@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlvAA.woff) format('woff')}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCRc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfABc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCBc4AMP6lbBP.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfBxc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0370-03FF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCxc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfChc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfBBc4AMP6lQ.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
-   "https://fonts.googleapis.com/css?family=Voces": "@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDmk.woff) format('woff')}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PIDm_6pClI_ik.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDm_6pClI.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
+   "https://fonts.googleapis.com/css?family=Voces": "@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDmk.woff?ce=43710007) format('woff')}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PIDm_6pClI_ik.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDm_6pClI.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
  }

  101 |     })
  102 | 
> 103 |     expect(testCss).toStrictEqual(snapshotCss)
      |                     ^
  104 |   })
  105 | }
  106 | 

  at Object.<anonymous> (integration/font-optimization/test/index.test.js:103:21)

● Font optimization for emulated serverless apps › should minify the css

expect(received).toStrictEqual(expected) // deep equality

- Expected  - 1
+ Received  + 1

  Object {
    "https://fonts.googleapis.com/css2?family=Modak": "@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEsnME.woff) format('woff')}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMB-hR77LKVTy8.woff2) format('woff2');unicode-range:U+0900-097F,U+1CD0-1CF6,U+1CF8-1CF9,U+200C-200D,U+20A8,U+20B9,U+25CC,U+A830-A839,U+A8E0-A8FB}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMO-hR77LKVTy8.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Modak';font-style:normal;font-weight:400;src:local('Modak'),url(https://fonts.gstatic.com/s/modak/v5/EJRYQgs1XtIEskMA-hR77LKV.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
    "https://fonts.googleapis.com/css2?family=Roboto:wght@700": "@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlvAA.woff) format('woff')}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCRc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfABc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCBc4AMP6lbBP.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfBxc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0370-03FF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfCxc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfChc4AMP6lbBP.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Roboto';font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmWUlfBBc4AMP6lQ.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
-   "https://fonts.googleapis.com/css?family=Voces": "@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDmk.woff) format('woff')}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PIDm_6pClI_ik.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDm_6pClI.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
+   "https://fonts.googleapis.com/css?family=Voces": "@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDmk.woff?ce=43710007) format('woff')}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PIDm_6pClI_ik.woff2) format('woff2');unicode-range:U+0100-024F,U+0259,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Voces';font-style:normal;font-weight:400;src:local('Voces Regular'),local('Voces-Regular'),url(https://fonts.gstatic.com/s/voces/v10/-F6_fjJyLyU8d7PGDm_6pClI.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}",
  }

  101 |     })
  102 | 
> 103 |     expect(testCss).toStrictEqual(snapshotCss)
      |                     ^
  104 |   })
  105 | }
  106 | 

  at Object.<anonymous> (integration/font-optimization/test/index.test.js:103:21)

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@ijjk
Copy link
Member

ijjk commented Nov 3, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 11.1s 11.2s ⚠️ +169ms
nodeModulesSize 90.5 MB 84.7 MB -5.75 MB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.145 2.111 -0.03
/ avg req/sec 1165.73 1184.19 +18.46
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.137 1.172 ⚠️ +0.03
/error-in-render avg req/sec 2199.13 2132.31 ⚠️ -66.82
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.5s 12.6s ⚠️ +97ms
nodeModulesSize 90.5 MB 84.7 MB -5.75 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: fb02def

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: fb02def

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.8s 13.2s ⚠️ +404ms
nodeModulesSize 90.5 MB 84.7 MB -5.75 MB
Page Load Tests Overall increase ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.385 2.428 ⚠️ +0.04
/ avg req/sec 1048.22 1029.61 ⚠️ -18.61
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.251 1.212 -0.04
/error-in-render avg req/sec 1998.14 2062.61 +64.47
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.2s 13.9s -340ms
nodeModulesSize 90.5 MB 84.7 MB -5.75 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: cb1fe82

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: cb1fe82

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: 3a6d11c

test/integration/babel/test/index.test.js

  • Babel > Rendering via HTTP > Should compile a page with flowtype correctly
Expand output

● Babel › Rendering via HTTP › Should compile a page with flowtype correctly

expect(received).toBe(expected) // Object.is equality

Expected: "Test Babel"
Received: ""

  12 |     it('Should compile a page with flowtype correctly', async () => {
  13 |       const $ = await get$('/')
> 14 |       expect($('#text').text()).toBe('Test Babel')
     |                                 ^
  15 |     })
  16 |   })
  17 | }

  at Object.<anonymous> (integration/babel/test/rendering.js:14:33)

test/integration/absolute-assetprefix/test/index.test.js

  • absolute assetPrefix with path prefix > should not fetch static data from a CDN
  • absolute assetPrefix with path prefix > should fetch from cache correctly
  • absolute assetPrefix with path prefix > should work with getStaticPaths prerendered
  • absolute assetPrefix with path prefix > should work with getStaticPaths fallback
  • absolute assetPrefix with path prefix > should work with getServerSideProps
Expand output

● absolute assetPrefix with path prefix › should not fetch static data from a CDN

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● absolute assetPrefix with path prefix › should fetch from cache correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● absolute assetPrefix with path prefix › should work with getStaticPaths prerendered

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● absolute assetPrefix with path prefix › should work with getStaticPaths fallback

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● absolute assetPrefix with path prefix › should work with getServerSideProps

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/absolute-assetprefix/test/index.test.js:65:18

test/integration/amp-export-validation/test/index.test.js

  • AMP Validation on Export > should have shown errors during build
  • AMP Validation on Export > should export AMP pages
  • AMP Validation on Export > shows AMP warning without throwing error
  • AMP Validation on Export > throws error on AMP error
  • AMP Validation on Export > shows warning and error when throwing error
Expand output

● AMP Validation on Export › should have shown errors during build

expect(received).toMatch(expected)

Expected pattern: /error.*The parent tag of tag 'img' is 'div', but it can only be 'i-amphtml-sizer-intrinsic'\./
Received string:  "info  - Creating an optimized production build...
info  - Using external babel configuration from /home/runner/work/next.js/next.js/test/.babelrc
warn  - Detected next.config.js, no exported configuration found. https://err.sh/vercel/next.js/empty-configuration
Failed to compile.·
./pages/cat.js
TypeError: /home/runner/work/next.js/next.js/test/integration/amp-export-validation/pages/cat.js: Cannot read property 'types' of undefined··
> Build error occurred
Error: > Build failed because of webpack errors

  13 | if(clientResult.errors.length>0){result={warnings:[...clientResult.warnings],errors:[...clientResult.errors]};}else{const serverResult=await(0,_compiler.runCompiler)(configs[1]);result={warnings:[...clientResult.warnings,...serverResult.warnings],errors:[...clientResult.errors,...serverResult.errors]};}}else{result=await(0,_compiler.runCompiler)(configs);}const webpackBuildEnd=process.hrtime(webpackBuildStart);if(buildSpinner){buildSpinner.stopAndPersist();}result=(0,_formatWebpackMessages.default)(result);if(result.errors.length>0){// Only keep the first error. Others are often indicative
  14 | // of the same problem, but confuse the reader with noise.
> 15 | if(result.errors.length>1){result.errors.length=1;}const error=result.errors.join('\n\n');console.error(_chalk.default.red('Failed to compile.\n'));if(error.indexOf('private-next-pages')>-1&&error.indexOf('does not contain a default export')>-1){const page_name_regex=/*#__PURE__*/_wrapRegExp(/'private\x2Dnext\x2Dpages\/([\0-&\(-\uFFFF]*)'/,{page_name:1});const parsed=page_name_regex.exec(error);const page_name=parsed&&parsed.groups&&parsed.groups.page_name;throw new Error(`webpack build failed: found page without a React Component as default export in pages/${page_name}\n\nSee https://err.sh/vercel/next.js/page-without-valid-component for more info.`);}console.error(error);console.error();if(error.indexOf('private-next-pages')>-1||error.indexOf('__next_polyfill__')>-1){throw new Error('> webpack config.resolve.alias was incorrectly overridden. https://err.sh/vercel/next.js/invalid-resolve-alias');}throw new Error('> Build failed because of webpack errors');}else{telemetry.record((0,_events.eventBuildCompleted)(pagePaths,{durationInSeconds:webpackBuildEnd[0]}));if(result.warnings.length>0){Log.warn('Compiled with warnings\n');console.warn(result.warnings.join('\n\n'));console.warn();}else{Log.info('Compiled successfully');}}const postCompileSpinner=(0,_spinner.default)({prefixText:`${Log.prefixes.info} Collecting page data`});const manifestPath=_path.default.join(distDir,isLikeServerless?_constants2.SERVERLESS_DIRECTORY:_constants2.SERVER_DIRECTORY,_constants2.PAGES_MANIFEST);const buildManifestPath=_path.default.join(distDir,_constants2.BUILD_MANIFEST);const ssgPages=new Set();const ssgStaticFallbackPages=new Set();const ssgBlockingFallbackPages=new Set();const staticPages=new Set();const invalidPages=new Set();const hybridAmpPages=new Set();const serverPropsPages=new Set();const additionalSsgPaths=new Map();const pageInfos=new Map();const pagesManifest=JSON.parse(await _fs.promises.readFile(manifestPath,'utf8'));const buildManifest=JSON.parse(await _fs.promises.readFile(buildManifestPath,'utf8'));let customAppGetInitialProps;let namedExports;process.env.NEXT_PHASE=_constants2.PHASE_PRODUCTION_BUILD;const staticCheckWorkers=new _jestWorker.default(staticCheckWorker,{numWorkers:config.experimental.cpus,enableWorkerThreads:config.experimental.workerThreads});staticCheckWorkers.getStdout().pipe(process.stdout);staticCheckWorkers.getStderr().pipe(process.stderr);const runtimeEnvConfig={publicRuntimeConfig:config.publicRuntimeConfig,serverRuntimeConfig:config.serverRuntimeConfig};hasNonStaticErrorPage=hasCustomErrorPage&&(await(0,_utils2.hasCustomGetInitialProps)((0,_require.getPagePath)('/_error',distDir,isLikeServerless),runtimeEnvConfig,false));const analysisBegin=process.hrtime();await Promise.all(pageKeys.map(async page=>{const actualPage=(0,_normalizePagePath.normalizePagePath)(page);const[selfSize,allSize]=await(0,_utils2.getJsPageSizeInKb)(actualPage,distDir,buildManifest,config.experimental.modern);let isSsg=false;let isStatic=false;let isHybridAmp=false;let ssgPageRoutes=null;const nonReservedPage=!page.match(/^\/(_app|_error|_document|api(\/|$))/);if(nonReservedPage){const serverBundle=(0,_require.getPagePath)(page,distDir,isLikeServerless);if(customAppGetInitialProps===undefined){customAppGetInitialProps=await(0,_utils2.hasCustomGetInitialProps)(isLikeServerless?serverBundle:(0,_require.getPagePath)('/_app',distDir,isLikeServerless),runtimeEnvConfig,true);namedExports=(0,_utils2.getNamedExports)(isLikeServerless?serverBundle:(0,_require.getPagePath)('/_app',distDir,isLikeServerless),runtimeEnvConfig);if(customAppGetInitialProps){console.warn(_chalk.default.bold.yellow(`Warning: `)+_chalk.default.yellow(`You have opted-out of Automatic Static Optimization due to \`getInitialProps\` in \`pages/_app\`. This does not opt-out pages with \`getStaticProps\``));console.warn('Read more: https://err.sh/next.js/opt-out-auto-static-optimization\n');}}try{var _config$i18n,_config$i18n2;let workerResult=await staticCheckWorkers.isPageStatic(page,serverBundle,runtimeEnvConfig,(_config$i18n=config.i18n)==null?void 0:_config$i18n.locales,(_config$i18n2=config.i18n)==null?void 0:_config$i18n2.defaultLocale);if(workerResult.isHybridAmp){isHybridAmp=true;hybridAmpPages.add(page);}if(workerResult.hasStaticProps){ssgPages.add(page);isSsg=true;if(workerResult.prerenderRoutes){additionalSsgPaths.set(page,workerResult.prerenderRoutes);ssgPageRoutes=workerResult.prerenderRoutes;}if(workerResult.prerenderFallback==='blocking'){ssgBlockingFallbackPages.add(page);}else if(workerResult.prerenderFallback===true){ssgStaticFallbackPages.add(page);}}else if(workerResult.hasServerProps){serverPropsPages.add(page);}else if(workerResult.isStatic&&customAppGetInitialProps===false){staticPages.add(page);isStatic=true;}if(hasPages404&&page==='/404'){if(!workerResult.isStatic&&!workerResult.hasStaticProps){throw new Error(_constants.PAGES_404_GET_INITIAL_PROPS_ERROR);}// we need to ensure the 404 lambda is present since we use
     |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      ^
  16 | // it when _app has getInitialProps
  17 | if(customAppGetInitialProps&&!workerResult.hasStaticProps){staticPages.delete(page);}}}catch(err){if(err.message!=='INVALID_DEFAULT_EXPORT')throw err;invalidPages.add(page);}}pageInfos.set(page,{size:selfSize,totalSize:allSize,static:isStatic,isSsg,isHybridAmp,ssgPageRoutes,initialRevalidateSeconds:false});}));staticCheckWorkers.end();if(serverPropsPages.size>0||ssgPages.size>0){// We update the routes manifest after the build with the
  18 | // data routes since we can't determine these until after build

  at build (../packages/next/dist/build/index.js:15:918)
  "
  at Object.<anonymous> (integration/amp-export-validation/test/index.test.js:27:25)

● AMP Validation on Export › should export AMP pages

ENOENT: no such file or directory, open '/home/runner/work/next.js/next.js/test/integration/amp-export-validation/out/second.html'

● AMP Validation on Export › shows AMP warning without throwing error

expect(received).toMatch(expected)

Expected pattern: /error.*The mandatory attribute 'height' is missing in tag 'amp-video'\./
Received string:  "info  - using build directory: /home/runner/work/next.js/next.js/test/integration/amp-export-validation/.next
"

  55 |         stderr: true,
  56 |       })
> 57 |       expect(stdout).toMatch(
     |                      ^
  58 |         /error.*The mandatory attribute 'height' is missing in tag 'amp-video'\./
  59 |       )
  60 |       await expect(access(join(outDir, 'cat.html'))).resolves.toBe(undefined)

  at Object.<anonymous> (integration/amp-export-validation/test/index.test.js:57:22)

● AMP Validation on Export › throws error on AMP error

expect(received).toMatch(expected)

Expected pattern: /error.*The parent tag of tag 'img' is 'div', but it can only be 'i-amphtml-sizer-intrinsic'\./
Received string:  "info  - using build directory: /home/runner/work/next.js/next.js/test/integration/amp-export-validation/.next
"

  82 |         stderr: true,
  83 |       })
> 84 |       expect(stdout).toMatch(
     |                      ^
  85 |         /error.*The parent tag of tag 'img' is 'div', but it can only be 'i-amphtml-sizer-intrinsic'\./
  86 |       )
  87 |       await expect(access(join(outDir, 'dog.html'))).resolves.toBe(undefined)

  at Object.<anonymous> (integration/amp-export-validation/test/index.test.js:84:22)

● AMP Validation on Export › shows warning and error when throwing error

expect(received).toMatch(expected)

Expected pattern: /error.*The parent tag of tag 'img' is 'div', but it can only be 'i-amphtml-sizer-intrinsic'\./
Received string:  "info  - using build directory: /home/runner/work/next.js/next.js/test/integration/amp-export-validation/.next
"

  109 |         stderr: true,
  110 |       })
> 111 |       expect(stdout).toMatch(
      |                      ^
  112 |         /error.*The parent tag of tag 'img' is 'div', but it can only be 'i-amphtml-sizer-intrinsic'\./
  113 |       )
  114 |       await expect(access(join(outDir, 'dog-cat.html'))).resolves.toBe(

  at Object.<anonymous> (integration/amp-export-validation/test/index.test.js:111:22)

test/integration/amphtml-custom-validator/test/index.test.js

  • AMP Custom Validator > should build and start successfully
  • AMP Custom Validator > should run in dev mode successfully
Expand output

● AMP Custom Validator › should build and start successfully

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP Custom Validator › should run in dev mode successfully

expect(received).not.toContain(expected) // indexOf

Expected substring: not "error"
Received string:        "warn  - You have enabled experimental feature(s).
warn  - Experimental features are not covered by semver, and may cause unexpected or broken application behavior. Use them at your own risk.

error - ./pages/index.js
TypeError: /home/runner/work/next.js/next.js/test/integration/amphtml-custom-validator/pages/index.js: Cannot read property 'types' of undefined
Could not find files for / in .next/build-manifest.json
"

  44 |     await killApp(app)
  45 | 
> 46 |     expect(stderr).not.toContain('error')
     |                        ^
  47 |     expect(html).toContain('Hello from AMP')
  48 |   })
  49 | })

  at Object.<anonymous> (integration/amphtml-custom-validator/test/index.test.js:46:24)

test/integration/config-devtool-dev/test/index.test.js

  • devtool set in developmemt mode in next config > should warn and revert when a devtool is set in development mode
Expand output

● devtool set in developmemt mode in next config › should warn and revert when a devtool is set in development mode

thrown: "Exceeded timeout of 30000 ms for a test.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  17 | 
  18 | describe('devtool set in developmemt mode in next config', () => {
> 19 |   it('should warn and revert when a devtool is set in development mode', async () => {
     |   ^
  20 |     let stderr = ''
  21 | 
  22 |     const appPort = await findPort()

  at integration/config-devtool-dev/test/index.test.js:19:3
  at Object.<anonymous> (integration/config-devtool-dev/test/index.test.js:18:1)

test/integration/amphtml-ssg/test/index.test.js

  • AMP SSG Support > dev mode > should load a hybrid amp page without query correctly
  • AMP SSG Support > dev mode > should load dynamic hybrid SSG/AMP page
  • AMP SSG Support > dev mode > should load dynamic hybrid SSG/AMP page with trailing slash
  • AMP SSG Support > dev mode > should load dynamic hybrid SSG/AMP page with query
  • AMP SSG Support > dev mode > should load a hybrid amp page with query correctly
  • AMP SSG Support > export mode > should have copied SSG files correctly
  • AMP SSG Support > server mode > should load an amp first page correctly
  • AMP SSG Support > server mode > should load a hybrid amp page without query correctly
  • AMP SSG Support > server mode > should load dynamic hybrid SSG/AMP page
  • AMP SSG Support > server mode > should load dynamic hybrid SSG/AMP page with trailing slash
  • AMP SSG Support > server mode > should load dynamic hybrid SSG/AMP page with query
  • AMP SSG Support > server mode > should load a hybrid amp page with query correctly
  • AMP SSG Support > server mode > should output prerendered files correctly during build
  • AMP SSG Support > serverless mode > should load an amp first page correctly
  • AMP SSG Support > serverless mode > should load a hybrid amp page without query correctly
  • AMP SSG Support > serverless mode > should load dynamic hybrid SSG/AMP page
  • AMP SSG Support > serverless mode > should load dynamic hybrid SSG/AMP page with trailing slash
  • AMP SSG Support > serverless mode > should load dynamic hybrid SSG/AMP page with query
  • AMP SSG Support > serverless mode > should load a hybrid amp page with query correctly
  • AMP SSG Support > serverless mode > should output prerendered files correctly during build
Expand output

● AMP SSG Support › serverless mode › should load an amp first page correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › serverless mode › should load a hybrid amp page without query correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › serverless mode › should load dynamic hybrid SSG/AMP page

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › serverless mode › should load dynamic hybrid SSG/AMP page with trailing slash

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › serverless mode › should load dynamic hybrid SSG/AMP page with query

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › serverless mode › should load a hybrid amp page with query correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › serverless mode › should output prerendered files correctly during build

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should load an amp first page correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should load a hybrid amp page without query correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should load dynamic hybrid SSG/AMP page

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should load dynamic hybrid SSG/AMP page with trailing slash

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should load dynamic hybrid SSG/AMP page with query

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should load a hybrid amp page with query correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › server mode › should output prerendered files correctly during build

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AMP SSG Support › dev mode › should load a hybrid amp page without query correctly

expect(received).toContain(expected) // indexOf

Expected substring: "no"
Received string:    ""

  43 |     const html = await renderViaHTTP(appPort, '/hybrid')
  44 |     const $ = cheerio.load(html)
> 45 |     expect($('#use-amp').text()).toContain('no')
     |                                  ^
  46 |     expect($('#hello').text()).toContain('hello')
  47 |   })
  48 | 

  at Object.<anonymous> (integration/amphtml-ssg/test/index.test.js:45:34)

● AMP SSG Support › dev mode › should load dynamic hybrid SSG/AMP page

expect(received).toContain(expected) // indexOf

Expected substring: "no"
Received string:    ""

  50 |     const html = await renderViaHTTP(appPort, '/blog/post-1')
  51 |     const $ = cheerio.load(html)
> 52 |     expect($('#use-amp').text()).toContain('no')
     |                                  ^
  53 |     expect($('#hello').text()).toContain('hello')
  54 |     expect($('#slug').text()).toContain('post-1')
  55 |   })

  at Object.<anonymous> (integration/amphtml-ssg/test/index.test.js:52:34)

● AMP SSG Support › dev mode › should load dynamic hybrid SSG/AMP page with trailing slash

expect(received).toContain(expected) // indexOf

Expected substring: "no"
Received string:    ""

  58 |     const html = await renderViaHTTP(appPort, '/blog/post-1/')
  59 |     const $ = cheerio.load(html)
> 60 |     expect($('#use-amp').text()).toContain('no')
     |                                  ^
  61 |     expect($('#hello').text()).toContain('hello')
  62 |     expect($('#slug').text()).toContain('post-1')
  63 |   })

  at Object.<anonymous> (integration/amphtml-ssg/test/index.test.js:60:34)

● AMP SSG Support › dev mode › should load dynamic hybrid SSG/AMP page with query

expect(received).toContain(expected) // indexOf

Expected substring: "yes"
Received string:    ""

  66 |     const html = await renderViaHTTP(appPort, '/blog/post-1?amp=1')
  67 |     const $ = cheerio.load(html)
> 68 |     expect($('#use-amp').text()).toContain('yes')
     |                                  ^
  69 |     expect($('#hello').text()).toContain('hello')
  70 |     expect($('#slug').text()).toContain('post-1')
  71 |   })

  at Object.<anonymous> (integration/amphtml-ssg/test/index.test.js:68:34)

● AMP SSG Support › dev mode › should load a hybrid amp page with query correctly

expect(received).toContain(expected) // indexOf

Expected substring: "yes"
Received string:    ""

  78 |     }
  79 |     const $ = cheerio.load(html)
> 80 |     expect($('#use-amp').text()).toContain('yes')
     |                                  ^
  81 |     expect($('#hello').text()).toContain('hello')
  82 |   })
  83 | 

  at Object.<anonymous> (integration/amphtml-ssg/test/index.test.js:80:34)

● AMP SSG Support › export mode › should have copied SSG files correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/amphtml-ssg/test/index.test.js:121:13

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/amphtml-ssg/test/index.test.js:133:20

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 11.1s 11.3s ⚠️ +252ms
nodeModulesSize 90.5 MB 84.7 MB -5.75 MB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.112 2.101 -0.01
/ avg req/sec 1183.83 1189.81 +5.98
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.165 1.183 ⚠️ +0.02
/error-in-render avg req/sec 2146.7 2113.83 ⚠️ -32.87
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.6s 13.2s ⚠️ +609ms
nodeModulesSize 90.5 MB 84.7 MB -5.75 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: 3259e91

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: 3259e91

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 11.9s 12.5s ⚠️ +569ms
nodeModulesSize 90.5 MB 86.4 MB -4.13 MB
Page Load Tests Overall increase ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.298 2.281 -0.02
/ avg req/sec 1087.92 1095.97 +8.05
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.234 1.178 -0.06
/error-in-render avg req/sec 2026.3 2121.4 +95.1
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 13.9s 14.1s ⚠️ +160ms
nodeModulesSize 90.5 MB 86.4 MB -4.13 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: 37a2b2f

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: 37a2b2f

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.6s 13.1s ⚠️ +494ms
nodeModulesSize 90.5 MB 86.4 MB -4.13 MB
Page Load Tests Overall increase ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.468 2.371 -0.1
/ avg req/sec 1012.99 1054.2 +41.21
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.243 1.254 ⚠️ +0.01
/error-in-render avg req/sec 2011.82 1994.24 ⚠️ -17.58
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.6s 15s ⚠️ +410ms
nodeModulesSize 90.5 MB 86.4 MB -4.13 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: c782556

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: c782556

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@vercel vercel bot temporarily deployed to Preview November 4, 2020 16:27 Inactive
@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 13.6s 13.6s ⚠️ +42ms
nodeModulesSize 90.5 MB 84.7 MB -5.78 MB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.435 2.504 ⚠️ +0.07
/ avg req/sec 1026.85 998.5 ⚠️ -28.35
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.294 1.308 ⚠️ +0.01
/error-in-render avg req/sec 1931.42 1911.1 ⚠️ -20.32
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 15.2s 15.2s ⚠️ +74ms
nodeModulesSize 90.5 MB 84.7 MB -5.78 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: a12e062

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: a12e062

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.9s 13.2s ⚠️ +337ms
nodeModulesSize 90.5 MB 84.7 MB -5.78 MB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.408 2.408
/ avg req/sec 1038.37 1038.27 ⚠️ -0.1
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.271 1.276 ⚠️ +0.01
/error-in-render avg req/sec 1967.22 1959.27 ⚠️ -7.95
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11 kB -214 B
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB ⚠️ +3 B
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.29 kB ⚠️ +3 B
_error-ed1b0..8fbd.js gzip 3.44 kB 3.43 kB -6 B
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,7 +2,7 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-93c47c5507f369cf30db.js"
   ],
   "/hooks": [
     "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
Diff for _app-7512045..d9376e2ca.js
@@ -51,34 +51,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _asyncToGenerator = __webpack_require__("yXPU");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
Diff for _error-a0c45..8e97fa7be.js
@@ -59,34 +59,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireDefault = __webpack_require__("TqRt");
 
       exports.__esModule = true;
@@ -788,34 +792,38 @@ Also adds support for deduplicated `key` properties
       var _getPrototypeOf = __webpack_require__("Nsbk");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       exports.__esModule = true;
       exports["default"] = void 0;
Diff for 677f882d2ed8..0184795b7.js
@@ -3553,80 +3553,6 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
 
       var _construct = __webpack_require__("sXyB");
 
-      function _createForOfIteratorHelper(o, allowArrayLike) {
-        var it;
-        if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
-          if (
-            Array.isArray(o) ||
-            (it = _unsupportedIterableToArray(o)) ||
-            (allowArrayLike && o && typeof o.length === "number")
-          ) {
-            if (it) o = it;
-            var i = 0;
-            var F = function F() {};
-            return {
-              s: F,
-              n: function n() {
-                if (i >= o.length) return { done: true };
-                return { done: false, value: o[i++] };
-              },
-              e: function e(_e) {
-                throw _e;
-              },
-              f: F
-            };
-          }
-          throw new TypeError(
-            "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."
-          );
-        }
-        var normalCompletion = true,
-          didErr = false,
-          err;
-        return {
-          s: function s() {
-            it = o[Symbol.iterator]();
-          },
-          n: function n() {
-            var step = it.next();
-            normalCompletion = step.done;
-            return step;
-          },
-          e: function e(_e2) {
-            didErr = true;
-            err = _e2;
-          },
-          f: function f() {
-            try {
-              if (!normalCompletion && it["return"] != null) it["return"]();
-            } finally {
-              if (didErr) throw err;
-            }
-          }
-        };
-      }
-
-      function _unsupportedIterableToArray(o, minLen) {
-        if (!o) return;
-        if (typeof o === "string") return _arrayLikeToArray(o, minLen);
-        var n = Object.prototype.toString.call(o).slice(8, -1);
-        if (n === "Object" && o.constructor) n = o.constructor.name;
-        if (n === "Map" || n === "Set") return Array.from(o);
-        if (
-          n === "Arguments" ||
-          /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)
-        )
-          return _arrayLikeToArray(o, minLen);
-      }
-
-      function _arrayLikeToArray(arr, len) {
-        if (len == null || len > arr.length) len = arr.length;
-        for (var i = 0, arr2 = new Array(len); i < len; i++) {
-          arr2[i] = arr[i];
-        }
-        return arr2;
-      }
-
       var _interopRequireWildcard = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
@@ -3784,12 +3710,16 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
       function makePublicRouterInstance(router) {
         var _router = router;
         var instance = {};
-
-        var _iterator = _createForOfIteratorHelper(urlPropertyFields),
-          _step;
+        var _iteratorNormalCompletion = true;
+        var _didIteratorError = false;
+        var _iteratorError = undefined;
 
         try {
-          for (_iterator.s(); !(_step = _iterator.n()).done; ) {
+          for (
+            var _iterator = urlPropertyFields[Symbol.iterator](), _step;
+            !(_iteratorNormalCompletion = (_step = _iterator.next()).done);
+            _iteratorNormalCompletion = true
+          ) {
             var property = _step.value;
 
             if (typeof _router[property] === "object") {
@@ -3804,9 +3734,18 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
             instance[property] = _router[property];
           } // Events is a static property on the router, the router doesn't have to be initialized to use it
         } catch (err) {
-          _iterator.e(err);
+          _didIteratorError = true;
+          _iteratorError = err;
         } finally {
-          _iterator.f();
+          try {
+            if (!_iteratorNormalCompletion && _iterator["return"] != null) {
+              _iterator["return"]();
+            }
+          } finally {
+            if (_didIteratorError) {
+              throw _iteratorError;
+            }
+          }
         }
 
         instance.events = _router2["default"].events;
Diff for main-f5ebb63..f5b26cfc4.js
@@ -261,34 +261,38 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
       var _slicedToArray = __webpack_require__("J4zp");
 
       function _createSuper(Derived) {
-        var hasNativeReflectConstruct = _isNativeReflectConstruct();
-        return function _createSuperInternal() {
+        function isNativeReflectConstruct() {
+          if (typeof Reflect === "undefined" || !Reflect.construct)
+            return false;
+          if (Reflect.construct.sham) return false;
+          if (typeof Proxy === "function") return true;
+
+          try {
+            Date.prototype.toString.call(
+              Reflect.construct(Date, [], function() {})
+            );
+            return true;
+          } catch (e) {
+            return false;
+          }
+        }
+
+        return function() {
           var Super = _getPrototypeOf(Derived),
             result;
-          if (hasNativeReflectConstruct) {
+
+          if (isNativeReflectConstruct()) {
             var NewTarget = _getPrototypeOf(this).constructor;
+
             result = Reflect.construct(Super, arguments, NewTarget);
           } else {
             result = Super.apply(this, arguments);
           }
+
           return _possibleConstructorReturn(this, result);
         };
       }
 
-      function _isNativeReflectConstruct() {
-        if (typeof Reflect === "undefined" || !Reflect.construct) return false;
-        if (Reflect.construct.sham) return false;
-        if (typeof Proxy === "function") return true;
-        try {
-          Date.prototype.toString.call(
-            Reflect.construct(Date, [], function() {})
-          );
-          return true;
-        } catch (e) {
-          return false;
-        }
-      }
-
       var _interopRequireWildcard3 = __webpack_require__("284h");
 
       var _interopRequireDefault = __webpack_require__("TqRt");
Diff for index.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,7 +126,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -138,7 +138,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-f5ebb63d54ef5b26cfc4.js"
+      src="/_next/static/chunks/main-e58cd4c360b757475eda.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,7 +121,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.cf9cca750fb988ac0fbc.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -133,7 +133,7 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-1651c63676ab747d2115.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.9s 15.3s ⚠️ +399ms
nodeModulesSize 90.5 MB 84.7 MB -5.78 MB
Client Bundles (main, webpack, commons) Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..f2b2.js gzip N/A 11 kB N/A
main-2b7b0ee..f96a.js gzip N/A 7.33 kB N/A
Overall change 58.3 kB 58.1 kB -211 B
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-8839dc4..9c9e.js gzip N/A 1.29 kB N/A
_error-46733..1856.js gzip N/A 3.43 kB N/A
Overall change 7.75 kB 7.75 kB -3 B
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: db94b29

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: db94b29

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

test/integration/styled-jsx-plugin/test/index.test.js

  • styled-jsx using in node_modules > production mode > should serve a page correctly
Expand output

● styled-jsx using in node_modules › production mode › should serve a page correctly

thrown: "Exceeded timeout of 60000 ms for a hook.
Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."

  25 | describe('styled-jsx using in node_modules', () => {
  26 |   describe('production mode', () => {
> 27 |     beforeAll(async () => {
     |     ^
  28 |       const output = await nextBuild(appDir, undefined, {
  29 |         stdout: true,
  30 |         stderr: true,

  at integration/styled-jsx-plugin/test/index.test.js:27:5
  at integration/styled-jsx-plugin/test/index.test.js:26:3
  at Object.<anonymous> (integration/styled-jsx-plugin/test/index.test.js:25:1)

● Test suite failed to run

TypeError: Cannot read property 'pid' of undefined

  275 | export async function killApp(instance) {
  276 |   await new Promise((resolve, reject) => {
> 277 |     treeKill(instance.pid, (err) => {
      |                       ^
  278 |       if (err) {
  279 |         if (
  280 |           process.platform === 'win32' &&

  at lib/next-test-utils.js:277:23
  at killApp (lib/next-test-utils.js:276:9)
  at integration/styled-jsx-plugin/test/index.test.js:39:20

@guybedford
Copy link
Contributor Author

This PR is ready for review - there is one main bug left and that is that the JSX plugin seems to be stalling for some reason. I will dig into fixing this bug further after review if this is going to move forward and there are no other concerns here.

@guybedford
Copy link
Contributor Author

Turns out the issue here is #12952.

To fix we can either just have two copies of Babel inlined, or try to trace the root cause of that original issue.

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.9s 13.8s ⚠️ +877ms
nodeModulesSize 90.5 MB 92.2 MB ⚠️ +1.68 MB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.477 2.396 -0.08
/ avg req/sec 1009.29 1043.3 +34.01
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.226 1.342 ⚠️ +0.12
/error-in-render avg req/sec 2038.5 1862.37 ⚠️ -176.13
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11.2 kB
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.3 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Serverless Mode
General Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.9s 15.9s ⚠️ +984ms
nodeModulesSize 90.5 MB 92.2 MB ⚠️ +1.68 MB
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11.2 kB
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.3 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: 80721a1

@@ -2,7 +2,7 @@

const {
minify: terserMinify
} = require("next/dist/compiled/terser");
} = require('terser');
Copy link
Member

Choose a reason for hiding this comment

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

Why was this undone?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Nicely spotted! I've added this back. It appears this is an asset emission of the ncc build which therefore does not follow the externals definition.

The original change must have been a manual fix. We should automate this into the compilation somehow ideally....

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Posted vercel/ncc#611.

@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 13.5s 14.3s ⚠️ +861ms
nodeModulesSize 90.5 MB 92.2 MB ⚠️ +1.68 MB
Page Load Tests Overall increase ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.622 2.683 ⚠️ +0.06
/ avg req/sec 953.63 931.87 ⚠️ -21.76
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.654 1.573 -0.08
/error-in-render avg req/sec 1511.43 1589.45 +78.02
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11.2 kB
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.3 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB

Serverless Mode
General Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.8s 15.7s ⚠️ +888ms
nodeModulesSize 90.5 MB 92.2 MB ⚠️ +1.68 MB
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11.2 kB
framework.HASH.js gzip 39 kB 39 kB
main-be398bc..d262.js gzip 7.33 kB 7.33 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.3 kB 58.3 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-378f0c6..dule.js gzip 6.33 kB 6.33 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 322 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 652 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.48 MB 5.48 MB
Commit: cd8f7dd

@vercel vercel bot temporarily deployed to Preview November 4, 2020 20:48 Inactive
@ijjk
Copy link
Member

ijjk commented Nov 4, 2020

Failing test suites

Commit: 592cd49

test/integration/amphtml-custom-validator/test/index.test.js

Expand output

● Test suite failed to run

/home/runner/work/next.js/next.js/test/integration/amphtml-custom-validator/test/index.test.js:2
import { join } from 'path';
^^^^^^

SyntaxError: Cannot use import statement outside a module

  at ScriptTransformer._transformAndBuildScript (../node_modules/@jest/transform/build/ScriptTransformer.js:537:17)
  at ScriptTransformer.transform (../node_modules/@jest/transform/build/ScriptTransformer.js:579:25)

test/integration/build-warnings/test/index.test.js

Expand output

● Test suite failed to run

/home/runner/work/next.js/next.js/test/integration/build-warnings/test/index.test.js:2
import { remove } from 'fs-extra';
^^^^^^

SyntaxError: Cannot use import statement outside a module

  at ScriptTransformer._transformAndBuildScript (../node_modules/@jest/transform/build/ScriptTransformer.js:537:17)
  at ScriptTransformer.transform (../node_modules/@jest/transform/build/ScriptTransformer.js:579:25)

test/acceptance/ReactRefreshRegression.test.js

Expand output

● Test suite failed to run

/home/runner/work/next.js/next.js/test/acceptance/ReactRefreshRegression.test.js:2
import { sandbox } from './helpers';
^^^^^^

SyntaxError: Cannot use import statement outside a module

  at ScriptTransformer._transformAndBuildScript (../node_modules/@jest/transform/build/ScriptTransformer.js:537:17)
  at ScriptTransformer.transform (../node_modules/@jest/transform/build/ScriptTransformer.js:579:25)

test/integration/404-page-custom-error/test/index.test.js

Expand output

● Test suite failed to run

/home/runner/work/next.js/next.js/test/integration/404-page-custom-error/test/index.test.js:2
import fs from 'fs-extra';
^^^^^^

SyntaxError: Cannot use import statement outside a module

  at ScriptTransformer._transformAndBuildScript (../node_modules/@jest/transform/build/ScriptTransformer.js:537:17)
  at ScriptTransformer.transform (../node_modules/@jest/transform/build/ScriptTransformer.js:579:25)

test/acceptance/ReactRefreshRequire.test.js

Expand output

● Test suite failed to run

/home/runner/work/next.js/next.js/test/acceptance/ReactRefreshRequire.test.js:2
import { sandbox } from './helpers';
^^^^^^

SyntaxError: Cannot use import statement outside a module

  at ScriptTransformer._transformAndBuildScript (../node_modules/@jest/transform/build/ScriptTransformer.js:537:17)
  at ScriptTransformer.transform (../node_modules/@jest/transform/build/ScriptTransformer.js:579:25)

@ijjk ijjk added the create-next-app Related to our CLI tool for quickly starting a new Next.js application. label Nov 5, 2020
@ijjk
Copy link
Member

ijjk commented Nov 5, 2020

Failing test suites

Commit: 761a016

test/integration/api-catch-all/test/index.test.js

  • API routes > Serverless support > should return data when catch-all
  • API routes > Serverless support > should return redirect when catch-all with index and trailing slash
  • API routes > Serverless support > should return data when catch-all with index and trailing slash
  • API routes > Serverless support > should return data when catch-all with index and no trailing slash
Expand output

● API routes › Serverless support › should return data when catch-all

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● API routes › Serverless support › should return redirect when catch-all with index and trailing slash

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● API routes › Serverless support › should return data when catch-all with index and trailing slash

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● API routes › Serverless support › should return data when catch-all with index and no trailing slash

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

test/integration/app-tree/test/index.test.js

  • AppTree > serverless mode > should provide router context in AppTree on SSR
  • AppTree > serverless mode > should provide router context in AppTree on CSR
  • AppTree > serverless mode > should pass AppTree to NextPageContext
Expand output

● AppTree › serverless mode › should provide router context in AppTree on SSR

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AppTree › serverless mode › should provide router context in AppTree on CSR

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● AppTree › serverless mode › should pass AppTree to NextPageContext

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

test/integration/404-page/test/index.test.js

  • 404 Page Support > serverless mode > should use pages/404
  • 404 Page Support > serverless mode > should set correct status code with pages/404
  • 404 Page Support > serverless mode > should not error when visited directly
  • 404 Page Support > serverless mode > should render _error for a 500 error still
  • 404 Page Support > serverless mode > should output 404.html during build
  • 404 Page Support > serverless mode > should add /404 to pages-manifest correctly
Expand output

● 404 Page Support › serverless mode › should use pages/404

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● 404 Page Support › serverless mode › should set correct status code with pages/404

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● 404 Page Support › serverless mode › should not error when visited directly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● 404 Page Support › serverless mode › should render _error for a 500 error still

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● 404 Page Support › serverless mode › should output 404.html during build

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

● 404 Page Support › serverless mode › should add /404 to pages-manifest correctly

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

test/integration/export-subfolders-serverless/test/index.test.js

  • Export config#exportTrailingSlash set to false > should export pages as [filename].html instead of [filename]/index.html
Expand output

● Export config#exportTrailingSlash set to false › should export pages as [filename].html instead of [filename]/index.html

command failed with code 1

  132 |         code !== 0
  133 |       ) {
> 134 |         return reject(new Error(`command failed with code ${code}`))
      |                       ^
  135 |       }
  136 | 
  137 |       resolve({

  at ChildProcess.<anonymous> (lib/next-test-utils.js:134:23)

@guybedford guybedford force-pushed the babel-inlining branch 2 times, most recently from 5962e5a to 159a671 Compare November 5, 2020 03:05
@ijjk
Copy link
Member

ijjk commented Nov 5, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 12.6s 13.7s ⚠️ +1.2s
nodeModulesSize 90.1 MB 90.7 MB ⚠️ +611 kB
Page Load Tests Overall increase ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.359 2.32 -0.04
/ avg req/sec 1059.68 1077.67 +17.99
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.249 1.224 -0.03
/error-in-render avg req/sec 2000.92 2042.63 +41.71
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11.2 kB
framework.HASH.js gzip 39 kB 39 kB
main-1bcbf27..3cd1.js gzip 7.41 kB 7.41 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.4 kB 58.4 kB
Client Bundles (main, webpack, commons) Modern Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-e11a5d3..dule.js gzip 6.4 kB 6.4 kB ⚠️ +2 B
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB ⚠️ +2 B
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 321 B -1 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 651 B -1 B
Rendered Page Sizes Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB -3 B
link.html gzip 1.01 kB 1.01 kB -1 B
withRouter.html gzip 995 B 994 B -1 B
Overall change 3.01 kB 3 kB -5 B

Diffs

Diff for _buildManifest.js
@@ -2,10 +2,10 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-9b57cae5694a39479222.js"
   ],
   "/hooks": [
-    "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
+    "static\u002Fchunks\u002Fpages\u002Fhooks-bdd2cad07648acf22380.js"
   ],
   "/link": ["static\u002Fchunks\u002Fpages\u002Flink-46fe29f40f6309aec7d7.js"],
   "/routerDirect": [
Diff for main-6b20702..ff521e58d.js
@@ -1328,11 +1328,11 @@ _N_E = (window["webpackJsonp_N_E"] = window["webpackJsonp_N_E"] || []).push([
           }
           __webpack_require__.ab = __dirname + "/";
           function startup() {
-            return __webpack_require__(231);
+            return __webpack_require__(766);
           }
           return startup();
         })({
-          231: function(t, e) {
+          766: function(t, e) {
             !(function(t, n) {
               true ? n(e) : undefined;
             })(this, function(t) {
Diff for main-e54d3a5..ee.module.js
@@ -986,11 +986,11 @@
           }
           __webpack_require__.ab = __dirname + "/";
           function startup() {
-            return __webpack_require__(231);
+            return __webpack_require__(766);
           }
           return startup();
         })({
-          231: function(t, e) {
+          766: function(t, e) {
             !(function(t, n) {
               true ? n(e) : undefined;
             })(this, function(t) {
Diff for index.html
@@ -6,7 +6,7 @@
     <noscript data-n-css="true"></noscript>
     <link
       rel="preload"
-      href="/_next/static/chunks/main-e54d3a50385d919b91ee.module.js"
+      href="/_next/static/chunks/main-b27ea50c808c73324bfb.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,13 +85,13 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-6b207021126ff521e58d.js"
+      src="/_next/static/chunks/main-0af40e75d8c59fe926b5.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/main-e54d3a50385d919b91ee.module.js"
+      src="/_next/static/chunks/main-b27ea50c808c73324bfb.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -121,19 +121,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.54a4a893bf4d047564b3.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -6,7 +6,7 @@
     <noscript data-n-css="true"></noscript>
     <link
       rel="preload"
-      href="/_next/static/chunks/main-e54d3a50385d919b91ee.module.js"
+      href="/_next/static/chunks/main-b27ea50c808c73324bfb.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -90,13 +90,13 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-6b207021126ff521e58d.js"
+      src="/_next/static/chunks/main-0af40e75d8c59fe926b5.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/main-e54d3a50385d919b91ee.module.js"
+      src="/_next/static/chunks/main-b27ea50c808c73324bfb.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -126,19 +126,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.54a4a893bf4d047564b3.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -6,7 +6,7 @@
     <noscript data-n-css="true"></noscript>
     <link
       rel="preload"
-      href="/_next/static/chunks/main-e54d3a50385d919b91ee.module.js"
+      href="/_next/static/chunks/main-b27ea50c808c73324bfb.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,13 +85,13 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-6b207021126ff521e58d.js"
+      src="/_next/static/chunks/main-0af40e75d8c59fe926b5.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/main-e54d3a50385d919b91ee.module.js"
+      src="/_next/static/chunks/main-b27ea50c808c73324bfb.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
@@ -121,19 +121,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.54a4a893bf4d047564b3.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.1s 15.3s ⚠️ +1.1s
nodeModulesSize 90.1 MB 90.7 MB ⚠️ +611 kB
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-1bcbf27..3cd1.js gzip 7.41 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..3894.js gzip N/A 11.2 kB N/A
main-15f8cbd..b14b.js gzip N/A 7.41 kB N/A
Overall change 58.4 kB 58.4 kB
Client Bundles (main, webpack, commons) Modern Overall increase ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB N/A N/A
framework.HA..dule.js gzip 39 kB 39 kB
main-e11a5d3..dule.js gzip 6.4 kB N/A N/A
webpack-07c5..dule.js gzip 751 B 751 B
677f882d2ed8..dule.js gzip N/A 7.02 kB N/A
main-dc0106f..dule.js gzip N/A 6.4 kB N/A
Overall change 53.1 kB 53.1 kB ⚠️ +2 B
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B N/A N/A
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-7231d4b..5856.js gzip N/A 1.28 kB N/A
_error-fca3d..2eb1.js gzip N/A 3.44 kB N/A
hooks-d4591d..e7c2.js gzip N/A 887 B N/A
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 321 B -1 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 651 B -1 B
Serverless bundles Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB -15 B
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB -15 B
link.js 1.12 MB 1.12 MB -15 B
routerDirect.js 1.11 MB 1.11 MB -15 B
withRouter.js 1.11 MB 1.11 MB -15 B
Overall change 5.49 MB 5.49 MB -75 B
Commit: 5962e5a

@ijjk
Copy link
Member

ijjk commented Nov 5, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 13s 13.3s ⚠️ +309ms
nodeModulesSize 90.1 MB 87 MB -3.12 MB
Page Load Tests Overall decrease ⚠️
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.352 2.393 ⚠️ +0.04
/ avg req/sec 1062.89 1044.63 ⚠️ -18.26
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.22 1.272 ⚠️ +0.05
/error-in-render avg req/sec 2049.55 1966.06 ⚠️ -83.49
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB 11.2 kB
framework.HASH.js gzip 39 kB 39 kB
main-df78c98..9566.js gzip 7.41 kB 7.41 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.4 kB 58.4 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB 7.02 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-dc0106f..dule.js gzip 6.4 kB 6.4 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 321 B -1 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 651 B -1 B
Rendered Page Sizes Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB -1 B
link.html gzip 1.01 kB 1.01 kB
withRouter.html gzip 994 B 994 B
Overall change 3 kB 3 kB -1 B

Diffs

Diff for _buildManifest.js
@@ -2,10 +2,10 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-9b57cae5694a39479222.js"
   ],
   "/hooks": [
-    "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
+    "static\u002Fchunks\u002Fpages\u002Fhooks-bdd2cad07648acf22380.js"
   ],
   "/link": ["static\u002Fchunks\u002Fpages\u002Flink-46fe29f40f6309aec7d7.js"],
   "/routerDirect": [
Diff for index.html
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-87322aa532b0fba0d476.js"
+      src="/_next/static/chunks/main-0af40e75d8c59fe926b5.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,19 +121,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.54a4a893bf4d047564b3.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-87322aa532b0fba0d476.js"
+      src="/_next/static/chunks/main-0af40e75d8c59fe926b5.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,19 +126,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.54a4a893bf4d047564b3.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-87322aa532b0fba0d476.js"
+      src="/_next/static/chunks/main-0af40e75d8c59fe926b5.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,19 +121,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.95c437bfeae0184795b7.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.54a4a893bf4d047564b3.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.749b41e2d1d29f80d792.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.3afd75c357baf0e5c75b.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.8s 15.6s ⚠️ +813ms
nodeModulesSize 90.1 MB 87 MB -3.12 MB
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..1f3c.js gzip 11.2 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-df78c98..9566.js gzip 7.41 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..3894.js gzip N/A 11.2 kB N/A
main-15f8cbd..b14b.js gzip N/A 7.41 kB N/A
Overall change 58.4 kB 58.4 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.02 kB N/A N/A
framework.HA..dule.js gzip 39 kB 39 kB
main-dc0106f..dule.js gzip 6.4 kB 6.4 kB
webpack-07c5..dule.js gzip 751 B 751 B
677f882d2ed8..dule.js gzip N/A 7.02 kB N/A
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B N/A N/A
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-7231d4b..5856.js gzip N/A 1.28 kB N/A
_error-fca3d..2eb1.js gzip N/A 3.44 kB N/A
hooks-d4591d..e7c2.js gzip N/A 887 B N/A
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 321 B -1 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 651 B -1 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.49 MB 5.49 MB
Commit: aca8c10

@ijjk
Copy link
Member

ijjk commented Nov 5, 2020

Failing test suites

Commit: aca8c10

test/integration/build-output/test/index.test.js

  • Build Output > Basic Application Output > should not deviate from snapshot
Expand output

● Build Output › Basic Application Output › should not deviate from snapshot

expect(received).toBe(expected) // Object.is equality

Expected: 1
Received: 1.01

  109 | 
  110 |       if (_appSize.endsWith('kB')) {
> 111 |         expect(parseFloat(_appSize)).toBe(1)
      |                                      ^
  112 |         expect(_appSize.endsWith('kB')).toBe(true)
  113 |       } else {
  114 |         expect(parseFloat(_appSize) - 1000).toBeLessThanOrEqual(0)

  at Object.<anonymous> (integration/build-output/test/index.test.js:111:38)

@vercel vercel bot temporarily deployed to Preview November 5, 2020 14:01 Inactive
@ijjk
Copy link
Member

ijjk commented Nov 5, 2020

Stats from current PR

Default Server Mode (Increase detected ⚠️)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 14.8s 14.9s ⚠️ +84ms
nodeModulesSize 90 MB 87 MB -3.03 MB
Page Load Tests Overall increase ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
/ failed reqs 0 0
/ total time (seconds) 2.582 2.532 -0.05
/ avg req/sec 968.13 987.41 +19.28
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.392 1.381 -0.01
/error-in-render avg req/sec 1795.36 1809.67 +14.31
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..02db.js gzip 11.3 kB 11.3 kB
framework.HASH.js gzip 39 kB 39 kB
main-3d433ed..98b9.js gzip 7.37 kB 7.37 kB
webpack-e067..f178.js gzip 751 B 751 B
Overall change 58.4 kB 58.4 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.04 kB 7.04 kB
framework.HA..dule.js gzip 39 kB 39 kB
main-d2e2380..dule.js gzip 6.37 kB 6.37 kB
webpack-07c5..dule.js gzip 751 B 751 B
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB 1.28 kB
_error-ed1b0..8fbd.js gzip 3.44 kB 3.44 kB
hooks-89731c..c609.js gzip 887 B 887 B
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 321 B -1 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 651 B -1 B
Rendered Page Sizes
vercel/next.js canary guybedford/next.js babel-inlining Change
index.html gzip 1 kB 1 kB ⚠️ +1 B
link.html gzip 1.01 kB 1.01 kB -1 B
withRouter.html gzip 995 B 995 B
Overall change 3 kB 3 kB

Diffs

Diff for _buildManifest.js
@@ -2,10 +2,10 @@ self.__BUILD_MANIFEST = {
   __rewrites: [],
   "/": ["static\u002Fchunks\u002Fpages\u002Findex-283eed3c1520dcc26e8d.js"],
   "/_error": [
-    "static\u002Fchunks\u002Fpages\u002F_error-a0c4519f5ca8e97fa7be.js"
+    "static\u002Fchunks\u002Fpages\u002F_error-9b57cae5694a39479222.js"
   ],
   "/hooks": [
-    "static\u002Fchunks\u002Fpages\u002Fhooks-8001dc76075832ee8949.js"
+    "static\u002Fchunks\u002Fpages\u002Fhooks-bdd2cad07648acf22380.js"
   ],
   "/link": ["static\u002Fchunks\u002Fpages\u002Flink-46fe29f40f6309aec7d7.js"],
   "/routerDirect": [
Diff for index.html
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.883dd050e11a66b09e26.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.6b4511cd17e1524c6341.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-fcc0dc8abff8177b71fa.js"
+      src="/_next/static/chunks/main-63173ab6332f319ecd1d.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,19 +121,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.5d4f3798f0f226dab197.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.978ffbabf17b2be9a27e.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.883dd050e11a66b09e26.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.6b4511cd17e1524c6341.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for link.html
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.883dd050e11a66b09e26.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.6b4511cd17e1524c6341.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -90,7 +90,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-fcc0dc8abff8177b71fa.js"
+      src="/_next/static/chunks/main-63173ab6332f319ecd1d.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -126,19 +126,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.5d4f3798f0f226dab197.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.978ffbabf17b2be9a27e.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.883dd050e11a66b09e26.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.6b4511cd17e1524c6341.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
Diff for withRouter.html
@@ -24,7 +24,7 @@
     />
     <link
       rel="preload"
-      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.883dd050e11a66b09e26.module.js"
+      href="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.6b4511cd17e1524c6341.module.js"
       as="script"
       crossorigin="anonymous"
     />
@@ -85,7 +85,7 @@
       src="/_next/static/chunks/polyfills-769ffb30946627a111d3.js"
     ></script>
     <script
-      src="/_next/static/chunks/main-fcc0dc8abff8177b71fa.js"
+      src="/_next/static/chunks/main-63173ab6332f319ecd1d.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
@@ -121,19 +121,19 @@
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.5d4f3798f0f226dab197.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.978ffbabf17b2be9a27e.js"
       async=""
       crossorigin="anonymous"
       nomodule=""
     ></script>
     <script
-      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.883dd050e11a66b09e26.module.js"
+      src="/_next/static/chunks/677f882d2ed86fa3467b8979053c1a4c3f8bc4df.6b4511cd17e1524c6341.module.js"
       async=""
       crossorigin="anonymous"
       type="module"
     ></script>
     <script
-      src="/_next/static/chunks/pages/_app-7512045a5b3d9376e2ca.js"
+      src="/_next/static/chunks/pages/_app-265ddf2d03dbe48fa6cb.js"
       async=""
       crossorigin="anonymous"
       nomodule=""

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
buildDuration 16.3s 16.8s ⚠️ +493ms
nodeModulesSize 90 MB 87 MB -3.03 MB
Client Bundles (main, webpack, commons)
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..02db.js gzip 11.3 kB N/A N/A
framework.HASH.js gzip 39 kB 39 kB
main-3d433ed..98b9.js gzip 7.37 kB N/A N/A
webpack-e067..f178.js gzip 751 B 751 B
677f882d2ed8..7d3b.js gzip N/A 11.3 kB N/A
main-6feff68..15d9.js gzip N/A 7.37 kB N/A
Overall change 58.4 kB 58.4 kB
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
677f882d2ed8..dule.js gzip 7.04 kB N/A N/A
framework.HA..dule.js gzip 39 kB 39 kB
main-d2e2380..dule.js gzip 6.37 kB 6.37 kB
webpack-07c5..dule.js gzip 751 B 751 B
677f882d2ed8..dule.js gzip N/A 7.04 kB N/A
Overall change 53.1 kB 53.1 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary guybedford/next.js babel-inlining Change
polyfills-b5..1119.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-9a0b9e1..b37e.js gzip 1.28 kB N/A N/A
_error-ed1b0..8fbd.js gzip 3.44 kB N/A N/A
hooks-89731c..c609.js gzip 887 B N/A N/A
index-17468f..5d83.js gzip 227 B 227 B
link-a674d88..ccde.js gzip 1.35 kB 1.35 kB
routerDirect..924c.js gzip 284 B 284 B
withRouter-7..c13d.js gzip 284 B 284 B
_app-7231d4b..5856.js gzip N/A 1.28 kB N/A
_error-fca3d..2eb1.js gzip N/A 3.44 kB N/A
hooks-d4591d..e7c2.js gzip N/A 887 B N/A
Overall change 7.75 kB 7.75 kB
Client Pages Modern
vercel/next.js canary guybedford/next.js babel-inlining Change
_app-75d3a82..dule.js gzip 625 B 625 B
_error-4469a..dule.js gzip 2.29 kB 2.29 kB
hooks-cbf13f..dule.js gzip 387 B 387 B
index-b9a643..dule.js gzip 226 B 226 B
link-a4469f3..dule.js gzip 1.32 kB 1.32 kB
routerDirect..dule.js gzip 284 B 284 B
withRouter-f..dule.js gzip 282 B 282 B
Overall change 5.41 kB 5.41 kB
Client Build Manifests Overall decrease ✓
vercel/next.js canary guybedford/next.js babel-inlining Change
_buildManifest.js gzip 322 B 321 B -1 B
_buildManife..dule.js gzip 330 B 330 B
Overall change 652 B 651 B -1 B
Serverless bundles
vercel/next.js canary guybedford/next.js babel-inlining Change
_error.js 1.07 MB 1.07 MB
404.html 4.73 kB 4.73 kB
hooks.html 3.92 kB 3.92 kB
index.js 1.07 MB 1.07 MB
link.js 1.12 MB 1.12 MB
routerDirect.js 1.11 MB 1.11 MB
withRouter.js 1.11 MB 1.11 MB
Overall change 5.49 MB 5.49 MB
Commit: 94e0f5c

@kodiakhq kodiakhq bot merged commit 64850a8 into vercel:canary Nov 5, 2020
kodiakhq bot pushed a commit that referenced this pull request Nov 11, 2020
**What's the problem this PR addresses?**

#18768 started to ncc `@babel/plugin-transform-runtime` which broke its Yarn PnP support since the version of `resolve` it uses can't be patched by Yarn.

Fixes https://github.com/yarnpkg/berry/runs/1359235077?check_suite_focus=true#step:5:79

cc @guybedford

**How did you fix it?**

Resolve the absolute path to `@babel/runtime` so it doesn't have to go through `resolve`

---

Fixes #19026
kodiakhq bot pushed a commit that referenced this pull request Jan 11, 2021
**What's the problem this PR addresses?**

- ~~#18768 started to ncc babel and thus it's version of resolve which breaks PnP support~~
Babel replaced `resolve` with the builtin `require.resolve` and a polyfill for older node versions in babel/babel#12439 which was upgraded in #20586
- `next` unnecessarily bundles the `resolve` package when `require.resolve` is builtin and can do the same job

**How did you fix it?**

- ~~Avoid running `resolve` through ncc~~
Added a test for #19334 (closes #19334)
- Replace `resolve` with `require.resolve`
@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.
Labels
create-next-app Related to our CLI tool for quickly starting a new Next.js application. type: next
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants