Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for getStaticProps in pages/404 #10984

Merged
merged 7 commits into from Mar 12, 2020
Merged

Conversation

ijjk
Copy link
Member

@ijjk ijjk commented Mar 11, 2020

This adds support for using getStaticProps in pages/404.js to allow having a static 404 page even if you have getInitialProps in _app. Using getServerSideProps or getInitialProps is still not permitted in pages/404.js

@ijjk ijjk added this to the 9.3.1 milestone Mar 11, 2020
test/integration/404-page-ssg/pages/404.js Outdated Show resolved Hide resolved
@ijjk ijjk requested a review from Timer March 11, 2020 20:40
@ijjk
Copy link
Member Author

ijjk commented Mar 11, 2020

Stats from current PR

Default Server Mode
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js add/404-ssg Change
buildDuration 10s 10.1s ⚠️ +74ms
nodeModulesSize 56.6 MB 56.6 MB ⚠️ +7 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js add/404-ssg Change
main-HASH.js gzip 5.77 kB 5.77 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..cfaa.js gzip 9.77 kB 9.77 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 55.4 kB 55.4 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js add/404-ssg Change
main-HASH.module.js gzip 4.78 kB 4.78 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.71 kB 6.71 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.4 kB 51.4 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js add/404-ssg Change
polyfills-HASH.js gzip 26.2 kB 26.2 kB
Overall change 26.2 kB 26.2 kB
Client Pages
zeit/next.js canary ijjk/next.js add/404-ssg Change
_app.js gzip 1.09 kB 1.09 kB
_error.js gzip 2.96 kB 2.96 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 1.89 kB 1.89 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.38 kB 7.38 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js add/404-ssg Change
_app.module.js gzip 594 B 594 B
_error.module.js gzip 2.06 kB 2.06 kB
hooks.module.js gzip 370 B 370 B
index.module.js gzip 212 B 212 B
link.module.js gzip 1.48 kB 1.48 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.26 kB 5.26 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js add/404-ssg Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Rendered Page Sizes
zeit/next.js canary ijjk/next.js add/404-ssg Change
index.html gzip 917 B 917 B
link.html gzip 927 B 927 B
withRouter.html gzip 914 B 914 B
Overall change 2.76 kB 2.76 kB

Serverless Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js add/404-ssg Change
buildDuration 11s 11.1s ⚠️ +61ms
nodeModulesSize 56.6 MB 56.6 MB ⚠️ +7 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js add/404-ssg Change
main-HASH.js gzip 5.77 kB 5.77 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..cfaa.js gzip 9.77 kB 9.77 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 55.4 kB 55.4 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js add/404-ssg Change
main-HASH.module.js gzip 4.78 kB 4.78 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.71 kB 6.71 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.4 kB 51.4 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js add/404-ssg Change
polyfills-HASH.js gzip 26.2 kB 26.2 kB
Overall change 26.2 kB 26.2 kB
Client Pages
zeit/next.js canary ijjk/next.js add/404-ssg Change
_app.js gzip 1.09 kB 1.09 kB
_error.js gzip 2.96 kB 2.96 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 1.89 kB 1.89 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.38 kB 7.38 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js add/404-ssg Change
_app.module.js gzip 594 B 594 B
_error.module.js gzip 2.06 kB 2.06 kB
hooks.module.js gzip 370 B 370 B
index.module.js gzip 212 B 212 B
link.module.js gzip 1.48 kB 1.48 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.26 kB 5.26 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js add/404-ssg Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Serverless bundles Overall decrease ✓
zeit/next.js canary ijjk/next.js add/404-ssg Change
_error.js gzip 294 kB 293 kB -795 B
404.html gzip 1.32 kB 1.32 kB
hooks.html gzip 957 B 957 B
index.js gzip 293 kB 293 kB -20 B
link.js gzip 301 kB 301 kB ⚠️ +168 B
routerDirect.js gzip 300 kB 300 kB -148 B
withRouter.js gzip 300 kB 299 kB -117 B
Overall change 1.49 MB 1.49 MB -912 B

@timneutkens timneutkens merged commit ccb6ce7 into vercel:canary Mar 12, 2020
@timneutkens timneutkens deleted the add/404-ssg branch March 12, 2020 09:48
ScriptedAlchemy pushed a commit to module-federation/next.js that referenced this pull request Mar 17, 2020
* Make sure to not show pages/404 GIP error from _app having GIP

* Add error for getStaticProps in pages/404 too

* Add support for getStaticProps in pages/404

* Update test
@vercel vercel locked as resolved and limited conversation to collaborators Jan 31, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants