rsnext/test/integration
Alex Castle 3e8b36e879 Experimental: Granular build chunking (#7696)
* Refactor SplitChunksPlugin configs and add experimental chunking strategy

* Use typeDefs for SplitChunksConfig

* Modify build manifest plugin to create runtime build manifest

* Add support for granular chunks to page-loader

* Ensure normal behavior if experimental granularChunks flag is false

* Update client build manifest to remove iife & implicit global

* Factor out '/_next/' prepending into getDependencies

* Update packages/next/build/webpack-config.ts filepath regex

Co-Authored-By: Jason Miller <developit@users.noreply.github.com>

* Simplify dependency load ordering in page-loader.js

* Use SHA1 hash to shorten filenames for dependency modules

* Add scheduler to framework cacheGroup in webpack-config

* Update page loader to not duplicate script tags with query parameters

* Ensure no slashes end up in the file hashes

* Add prop-types to framework chunk

* Fix issue with mis-attributed events

* Increase modern build size budget--possibly decrement after consulting with @janicklasralph

* Use module.rawRequest for lib chunks

Co-Authored-By: Daniel Stockman <daniel.stockman@gmail.com>

* Dasherize lib chunk names

Co-Authored-By: Daniel Stockman <daniel.stockman@gmail.com>

* Fix typescript errors, reorganize lib name logic

* Dasherize rawRequest, short circuit name logic when rawRequest found

* Add `scheduler` package to test regex

* Fix a nit

* Adjust build manifest plugin

* Shorten key name

* Extract createPreloadLink helper

* Extract getDependencies helper

* Move method

* Minimize diff

* Minimize diff x2

* Fix Array.from polyfill

* Simplify page loader code

* Remove async=false for script tags

* Code golf `getDependencies` implementation

* Require lib chunks be in node_modules

* Update packages/next/build/webpack-config.ts

Co-Authored-By: Joe Haddad <timer150@gmail.com>

* Replace remaining missed windows compat regex

* Trim client manifest

* Prevent duplicate link preload tags

* Revert size test changes

* Squash manifest size even further

* Add comment for clarity

* Code golfing 🏌️‍♂️

* Correctly select modern dependencies

* Ship separate modern client manifest when module/module enabled

* Update packages/next/build/webpack/plugins/build-manifest-plugin.ts

Co-Authored-By: Joe Haddad <timer150@gmail.com>

* Remove unneccessary filter from page-loader

* Add lookbehind to file extension regex in page-loader

* v9.0.3

* Update examples for Apollo with AppTree (#8180)

* Update examples for Apollo with AppTree

* Fix apolloClient being overwritten when rendering AppTree

* Golf page-loader (#8190)

* Remove lookbehind for module replacement

* Wait for build manifest promise before page load or prefetch

* Updating modern-only chunks inside the right entry point

* Fixing ts errors

* Rename variable

* Revert "Wait for build manifest promise before page load or prefetch"

This reverts commit c370528c6888ba7fa71162a0854534ed280224ef.

* Use proper typedef for webpack chunk

* Re-enable promisified client build manifest

* Fix bug in getDependencies map

* Insert check for granularChunks in page-loader

* Increase size limit temporarily for granular chunks

* Add 50ms delay to flaky test

* Set env.__NEXT_GRANULAR_CHUNKS in webpack config

* Reset size limit to 187

* Set process.env.__NEXT_GRANULAR_CHUNKS to false if selectivePageBuilding

* Update test/integration/production/test/index.test.js

Co-Authored-By: Joe Haddad <timer150@gmail.com>

* Do not create promise if not using chunking PR
2019-08-08 13:14:33 -04:00
..
amp-export-validation Unflag Automatic Prerendering (#7666) 2019-06-28 16:01:11 -04:00
amphtml Allow manually setting amphtml and canonical links (#8129) 2019-07-29 08:18:23 +01:00
amphtml-fragment-style Add export const config support and make withAmp a no-op (#7525) 2019-06-09 17:16:14 -07:00
api-support Add warning for API export (#8250) 2019-08-06 00:46:02 +02:00
app-aspath Format missed files (#7464) 2019-05-29 18:19:32 -07:00
app-document Update to check browserName instead of browser.log (#8234) 2019-08-04 15:44:32 +02:00
app-document-style-fragment Test for <Document> fragment styles (#7875) 2019-07-10 11:46:20 -04:00
app-tree Provide AppTree to getInitialProps for getDataFromTree (#7732) 2019-07-30 14:00:19 -04:00
auto-export Add a test for module.exports from a page (#7842) 2019-07-09 13:23:38 -04:00
auto-export-fs Unflag Automatic Prerendering (#7666) 2019-06-28 16:01:11 -04:00
auto-export-serverless Unflag Automatic Prerendering (#7666) 2019-06-28 16:01:11 -04:00
babel Format missed files (#7464) 2019-05-29 18:19:32 -07:00
babel-custom Bugfix: Babel targets value can be a String (#8268) 2019-08-08 15:38:51 +02:00
basic Update to check browserName instead of browser.log (#8234) 2019-08-04 15:44:32 +02:00
build-indicator Add tests for build activity indicator (#7448) 2019-05-28 14:21:31 -07:00
build-stats-output Fix package count being zero in some cases (#7812) 2019-07-08 20:49:51 -04:00
cli Format missed files (#7464) 2019-05-29 18:19:32 -07:00
client-404 Format missed files (#7464) 2019-05-29 18:19:32 -07:00
client-navigation Add next-head-count & remove next-head class (#8020) 2019-07-25 16:39:09 +00:00
compression Optional Server Compression (#8066) 2019-07-29 14:35:09 -04:00
config Format missed files (#7464) 2019-05-29 18:19:32 -07:00
config-promise-error Format missed files (#7464) 2019-05-29 18:19:32 -07:00
config-resolve-alias Format missed files (#7464) 2019-05-29 18:19:32 -07:00
create-next-app Rewrite Create Next App (#8030) 2019-07-19 15:55:30 -04:00
custom-error Add default value for pageConfig for custom _error (#7984) 2019-07-15 17:06:16 -07:00
custom-server Format missed files (#7464) 2019-05-29 18:19:32 -07:00
custom-server-types Expose next function type (#7726) 2019-07-03 19:38:58 -07:00
data Format missed files (#7464) 2019-05-29 18:19:32 -07:00
dist-dir Format missed files (#7464) 2019-05-29 18:19:32 -07:00
document-middleware Unflag Automatic Prerendering (#7666) 2019-06-28 16:01:11 -04:00
dynamic-require Format missed files (#7464) 2019-05-29 18:19:32 -07:00
dynamic-routing Add test for dynamic routing/webpack HMR bug (#8061) 2019-08-01 11:17:42 -05:00
empty-project Handle empty directory (#7876) 2019-07-10 11:45:53 -04:00
error-in-error Add error handling for _error page (#7608) 2019-06-19 12:26:22 -04:00
export Apply missing formatting (#8079) 2019-07-23 14:33:49 -04:00
export-default-map Remove withAmp and do not expose isInAmpMode (#7690) 2019-06-28 15:04:24 -07:00
export-subfolders Make exportTrailingSlash stable (#7746) 2019-07-03 13:25:44 -04:00
external-assets Experimental: Serverless Trace target (#8246) 2019-08-05 18:26:20 -04:00
filesystempublicroutes Format missed files (#7464) 2019-05-29 18:19:32 -07:00
flying-shuttle Unflag Automatic Prerendering (#7666) 2019-06-28 16:01:11 -04:00
handle-non-page-in-pages fix: Ensure ergonomic handling of non-page in ./pages/ (#7955) 2019-07-15 17:16:35 +02:00
invalid-href Add warning for invalid href being passed to router (#8231) 2019-08-07 10:47:13 -04:00
invalid-page-automatic-static-optimization fix: Ensure ergonomic handling of non-page in ./pages/ (#7955) 2019-07-15 17:16:35 +02:00
legacy-pkg-gently Add support for legacy server npm modules (#7898) 2019-07-11 13:02:43 -04:00
modern-mode Experimental module/nomodule support (#7704) 2019-07-24 22:16:32 -04:00
next-dynamic Add next/dynamic test (#7600) 2019-06-18 16:52:02 -04:00
no-override-next-props Format missed files (#7464) 2019-05-29 18:19:32 -07:00
ondemand Experimental module/nomodule support (#7704) 2019-07-24 22:16:32 -04:00
page-config Add handling for invalid page config (#7921) 2019-07-15 13:54:35 -07:00
page-extensions Format missed files (#7464) 2019-05-29 18:19:32 -07:00
plugin-mdx Format missed files (#7464) 2019-05-29 18:19:32 -07:00
preload-viewport Allow opting out of automatic prefetch for Link (#7532) 2019-06-24 11:22:27 -07:00
prerender Implement experimentalPrerender option (#7983) 2019-08-06 15:26:01 -05:00
production Experimental: Granular build chunking (#7696) 2019-08-08 13:14:33 -04:00
production-build-dir NODE_ENV is set to undefined before running a test command (#6823) 2019-03-28 17:05:18 -05:00
production-config fix regex to not match any string with double underscore (#8153) 2019-07-29 08:17:10 +01:00
profiling Format missed files (#7464) 2019-05-29 18:19:32 -07:00
route-load-cancel Set cancelled property on routeChangeError error (#7790) 2019-07-08 15:25:46 -04:00
serverless Remove Old Prerender Implementation (#8218) 2019-08-02 10:28:03 -04:00
serverless-now Unflag Automatic Prerendering (#7666) 2019-06-28 16:01:11 -04:00
serverless-trace Experimental: Serverless Trace target (#8246) 2019-08-05 18:26:20 -04:00
size-limit Implement experimentalPrerender option (#7983) 2019-08-06 15:26:01 -05:00
ssr-ctx Format missed files (#7464) 2019-05-29 18:19:32 -07:00
ssr-prepass Don't externalize ssr-prepass if added by user (#7966) 2019-07-15 16:41:53 +02:00
styled-jsx-module Fix styled-jsx not rendering when used in node_modules (#7697) 2019-06-29 15:42:07 -07:00
tsconfig-verifier Format missed files (#7464) 2019-05-29 18:19:32 -07:00
typescript Fix onError prop-type warning in Link (#8021) 2019-07-25 18:52:27 +00:00
with-router Format missed files (#7464) 2019-05-29 18:19:32 -07:00