Commit graph

461 commits

Author SHA1 Message Date
JJ Kasper
0ca24563be
v11.0.0 2021-06-15 09:51:13 -05:00
JJ Kasper
47b96d8ae5
v10.2.4-canary.19 2021-06-15 09:42:16 -05:00
JJ Kasper
7d339b6cd8
v10.2.4-canary.18 2021-06-15 09:24:31 -05:00
JJ Kasper
d19935c302
v10.2.4-canary.17 2021-06-14 20:39:08 -05:00
Tim Neutkens
3b8c2afbfe v10.2.4-canary.16 2021-06-12 13:36:41 +02:00
JJ Kasper
75fdad636e
v10.2.4-canary.15 2021-06-11 16:01:27 -05:00
JJ Kasper
e7ba3eb659
v10.2.4-canary.14 2021-06-11 09:45:36 -05:00
JJ Kasper
e6da19266c
v10.2.4-canary.13 2021-06-10 17:48:46 -05:00
JJ Kasper
9f9a3eeb84
v10.2.4-canary.12 2021-06-09 14:18:01 -05:00
Tim Neutkens
f5c5950f6b v10.2.4-canary.11 2021-06-09 19:39:43 +02:00
Tim Neutkens
a008d01c09 v10.2.4-canary.10 2021-06-09 16:52:25 +02:00
JJ Kasper
ce4e1afba4
v10.2.4-canary.9 2021-06-08 18:31:21 -05:00
Tim Neutkens
3f2379a9ff v10.2.4-canary.8 2021-06-08 20:19:34 +02:00
Tim Neutkens
23ca042c75 v10.2.4-canary.7 2021-06-08 09:10:26 +02:00
JJ Kasper
8c63d17c26
v10.2.4-canary.6 2021-06-07 19:02:46 -05:00
Tim Neutkens
4df4a25564 v10.2.4-canary.5 2021-06-07 14:49:03 +02:00
Houssein Djirdeh
8ae12db1e3
ESLint Plugin: Fix Document and Head import rules (#25730) 2021-06-07 12:40:28 +02:00
Tim Neutkens
dfc5907f10 v10.2.4-canary.4 2021-06-04 12:13:54 +02:00
Tim Neutkens
9184fc9cf2 v10.2.4-canary.3 2021-06-03 14:20:37 +02:00
Houssein Djirdeh
bbc28ccae0
next lint + ESLint in Create Next App (#25064)
Co-authored-by: Tim Neutkens <tim@timneutkens.nl>
Co-authored-by: Tim Neutkens <timneutkens@me.com>
2021-06-03 14:01:24 +02:00
JJ Kasper
7456fcf30f
v10.2.4-canary.2 2021-06-02 11:05:37 -05:00
JJ Kasper
d5c2fe616c
v10.2.4-canary.1 2021-06-01 12:08:31 -05:00
JJ Kasper
39181c4073
v10.2.4-canary.0 2021-05-27 23:25:39 -05:00
JJ Kasper
4f32a03ffa
v10.2.3 2021-05-24 14:20:31 -05:00
JJ Kasper
1745cf6566
v10.2.3-canary.1 2021-05-24 13:29:16 -05:00
Tim Neutkens
c7596be786 v10.2.3-canary.0 2021-05-24 10:54:20 +02:00
JJ Kasper
24c3929ec4
v10.2.2 2021-05-19 20:32:11 -05:00
JJ Kasper
2482520cc2
v10.2.2-canary.1 2021-05-19 17:56:06 -05:00
Rahul Gaba
4688cfe218
Update the text for eslint/no-page-custom-font rule (#25117)
## Documentation / Examples

- [x] Make sure the linting passes
2021-05-19 22:47:38 +00:00
JJ Kasper
42a62f4c23
v10.2.2-canary.0 2021-05-19 15:58:06 -05:00
JJ Kasper
9513572755
v10.2.1 2021-05-19 11:24:49 -05:00
JJ Kasper
7452567325
v10.2.1-canary.12 2021-05-19 10:50:08 -05:00
JJ Kasper
25096df801
v10.2.1-canary.11 2021-05-18 16:58:00 -05:00
JJ Kasper
218c6114c9
v10.2.1-canary.10 2021-05-17 15:25:08 -05:00
Houssein Djirdeh
7426ebcbc3
ESLint Plugin: Image rules (#23402)
Adds a new image rule to `eslint-plugin-next`:

```
Do not use `<img>`. Use Image from `next/image` instead
```
2021-05-17 13:06:48 +00:00
Tim Neutkens
d746db6f5c v10.2.1-canary.9 2021-05-17 14:16:14 +02:00
JJ Kasper
659dae0425
v10.2.1-canary.8 2021-05-14 15:41:49 -05:00
Tim Neutkens
d9000d073b v10.2.1-canary.7 2021-05-14 16:41:54 +02:00
Tim Neutkens
7d75bc3ed1 v10.2.1-canary.6 2021-05-13 16:32:33 +02:00
JJ Kasper
9a0fc42d56
Fix ie11 support with webpack 5 (#25014)
This fixes ie11 compatibility that broke in https://github.com/vercel/next.js/pull/24656 from the polyfills not being loaded first, our existing ie11 test caught this but was failing, this ensures the test is passing again. This also updates the `hrefValue` optional chaining in the eslint plugin as these files aren't transpiled and related tests were failing in azure 

## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
2021-05-12 12:24:42 +00:00
Yamagishi Kazutoshi
f97b82a252
Skip processing when href is not a simple string (#24986) 2021-05-11 16:47:36 +02:00
Tim Neutkens
30462ebf2c v10.2.1-canary.5 2021-05-11 09:24:55 +02:00
Houssein Djirdeh
6d0150f02e
ESLint Plugin: Prevent bad imports of next/document and next/head (#24832)
Adds lint rules to the Next.js ESLint plugin to:

- Disallow importing `next/head` inside `pages/_document.js`
- Disallow importing `next/document` outside of `pages/_document.js`

Both rules will be surfaced as **errors** within the recommended config of the plugin.

Fixes #13712 #13958
2021-05-10 21:28:06 +00:00
Houssein Djirdeh
44072205d8
ESLint Plugin: Custom Font at page-level rule (#24789)
Adds a lint rule warning to the Next.js ESLint plugin if a custom Google Font is added at page-level instead of with a custom document (`.document.js`)

_Note: This will be generalized to include more font providers in the near future._
2021-05-10 19:08:14 +00:00
Houssein Djirdeh
569da9d286
ESLint Plugin: passHref is not assigned (#24670)
Adds a lint rule warning to the Next.js ESLint plugin if `passHref=true` is not assigned for `<Link>` wrapping a custom component.

Fixes #23713
2021-05-10 18:35:11 +00:00
Tim Neutkens
da97a18daf v10.2.1-canary.4 2021-05-10 14:43:02 +02:00
Houssein Djirdeh
59d50ff76d
ESLint Plugin: Google Font rules (#24766) 2021-05-10 10:03:28 +02:00
Tim Neutkens
8218d5d508 v10.2.1-canary.3 2021-05-07 19:40:20 +02:00
Houssein Djirdeh
656c2ef649
ESLint Plugin: Disallow <title> in Head from next/document (#24868)
Adds lint rule warning to the Next.js ESLint plugin to disallow `<title>` in `Head` imported from `next/document`.
2021-05-07 08:49:37 +00:00
JJ Kasper
9c47ca2cfd
v10.2.1-canary.2 2021-04-30 13:27:54 -05:00
Houssein Djirdeh
e783b0a2e8
Adds ESLint with default rule-set (#23702)
This PR re-includes ESLint with some notable changes, namely a guided setup similar to how TypeScript is instantiated in a Next.js application.

To add ESLint to a project, developers will have to create an `.eslintrc` file in the root of their project or add an empty `eslintConfig` object to their `package.json` file.

```js
touch .eslintrc
```

Then running `next build` will show instructions to install the required packages needed:

<img width="862" alt="Screen Shot 2021-04-19 at 7 38 27 PM" src="https://user-images.githubusercontent.com/12476932/115316182-dfd51b00-a146-11eb-830c-90bad20ed151.png">

Once installed and `next build` is run again, `.eslintrc` will be automatically configured to include the default config:

```json
{
  "extends": "next"
}
```

In addition to this change:

- The feature is now under the experimental flag and requires opt-in. After testing and feedback, it will be switched to the top-level namespace and turned on by default.
- A new ESLint shareable configuration package is included that can be extended in any application with `{ extends: 'next' }`
  - This default config extends recommended rule sets from [`eslint-plugin-react`](https://www.npmjs.com/package/eslint-plugin-react), [`eslint-plugin-react-hooks`](https://www.npmjs.com/package/eslint-plugin-react-hooks), and [`eslint-plugin-next`](https://www.npmjs.com/package/@next/eslint-plugin-next)
- All rules in [`eslint-plugin-next`](https://www.npmjs.com/package/@next/eslint-plugin-next) have been modified to include actionable links that show more information to help resolve each issue
2021-04-30 11:09:07 +00:00
JJ Kasper
49cd08da17
v10.2.1-canary.1 2021-04-29 19:52:43 -05:00
JJ Kasper
f9faf3f96a
v10.2.1-canary.0 2021-04-29 12:55:54 -05:00
JJ Kasper
6b97bcea5b
v10.2.0 2021-04-28 09:32:18 -05:00
JJ Kasper
0abbb75b29
v10.1.4-canary.18 2021-04-28 08:58:39 -05:00
JJ Kasper
0f2bd4f252
v10.1.4-canary.17 2021-04-27 12:02:08 -05:00
Joe Haddad
2743a74b62
v10.1.4-canary.16 2021-04-23 15:23:56 -04:00
JJ Kasper
1e9f45931c
v10.1.4-canary.15 2021-04-22 09:51:04 -05:00
Tim Neutkens
03cc0f89ed v10.1.4-canary.14 2021-04-21 13:59:43 +02:00
Tim Neutkens
755fc6f0da v10.1.4-canary.13 2021-04-21 13:59:04 +02:00
JJ Kasper
bfac04dcbc
v10.1.4-canary.12 2021-04-20 16:06:53 -05:00
JJ Kasper
bfde2833c0
v10.1.4-canary.11 2021-04-19 21:41:09 -05:00
JJ Kasper
0bcc6943ae
v10.1.4-canary.10 2021-04-18 08:59:27 -05:00
JJ Kasper
fe0583edea
v10.1.4-canary.9 2021-04-16 10:09:07 -05:00
JJ Kasper
3fb4e091bc
v10.1.4-canary.8 2021-04-15 09:50:36 -05:00
JJ Kasper
c3390b8cca
v10.1.4-canary.7 2021-04-13 11:35:21 -05:00
Tim Neutkens
25ca1b5bab v10.1.4-canary.6 2021-04-12 19:58:36 +02:00
JJ Kasper
1be97547d9
v10.1.4-canary.5 2021-04-12 11:33:08 -05:00
Tim Neutkens
c5c16494e3 v10.1.4-canary.4 2021-04-12 10:34:17 +02:00
Tim Neutkens
911bdacf89 v10.1.4-canary.3 2021-04-08 14:48:18 +02:00
JJ Kasper
23ad3a7189
v10.1.4-canary.2 2021-04-06 12:26:23 -05:00
JJ Kasper
9986d7c92e
v10.1.4-canary.1 2021-04-05 14:10:54 -05:00
JJ Kasper
bf629f9427
v10.1.4-canary.0 2021-04-05 11:17:37 -05:00
Tim Neutkens
29aa48dfc4 v10.1.3 2021-04-02 12:24:12 +02:00
Tim Neutkens
6e51f2a816 v10.1.3-canary.2 2021-04-02 12:22:15 +02:00
JJ Kasper
95b9839622
v10.1.3-canary.1 2021-04-01 15:15:29 -05:00
Tim Neutkens
ce7f2b8329 v10.1.3-canary.0 2021-03-31 10:27:33 +02:00
Tim Neutkens
1ff6057b3a v10.1.2 2021-03-30 10:32:36 +02:00
Tim Neutkens
1344e2dee2 v10.1.2-canary.0 2021-03-30 10:31:45 +02:00
Joe Haddad
eecc3342cb
Temporarily remove experimental ESLint integration (#23521)
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' } `.
2021-03-30 08:26:35 +00:00
Tim Neutkens
cd46241349 v10.1.1 2021-03-29 18:02:58 +02:00
Tim Neutkens
b73816b2b4 v10.1.1-canary.0 2021-03-29 18:00:50 +02:00
Tim Neutkens
fc286d6e19 v10.1.0 2021-03-29 16:56:57 +02:00
Tim Neutkens
378ba1d2eb v10.0.10-canary.14 2021-03-29 16:54:12 +02:00
Tim Neutkens
d40a804dd3 v10.0.10-canary.13 2021-03-29 14:01:21 +02:00
JJ Kasper
f28ea89aa7
v10.0.10-canary.12 2021-03-26 11:02:54 -05:00
JJ Kasper
9f5b61d091
v10.0.10-canary.11 2021-03-24 15:51:14 -05:00
JJ Kasper
1dae228877
v10.0.10-canary.10 2021-03-24 12:05:28 -05:00
Tim Neutkens
34f98451bd v10.0.10-canary.9 2021-03-24 14:12:21 +01:00
JJ Kasper
a16f7a3829
v10.0.10-canary.8 2021-03-23 16:35:15 -05:00
Houssein Djirdeh
e5ef60fecb
Add ESLint to Next.js (#22437)
For #22228

This PR:

- Adds ESLint to toolchain
  - Included by default for builds (`next build`)
  - Can be enabled for development (`next dev`)
  - Custom formatter built for output
- Adds appropriate tests
- Adds two documentation pages
2021-03-23 21:32:42 +00:00
Tim Neutkens
fe80128915 v10.0.10-canary.7 2021-03-22 11:35:23 +01:00
JJ Kasper
79066aee8e
v10.0.10-canary.6 2021-03-19 11:20:13 -05:00
Tim Neutkens
2874bbc61c v10.0.10-canary.5 2021-03-19 09:50:42 +01:00
Tim Neutkens
ea374d8156 v10.0.10-canary.4 2021-03-18 13:54:25 +01:00
Tobias Koppers
60af3a125a v10.0.10-canary.3 2021-03-18 12:23:30 +01:00
Tim Neutkens
7757364fc6 v10.0.10-canary.2 2021-03-17 10:13:36 +01:00
JJ Kasper
a9da48d3da
v10.0.10-canary.1 2021-03-16 16:33:31 -05:00
JJ Kasper
d680ba65a6
v10.0.10-canary.0 2021-03-15 19:59:56 -05:00
JJ Kasper
ca9f808cd5
v10.0.9 2021-03-15 14:12:40 -05:00