-
Notifications
You must be signed in to change notification settings - Fork 27.6k
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
Experimental module/nomodule support #7704
Conversation
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Great work! I haven't gone through all the details of this PR, but I did see that you use the You might already be aware and it might have been considered, but there are quite a few browser-specific gotchas with that approach: https://github.com/johnstew/differential-serving#tests TL;DR: Safari 10.1 downloads and executes both bundles, IE11 and some versions of Edge and Firefox only executes the correct bundle, but downloads both. There exists a kind of wonky workaround for Safari 10.1 (which still downloads twice): https://gist.github.com/samthor/64b114e4a4f539915a95b91ffd340acc This article outlines an approach we've had luck with at work, sniffing UA on the server and serving correct bundle based on that: https://www.smashingmagazine.com/2018/10/smart-bundling-legacy-code-browsers/ Not sure if it's a feasible approach here. What are the known tradeoffs you've made in this PR and how will it affect different browsers? Since this will be behind the |
Thanks for the feedback @Ephem ! I personally didn't know about edge loading the scripts twice! |
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Excellent! I saw his excellent blog post on the subject today. 😄 I did some research and posted the result in the RFC, once again, great job on this PR! |
Stats from current PRClick to expand stats
Click to expand serverless stats
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fantastic work @janicklas-ralph! Thanks for enduring all the back-and-forth. 😄
Opened follow-up umbrella: #8095
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
## The dependency [next](https://github.com/zeit/next.js) was updated from `9.0.2` to `9.0.3`. This version is **not covered** by your **current version range**. If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update. --- **Publisher:** [zeit-bot](https://www.npmjs.com/~zeit-bot) **License:** MIT <details> <summary>Release Notes for v9.0.3</summary> <h3>Minor Changes</h3> <ul> <li>Experimental module/nomodule support: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="462231644" data-permission-text="Issue title is private" data-url="vercel/next.js#7704" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7704/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7704">#7704</a></li> </ul> <h3>Patches</h3> <ul> <li>Modern JS for SSR Bundles: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="467869135" data-permission-text="Issue title is private" data-url="vercel/next.js#7961" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7961/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7961">#7961</a></li> <li>Add .gitignore: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="466739863" data-permission-text="Issue title is private" data-url="vercel/next.js#7893" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7893/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7893">#7893</a></li> <li>Import isomorphic-unfetch in data fetching example: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="466886896" data-permission-text="Issue title is private" data-url="vercel/next.js#7895" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7895/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7895">#7895</a></li> <li>Make tests for both async and sync GIP: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="468706447" data-permission-text="Issue title is private" data-url="vercel/next.js#7999" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7999/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7999">#7999</a></li> <li>Rework dynamic routing <Link> documentation: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="468803528" data-permission-text="Issue title is private" data-url="vercel/next.js#8001" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8001/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8001">#8001</a></li> <li>Avoid sending user errors to client: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="468848773" data-permission-text="Issue title is private" data-url="vercel/next.js#8005" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8005/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8005">#8005</a></li> <li>Replace fs.exists with fs.access: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="463627067" data-permission-text="Issue title is private" data-url="vercel/next.js#7742" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7742/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7742">#7742</a></li> <li>Fix children key in with-typescript-styled-components example: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="468834696" data-permission-text="Issue title is private" data-url="vercel/next.js#8003" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8003/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8003">#8003</a></li> <li>Handle windows backslashes when checking ssr-prepass: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="469319954" data-permission-text="Issue title is private" data-url="vercel/next.js#8016" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8016/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8016">#8016</a></li> <li>Add Create Next App package: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="469418599" data-permission-text="Issue title is private" data-url="vercel/next.js#8018" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8018/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8018">#8018</a></li> <li>Reference correct repository: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/7f5f9818009c8cd90e1e5bd17d5517b45558dc5d/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/7f5f9818009c8cd90e1e5bd17d5517b45558dc5d"><tt>7f5f981</tt></a></li> <li>Remove old media images: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/d486152b98b481afd2d6e6e013e8a0cefda93350/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/d486152b98b481afd2d6e6e013e8a0cefda93350"><tt>d486152</tt></a></li> <li>Update CNA links to examples: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/bcd8eb6b784cc167507c8768c55fd8ea3735fee7/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/bcd8eb6b784cc167507c8768c55fd8ea3735fee7"><tt>bcd8eb6</tt></a></li> <li>Fix CNA README typo: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/8fb32de0ab7399ace08d4832173942c1452e4241/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/8fb32de0ab7399ace08d4832173942c1452e4241"><tt>8fb32de</tt></a></li> <li>Fix syntax error in ie11 from next-server/amp: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="470024207" data-permission-text="Issue title is private" data-url="vercel/next.js#8032" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8032/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8032">#8032</a></li> <li>Rewrite Create Next App: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="470000615" data-permission-text="Issue title is private" data-url="vercel/next.js#8030" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8030/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8030">#8030</a></li> <li>Comment out GIP in Custom <App>: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471135868" data-permission-text="Issue title is private" data-url="vercel/next.js#8055" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8055/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8055">#8055</a></li> <li>Remove public/ file example: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471136710" data-permission-text="Issue title is private" data-url="vercel/next.js#8056" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8056/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8056">#8056</a></li> <li>Remove <code>now.json</code> from examples: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471137313" data-permission-text="Issue title is private" data-url="vercel/next.js#8057" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8057/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8057">#8057</a></li> <li>Fix userAgent type error in README.md: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="470826188" data-permission-text="Issue title is private" data-url="vercel/next.js#8048" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8048/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8048">#8048</a></li> <li>Apply missing formatting: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471849421" data-permission-text="Issue title is private" data-url="vercel/next.js#8079" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8079/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8079">#8079</a></li> <li>Updated "firebase-admin" module and added "firebase-functions-t…: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471838215" data-permission-text="Issue title is private" data-url="vercel/next.js#8078" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8078/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8078">#8078</a></li> <li>Enable Kodiak bot: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472617792" data-permission-text="Issue title is private" data-url="vercel/next.js#8096" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8096/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8096">#8096</a></li> <li>Disable notify on conflict: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/427a02a468ca6c8b101ab3229742f2c1ab1ced69/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/427a02a468ca6c8b101ab3229742f2c1ab1ced69"><tt>427a02a</tt></a></li> <li>Improve types: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472623488" data-permission-text="Issue title is private" data-url="vercel/next.js#8097" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8097/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8097">#8097</a></li> <li>Allow automatic static optimization in with-sentry-simple examp…: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472766378" data-permission-text="Issue title is private" data-url="vercel/next.js#8102" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8102/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8102">#8102</a></li> <li>Require label to merge for now: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/d006a24d8f9d70ad92f59c41a42b2ecb7c46cbf6/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/d006a24d8f9d70ad92f59c41a42b2ecb7c46cbf6"><tt>d006a24</tt></a></li> <li>Revert "Improve type definitions": <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472653248" data-permission-text="Issue title is private" data-url="vercel/next.js#8098" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8098/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8098">#8098</a></li> <li>HTTP methods docs and REST example: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472906101" data-permission-text="Issue title is private" data-url="vercel/next.js#8108" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8108/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8108">#8108</a></li> <li>Configuration for body parsing size limit: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="466971206" data-permission-text="Issue title is private" data-url="vercel/next.js#7896" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7896/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7896">#7896</a></li> <li>Add next-head-count & remove next-head class: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="469465078" data-permission-text="Issue title is private" data-url="vercel/next.js#8020" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8020/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8020">#8020</a></li> <li>Fix extension for module/nomodule: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/8b0a93b0edf06d46da4839d5be426133810c8bad/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/8b0a93b0edf06d46da4839d5be426133810c8bad"><tt>8b0a93b</tt></a></li> <li>Dynamic routes clarification: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472934525" data-permission-text="Issue title is private" data-url="vercel/next.js#8110" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8110/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8110">#8110</a></li> <li>Fix index.js for API routes: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="472976319" data-permission-text="Issue title is private" data-url="vercel/next.js#8112" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8112/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8112">#8112</a></li> <li>Fix onError prop-type warning in Link: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="469483279" data-permission-text="Issue title is private" data-url="vercel/next.js#8021" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8021/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8021">#8021</a></li> <li>Auth example with api routes: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473108272" data-permission-text="Issue title is private" data-url="vercel/next.js#8118" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8118/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8118">#8118</a></li> <li>Fixes problem with API and wrong regex: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473364571" data-permission-text="Issue title is private" data-url="vercel/next.js#8126" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8126/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8126">#8126</a></li> <li>Update example with firebase auth: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473391249" data-permission-text="Issue title is private" data-url="vercel/next.js#8127" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8127/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8127">#8127</a></li> <li>Improve type definitions: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473103574" data-permission-text="Issue title is private" data-url="vercel/next.js#8117" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8117/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8117">#8117</a></li> <li>Docs: Fix comments in with-sentry example (server.js): <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473330715" data-permission-text="Issue title is private" data-url="vercel/next.js#8125" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8125/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8125">#8125</a></li> <li>Add missing key prop for array elements in _document: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473585040" data-permission-text="Issue title is private" data-url="vercel/next.js#8132" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8132/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8132">#8132</a></li> <li>Update README.md for with-http2 example: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473528809" data-permission-text="Issue title is private" data-url="vercel/next.js#8131" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8131/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8131">#8131</a></li> <li>Fix spelling in tsconfig.js of readme.md: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473650878" data-permission-text="Issue title is private" data-url="vercel/next.js#8138" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8138/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8138">#8138</a></li> <li>Remove next.config.js: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473651232" data-permission-text="Issue title is private" data-url="vercel/next.js#8139" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8139/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8139">#8139</a></li> <li>Upgrade with-mdx example from mdx 0.16 → 1.1: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473661737" data-permission-text="Issue title is private" data-url="vercel/next.js#8142" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8142/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8142">#8142</a></li> <li>Remove kodiak: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/482f454c7afc6a2d5a94c1a78ea0917e0fa80dc8/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/482f454c7afc6a2d5a94c1a78ea0917e0fa80dc8"><tt>482f454</tt></a></li> <li>Fix regex to not match any string with double underscore: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473812706" data-permission-text="Issue title is private" data-url="vercel/next.js#8153" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8153/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8153">#8153</a></li> <li>Improve docs for API: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473932328" data-permission-text="Issue title is private" data-url="vercel/next.js#8155" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8155/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8155">#8155</a></li> <li>Add 2 AWS Amplify SSR examples one with JS and one with TS: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471699809" data-permission-text="Issue title is private" data-url="vercel/next.js#8073" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8073/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8073">#8073</a></li> <li>Update webpack to 4.38.0: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473713215" data-permission-text="Issue title is private" data-url="vercel/next.js#8147" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8147/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8147">#8147</a></li> <li>Docs: Document change concerning api-routes: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="473203773" data-permission-text="Issue title is private" data-url="vercel/next.js#8121" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8121/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8121">#8121</a></li> <li>Update missed lockfile: <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/zeit/next.js/commit/25fd3f86a3f7b7ad9075563f6f4a5dddf3079f00/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/commit/25fd3f86a3f7b7ad9075563f6f4a5dddf3079f00"><tt>25fd3f8</tt></a></li> <li>Refactor(webpack): extract splitChunksConfig: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="474132203" data-permission-text="Issue title is private" data-url="vercel/next.js#8161" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8161/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8161">#8161</a></li> <li>Include <code>scheduler</code> in React bundle: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="474156253" data-permission-text="Issue title is private" data-url="vercel/next.js#8164" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8164/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8164">#8164</a></li> <li>Optional Server Compression: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="471351178" data-permission-text="Issue title is private" data-url="vercel/next.js#8066" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8066/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8066">#8066</a></li> <li>Fix build only server-side <code>/api/index.js</code>: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="474247771" data-permission-text="Issue title is private" data-url="vercel/next.js#8167" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8167/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8167">#8167</a></li> <li>Fix a typo in README: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="474647513" data-permission-text="Issue title is private" data-url="vercel/next.js#8177" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8177/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8177">#8177</a></li> <li>Provide AppTree to getInitialProps for getDataFromTree: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="463422020" data-permission-text="Issue title is private" data-url="vercel/next.js#7732" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/7732/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/7732">#7732</a></li> <li>Test environment code should target Node: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="474767437" data-permission-text="Issue title is private" data-url="vercel/next.js#8181" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8181/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8181">#8181</a></li> <li>Fix: Add error message for duplicate route param name: <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="470807151" data-permission-text="Issue title is private" data-url="vercel/next.js#8047" data-hovercard-type="pull_request" data-hovercard-url="/vercel/next.js/pull/8047/hovercard" href="https://urls.greenkeeper.io/zeit/next.js/pull/8047">#8047</a></li> </ul> <h3>Credits</h3> <p>Huge thanks to <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=1270909" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/rakannimer">@rakannimer</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=4323180" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/adamwathan">@adamwathan</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=5691926" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/huv1k">@huv1k</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=4278345" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/lfades">@lfades</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=2252473" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/imdreamrunner">@imdreamrunner</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=14829154" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/dmytro-lymarenko">@dmytro-lymarenko</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=22380829" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/ijjk">@ijjk</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=105127" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/developit">@developit</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=6142074" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/janicklas-ralph">@janicklas-ralph</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=29964919" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/ikeryo1182">@ikeryo1182</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=18068142" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/chaitanyareddyk">@chaitanyareddyk</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=156628" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/adam187">@adam187</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=1265681" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/HaNdTriX">@HaNdTriX</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=1477230" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/devknoll">@devknoll</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=675812" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/sgmonda">@sgmonda</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=3165635" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/oliviertassinari">@oliviertassinari</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=1193520" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/0x80">@0x80</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=10408485" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/bapjiws">@bapjiws</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=3652404" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/oguzzkilic">@oguzzkilic</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=12414212" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/partyKyoung">@partyKyoung</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=5074763" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/lachlanjc">@lachlanjc</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=503795" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/tomasikp">@tomasikp</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=9304194" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/felixmosh">@felixmosh</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=12292047" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/eps1lon">@eps1lon</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=616428" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/Timer">@Timer</a>, <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=2817762" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/OttlikG">@OttlikG</a>, and <a class="user-mention" data-hovercard-type="user" data-hovercard-url="/hovercards?user_id=31798108" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://urls.greenkeeper.io/nataliemarleny">@nataliemarleny</a> for helping!</p> </details> <details> <summary>Commits</summary> <p>The new version differs by 73 commits.</p> <ul> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/00b56c6ede6fce26c300d3864f70ce1ecbe5fb1d"><code>00b56c6</code></a> <code>v9.0.3</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/dc9e2708984bc6bc7e87724fb5193e7f788c89a3"><code>dc9e270</code></a> <code>Update examples for Apollo with AppTree (#8180)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/22aee7f246cd90d32027009808d732eb01335710"><code>22aee7f</code></a> <code>tests(circleci): Update chromedriver to latest (#8192)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/6c2534362e3e77830be9af2ace9b72b008eae947"><code>6c25343</code></a> <code>Fix typo within blog-starter example (#8182)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/858f4eb8eca024fc0e4e20c5bb7c3bfcc4a7e265"><code>858f4eb</code></a> <code>v9.0.3-canary.6</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/b8aee7af77288554d36841148da2f0f65416364a"><code>b8aee7a</code></a> <code>fix: Add error message for duplicate route param name (#8047)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/c61f6c1200f86a1dab72b983d7d8274d4de90160"><code>c61f6c1</code></a> <code>Test environment code should target Node (#8181)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/4850bd03ef113de3e306099049cd7241ba9ca798"><code>4850bd0</code></a> <code>Provide AppTree to getInitialProps for getDataFromTree (#7732)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/72098328cfcc36dcadb0fbc7848f5020c5939213"><code>7209832</code></a> <code>Fix a typo in README (#8177)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/3e03fee2787b6b33fdef89a1d7abdce253e58a02"><code>3e03fee</code></a> <code>Fix build only server-side <code>/api/index.js</code> (#8167)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/9659b4b555fc99edde717e5607c6a4ee8c46b22b"><code>9659b4b</code></a> <code>Optional Server Compression (#8066)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/df213f7aabc2c598a194a7a161d1f6c22dc90e58"><code>df213f7</code></a> <code>Include <code>scheduler</code> in React bundle (#8164)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/7b33fbbfe677f7fa1a6e1ab1c41c732fa2d62da4"><code>7b33fbb</code></a> <code>v9.0.3-canary.5</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/91f60cdadf54c71db3749f4aa02a99c21702b93f"><code>91f60cd</code></a> <code>refactor(webpack): extract splitChunksConfig (#8161)</code></li> <li><a href="https://urls.greenkeeper.io/zeit/next.js/commit/25fd3f86a3f7b7ad9075563f6f4a5dddf3079f00"><code>25fd3f8</code></a> <code>Update missed lockfile</code></li> </ul> <p>There are 73 commits in total.</p> <p>See the <a href="https://urls.greenkeeper.io/zeit/next.js/compare/becd07402e6ed0145618972e80e81657050dadae...00b56c6ede6fce26c300d3864f70ce1ecbe5fb1d">full diff</a></p> </details> --- <details> <summary>FAQ and help</summary> There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new). </details> --- Your [Greenkeeper](https://greenkeeper.io) bot 🌴
* update favicons Signed-off-by: Zander Martineau <[email protected]> * rename static to public Signed-off-by: Zander Martineau <[email protected]> * move all source code into the src dir Signed-off-by: Zander Martineau <[email protected]> * cache bust * try experimental flag https://nextjs.org/blog/next-9-1#module--nomodule vercel/next.js#7704 * fix paths Signed-off-by: Zander Martineau <[email protected]> * fix paths again Signed-off-by: Zander Martineau <[email protected]>
Another feature we don't have an idea about because it is not in the documentation. |
See #19275 |
This PR implements Module/nomodule in Nextjs based on the description in the RFC #7563
This feature is set behind a flag
experimental.modern: true
innext.config.js
.Defaults to
false
.