Permalink
This pull request **temporarily** removes ESLint, as it was not landed in accordance with our standard experimental policies. We are fully committed to landing this change again.
This is being reverted because:
- Next.js has very strict goals for its install size. This feature resulted in adding over 17MB, or a 43.6% increase.
- The feature was not first landed under the `experimental` key in `next.config.js`, rather, it was added under the stable namespace (top-level)
- Using the feature doesn't do a "guided setup" like TypeScript, it should ask you to "bring your own" dependencies for ESLint
- It uses a undesirable ESLint plugin name: `plugin:@next/next/recommended`. This should read out as strictly `next`, or as short as we can get it.
- Does not provide actionable warnings (missing link to resolve issue)
- Does not follow appropriate console output styling. We need to revisit how these are presented.
To re-land this, we need to ensure the following minimums are met:
- Very minor change in install size
- Fully experimental (i.e. flagged) with warnings
- Finalized package name and configuration shape, preferably so we can do ` { extends: 'next' } `.| declare -a testCases=( | |
| # Tests the webpack require hook | |
| "progressive-web-app" | |
| "with-typescript" | |
| "with-next-sass" | |
| # Tests @next/mdx | |
| "with-mdx" | |
| # Tests babel config | |
| "with-styled-components" | |
| ) | |
| set -e | |
| set -x | |
| # Speeds up testing locally | |
| export CI=1 | |
| rm -rf ./e2e-tests | |
| initialDir=$(pwd) | |
| for testCase in "${testCases[@]}" | |
| do | |
| cd $initialDir | |
| echo "--- Testing $testCase ---" | |
| mkdir -p "./e2e-tests/$testCase" | |
| cp -r "./examples/$testCase/." "./e2e-tests/$testCase" | |
| cd "./e2e-tests/$testCase" | |
| touch yarn.lock | |
| yarn set version berry | |
| # Temporary fix for https://github.com/yarnpkg/berry/issues/2514: | |
| yarn set version from sources | |
| yarn config set pnpFallbackMode none | |
| yarn config set enableGlobalCache true | |
| yarn link --all --private -r ../.. | |
| yarn build | |
| done |