Commit graph

1315 commits

Author SHA1 Message Date
JJ Kasper
90b86be6dc
v13.1.2-canary.0 2023-01-03 17:21:41 -08:00
Hannes Bornö
29106f47ac
Collapse sequences of call stack frames from React and Next.js in the error overlay (#44137)
Sequences of call stack frames from React or Next.js are collapsed, most
of the time these just adds noise to the error overlay. The collapsed
stack frames can be expanded though by clicking them.

Adds the package of the stack frame to the
`'/__nextjs_original-stack-frame'` response, so we can figure out if the
stack frame is from React/Next.js in the error overlay.

<details>
<summary>View before/after</summary>

## Before

![image](https://user-images.githubusercontent.com/25056922/208419557-73af3864-c4e8-4d78-92de-5d2cdf772f33.png)

## After

![image](https://user-images.githubusercontent.com/25056922/208419729-f7f8d0d1-dea9-48cf-8a74-6fca3f0d027b.png)

## Another error, React expanded

![image](https://user-images.githubusercontent.com/25056922/208419977-c608f8ea-ddf9-40b1-ae87-49e6929ee959.png)
</details>


## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see
[`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md)

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the
feature request has been accepted for implementation before opening a
PR.
- [ ] Related issues linked using `fixes #number`
- [ ]
[e2e](https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see
[`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md)

## Documentation / Examples

- [ ] Make sure the linting passes by running `pnpm build && pnpm lint`
- [ ] The "examples guidelines" are followed from [our contributing
doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)
2023-01-03 14:47:58 -08:00
Tim Neutkens
4ac737ee6b v13.1.1 2022-12-24 10:30:43 +01:00
Tim Neutkens
f0a8b7ec6e v13.1.1-canary.1 2022-12-24 10:28:44 +01:00
Shu Ding
44548dda36
v13.1.1-canary.0 2022-12-23 21:04:56 +01:00
Tim Neutkens
02489c2f4a v13.1.0 2022-12-22 15:57:47 +01:00
Tim Neutkens
87ca16ff8d v13.0.8-canary.5 2022-12-22 15:36:13 +01:00
Tim Neutkens
0572e218af v13.0.8-canary.4 2022-12-22 08:35:43 +01:00
JJ Kasper
13a3a9c97a
v13.0.8-canary.3 2022-12-21 16:55:10 -06:00
JJ Kasper
0ac617eccd
v13.0.8-canary.2 2022-12-20 16:18:54 -06:00
JJ Kasper
7368b6f9e6
v13.0.8-canary.1 2022-12-19 17:14:36 -08:00
Jiachi Liu
0715af8e6a v13.0.8-canary.0 2022-12-15 20:54:35 +01:00
Tim Neutkens
892eb618f7 v13.0.7 2022-12-15 12:21:57 +01:00
Tim Neutkens
6a00737533 v13.0.7-canary.7 2022-12-15 12:04:40 +01:00
Jiachi Liu
6aae39c759
Fix app client entry key for windows (#44011)
## Bug

The app client entry key was in win32 slashes like `app\blog`, and when
we add the new layer checking logic in #43197, `name.startsWith('app/')`
doesn't work.

Fixes #43854
Fixes #43902

<img width="862" alt="image"
src="https://user-images.githubusercontent.com/4800338/207641886-08ffc159-0516-4609-9a1f-8c8693586122.png">


- [x] Related issues linked using `fixes #number`
- [x] Integration tests added
- [ ] Errors have a helpful link attached, see
[`contributing.md`](https://github.com/vercel/next.js/blob/canary/contributing.md)
2022-12-14 19:52:52 +01:00
JJ Kasper
0269f1cbda
v13.0.7-canary.6 2022-12-13 09:21:39 -08:00
JJ Kasper
5e50fce03b
v13.0.7-canary.5 2022-12-12 16:12:38 -08:00
JJ Kasper
9d97a1e34a
v13.0.7-canary.4 2022-12-09 09:04:30 -06:00
Jiachi Liu
57515a767a v13.0.7-canary.3 2022-12-07 23:40:19 +01:00
Hannes Bornö
738de0164f
Remove __webpack_exports__ from error overlay (#43715) 2022-12-07 11:50:39 +01:00
Tim Neutkens
ea21c66231 v13.0.7-canary.2 2022-12-06 13:42:44 +01:00
JJ Kasper
9329743744
v13.0.7-canary.1 2022-12-02 23:36:18 -08:00
JJ Kasper
166e5fb9b9
v13.0.7-canary.0 2022-12-01 21:50:10 -08:00
JJ Kasper
5003add92b
v13.0.6 2022-12-01 19:17:58 -08:00
JJ Kasper
5f420f710f
v13.0.6-canary.4 2022-12-01 18:20:36 -08:00
JJ Kasper
fbc98abab3
v13.0.6-canary.3 2022-11-30 21:14:26 -08:00
JJ Kasper
ae626c5628
v13.0.6-canary.2 2022-11-28 22:09:41 -08:00
Tim Neutkens
c16d4be4c6 v13.0.6-canary.1 2022-11-25 13:31:08 +01:00
Tim Neutkens
d40ecb7f3f
Resolve RSC / HTML rendering errors in error overlay (#43332) 2022-11-25 13:06:42 +01:00
JJ Kasper
29a913467f
v13.0.6-canary.0 2022-11-23 19:16:49 -08:00
JJ Kasper
f3a728bef1
v13.0.5 2022-11-23 14:00:15 -08:00
JJ Kasper
e079fbb10f
v13.0.5-canary.7 2022-11-23 12:09:15 -08:00
JJ Kasper
9fe5317417
v13.0.5-canary.6 2022-11-22 22:06:19 -08:00
Tim Neutkens
28454c6ddb v13.0.5-canary.5 2022-11-22 19:56:20 +01:00
JJ Kasper
7ae1cb8e8d
v13.0.5-canary.4 2022-11-21 17:03:50 -08:00
JJ Kasper
e3387dbb06
v13.0.5-canary.3 2022-11-19 20:12:30 -08:00
JJ Kasper
a35612aec9
v13.0.5-canary.2 2022-11-18 15:46:45 -08:00
JJ Kasper
ebbd9a98e9
v13.0.5-canary.1 2022-11-18 14:39:40 -08:00
JJ Kasper
24867fd785
v13.0.5-canary.0 2022-11-18 11:03:31 -08:00
JJ Kasper
58fa90f1bf
v13.0.4 2022-11-17 20:42:47 -08:00
JJ Kasper
ef81fc3f8d
v13.0.4-canary.5 2022-11-17 19:27:35 -08:00
JJ Kasper
ed4a14869c
v13.0.4-canary.4 2022-11-17 14:55:11 -08:00
JJ Kasper
3d4c038fa5
v13.0.4-canary.3 2022-11-16 15:44:30 -08:00
JJ Kasper
830b969414
v13.0.4-canary.2 2022-11-15 10:42:34 -08:00
JJ Kasper
3fc31f4afb
v13.0.4-canary.1 2022-11-15 08:35:42 -08:00
Tim Neutkens
79f7231406 v13.0.4-canary.0 2022-11-14 12:40:08 +01:00
JJ Kasper
4240dcc410
v13.0.3 2022-11-10 19:26:00 -08:00
JJ Kasper
895d895972
v13.0.3-canary.4 2022-11-10 17:50:06 -08:00
JJ Kasper
b50ade893f
v13.0.3-canary.3 2022-11-09 21:16:06 -08:00
JJ Kasper
77b5f79a4d
v13.0.3-canary.2 2022-11-08 18:59:53 -08:00
JJ Kasper
13126d464c
v13.0.3-canary.1 2022-11-07 17:45:59 -08:00
Alex Kirszenberg
7bbc1aec9a
Aggregate updates using addStatusHandler and Promise.resolve instead of setTimeout (#42350)
The current `setTimeout` logic adds a constant overhead of 30ms when applying updates, which slows down HMR. As @sokra suggested, we can use the `addStatusHandler` API to have the HMR runtime let us know when its status changes. This also switches to `Promise.resolve` for update aggregation.
2022-11-07 21:06:18 +00:00
JJ Kasper
dd3e851af5
v13.0.3-canary.0 2022-11-04 16:40:57 -07:00
JJ Kasper
2f9efb1abd
v13.0.2 2022-11-03 16:20:51 -07:00
JJ Kasper
3cb0c297c8
v13.0.2-canary.3 2022-11-03 14:57:33 -07:00
JJ Kasper
59a0d4a2a0
v13.0.2-canary.2 2022-11-02 21:20:26 -07:00
JJ Kasper
f1b13d7032
v13.0.2-canary.1 2022-11-02 20:22:22 -07:00
JJ Kasper
0c2404a406
v13.0.2-canary.0 2022-11-01 13:55:50 -07:00
JJ Kasper
c1c3eac325
v13.0.1 2022-10-31 14:45:52 -07:00
JJ Kasper
1c1b5031d9
v13.0.1-canary.4 2022-10-31 12:40:18 -07:00
JJ Kasper
76dc2dcf97
v13.0.1-canary.3 2022-10-31 09:01:43 -07:00
Tim Neutkens
e2b6c87af0 v13.0.1-canary.2 2022-10-30 17:29:49 +01:00
JJ Kasper
6d53e8b34f
v13.0.1-canary.1 2022-10-30 01:54:04 -07:00
JJ Kasper
0beed3563c
v13.0.1-canary.0 2022-10-27 00:22:43 -07:00
JJ Kasper
63aab20a2c
v13.0.0 2022-10-25 09:16:28 -07:00
JJ Kasper
bee5215407
v12.3.2-canary.43 2022-10-25 05:14:49 -07:00
JJ Kasper
bd16ef3c1b
v12.3.2-canary.42 2022-10-25 02:59:20 -07:00
JJ Kasper
fe5a502d51
v12.3.2-canary.41 2022-10-25 01:36:20 -07:00
JJ Kasper
17a4f6a69f
v12.3.2-canary.40 2022-10-24 16:23:32 -07:00
JJ Kasper
997a4f3740
v12.3.2-canary.39 2022-10-24 09:07:31 -07:00
JJ Kasper
ceb07ff00c
v12.3.2-canary.38 2022-10-23 22:25:08 -07:00
JJ Kasper
49842b9e83
v12.3.2-canary.37 2022-10-23 20:32:38 -07:00
JJ Kasper
496b2eb7d3
v12.3.2-canary.36 2022-10-23 20:16:03 -07:00
hiro
6687f280cf
Fix typos: code comment (#41691)
## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have a helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have a helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `pnpm lint`
- [ ] The "examples guidelines" are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md)


Co-authored-by: JJ Kasper <22380829+ijjk@users.noreply.github.com>
2022-10-24 01:24:32 +00:00
JJ Kasper
2c8d29570b
v12.3.2-canary.35 2022-10-23 13:28:49 -07:00
Jiachi Liu
a1a26ca7ea v12.3.2-canary.34 2022-10-22 21:00:51 -07:00
JJ Kasper
c204552ce2
v12.3.2-canary.33 2022-10-21 23:57:02 -07:00
Tim Neutkens
d27185bb9a v12.3.2-canary.32 2022-10-19 13:29:32 +02:00
Jiachi Liu
2d1f72995b v12.3.2-canary.31 2022-10-18 21:19:01 -07:00
JJ Kasper
cf1c0b6075
v12.3.2-canary.30 2022-10-18 09:54:31 -07:00
Tim Neutkens
bc3d8be4ee v12.3.2-canary.29 2022-10-16 11:49:30 +02:00
JJ Kasper
560e93ef77
v12.3.2-canary.28 2022-10-13 15:30:56 -07:00
Tim Neutkens
4ff348cbd4 v12.3.2-canary.27 2022-10-13 15:13:48 +02:00
JJ Kasper
629fa8afa3
v12.3.2-canary.26 2022-10-12 08:45:51 -07:00
Tim Neutkens
bf630e8e57
Refactor error overlay for new router (#41343)
Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
2022-10-12 09:40:44 +02:00
JJ Kasper
5162b64c21
v12.3.2-canary.25 2022-10-11 14:28:59 -07:00
JJ Kasper
3c8727dcab
v12.3.2-canary.24 2022-10-10 17:05:15 -07:00
Tim Neutkens
52a69e6117 v12.3.2-canary.23 2022-10-08 19:11:53 +02:00
Jiachi Liu
a415f34adf
refactor dev overlay into hot reloader (#41231)
Move react-dev-overlay into hot reloader client components, and let it imported by app router. So then we don't need to have hot reloader and react tree as adjacent sibilings but the overlay with error boundary is wrapping the react tree


Co-authored-by: Tim Neutkens <6324199+timneutkens@users.noreply.github.com>
2022-10-07 13:25:22 +00:00
Tim Neutkens
5e25bd2141 v12.3.2-canary.22 2022-10-06 21:44:28 +02:00
JJ Kasper
e8c760f7d4
v12.3.2-canary.21 2022-10-05 22:20:38 -07:00
Tim Neutkens
45bed96714 v12.3.2-canary.20 2022-10-05 16:35:59 +02:00
JJ Kasper
0d5886f20b
v12.3.2-canary.19 2022-10-04 10:15:01 -07:00
JJ Kasper
b56c039ef2
v12.3.2-canary.18 2022-10-03 17:57:44 -07:00
Tim Neutkens
cf9137a531 v12.3.2-canary.17 2022-10-02 21:08:24 +02:00
Tim Neutkens
304730e6d5 v12.3.2-canary.16 2022-09-30 15:17:36 +02:00
Tim Neutkens
b4e53b796b v12.3.2-canary.15 2022-09-29 20:14:29 +02:00
Tim Neutkens
c889b31222 v12.3.2-canary.14 2022-09-29 13:26:46 +02:00
JJ Kasper
c1c95bfd31
v12.3.2-canary.13 2022-09-28 23:18:47 -07:00
Tim Neutkens
ebf2b298cb v12.3.2-canary.12 2022-09-28 17:56:44 +02:00
Jiachi Liu
918b109d76 v12.3.2-canary.11 2022-09-28 00:38:10 +02:00
JJ Kasper
83c25b74d6
v12.3.2-canary.10 2022-09-26 23:31:23 -07:00
Tim Neutkens
6ceda2a3a2 v12.3.2-canary.9 2022-09-26 16:57:56 +02:00
Tim Neutkens
7ccc95c525 v12.3.2-canary.8 2022-09-26 15:52:34 +02:00
JJ Kasper
5d9f390fe4
v12.3.2-canary.7 2022-09-22 19:50:38 -07:00
JJ Kasper
8e1256d024
v12.3.2-canary.6 2022-09-22 16:33:46 -07:00
JJ Kasper
66ca4c21eb
v12.3.2-canary.5 2022-09-22 14:04:50 -07:00
JJ Kasper
24f2c53025
v12.3.2-canary.4 2022-09-22 12:53:58 -07:00
JJ Kasper
cc1e35d821
v12.3.2-canary.3 2022-09-21 22:51:10 -07:00
JJ Kasper
c2487ce262
v12.3.2-canary.2 2022-09-21 17:21:58 -07:00
JJ Kasper
4607140a7f
v12.3.2-canary.1 2022-09-21 15:20:12 -07:00
Tim Neutkens
5f7caf2765 v12.3.2-canary.0 2022-09-21 10:50:28 +02:00
JJ Kasper
980095d59e
v12.3.1 2022-09-19 15:41:52 -07:00
JJ Kasper
4901fc73da
v12.3.1-canary.5 2022-09-19 14:49:23 -07:00
JJ Kasper
35098a1477
v12.3.1-canary.4 2022-09-19 11:31:09 -07:00
JJ Kasper
f0ed328b6f
v12.3.1-canary.3 2022-09-16 16:02:00 -07:00
JJ Kasper
46dd1cffcf
v12.3.1-canary.2 2022-09-13 17:50:17 -07:00
JJ Kasper
2872deef64
v12.3.1-canary.1 2022-09-12 09:58:25 -07:00
JJ Kasper
614f0d8e19
v12.3.1-canary.0 2022-09-08 15:18:23 -07:00
JJ Kasper
ba4c575334
v12.3.0 2022-09-08 09:00:04 -07:00
JJ Kasper
9576a278b6
v12.2.6-canary.13 2022-09-08 08:48:54 -07:00
JJ Kasper
0c58621796
v12.2.6-canary.12 2022-09-07 17:02:46 -07:00
JJ Kasper
b86bf07563
v12.2.6-canary.11 2022-09-07 13:44:58 -07:00
JJ Kasper
a33d502297
v12.2.6-canary.10 2022-09-05 13:42:39 -07:00
Jiachi Liu
93830bf04f v12.2.6-canary.9 2022-09-05 14:38:11 +02:00
JJ Kasper
008da124ed
v12.2.6-canary.8 2022-08-31 17:47:07 -07:00
JJ Kasper
dddc60df15
v12.2.6-canary.7 2022-08-30 12:57:31 -07:00
JJ Kasper
decc00d0d2
v12.2.6-canary.6 2022-08-29 08:53:20 -07:00
JJ Kasper
bd82f690e5
v12.2.6-canary.5 2022-08-24 15:18:19 -05:00
JJ Kasper
34e10f302a
v12.2.6-canary.4 2022-08-23 23:30:54 -05:00
JJ Kasper
1c61eff67d
v12.2.6-canary.3 2022-08-23 19:00:15 -05:00
JJ Kasper
cb430cce90
v12.2.6-canary.2 2022-08-23 09:29:24 -05:00
JJ Kasper
b24b1d8421
v12.2.6-canary.1 2022-08-17 14:12:52 +01:00
Tim Neutkens
4cd8b23032
Enable @typescript-eslint/no-use-before-define for functions (#39602)
Follow-up to the earlier enabling of classes/variables etc.

Bug

 Related issues linked using fixes #number
 Integration tests added
 Errors have helpful link attached, see contributing.md

Feature

 Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
 Related issues linked using fixes #number
 Integration tests added
 Documentation added
 Telemetry added. In case of a feature if it's used or not.
 Errors have helpful link attached, see contributing.md

Documentation / Examples

 Make sure the linting passes by running pnpm lint
 The examples guidelines are followed from our contributing doc

Co-authored-by: Steven <steven@ceriously.com>
2022-08-15 10:29:51 -04:00
JJ Kasper
d8809164ad
v12.2.6-canary.0 2022-08-13 12:27:25 -05:00
JJ Kasper
911ba233d9
v12.2.5 2022-08-11 20:50:08 -05:00
JJ Kasper
d06fc0f0c4
v12.2.5-canary.7 2022-08-11 19:17:02 -05:00
JJ Kasper
de1bf3e471
v12.2.5-canary.6 2022-08-11 16:46:44 -05:00
Tim Neutkens
db9040b0b8
Enable @typescript-eslint/no-use-before-define variables,enums,typedefs for core files (#39511)
* Enable @typescript-eslint/no-use-before-define typedefs and enums

* Enable variables

* Move in client/index

* Revert "Move in client/index"

This reverts commit 592d70cf3d9cd39e741905faf9229f664c9b4ebd.

* Move wrapApp

* Revert "Revert "Move in client/index""

This reverts commit 14b6105eb45ab87b3b4a1d6f2907d8b9e9657888.

* Fix classes cases
2022-08-11 16:32:52 -05:00
JJ Kasper
a9b415b850
v12.2.5-canary.5 2022-08-11 12:09:48 -05:00
JJ Kasper
f863ba7193
v12.2.5-canary.4 2022-08-10 23:00:59 -05:00
JJ Kasper
d246257602
v12.2.5-canary.3 2022-08-10 18:18:54 -05:00
JJ Kasper
44eea0c9c9
v12.2.5-canary.2 2022-08-10 15:32:25 -05:00
JJ Kasper
a6bc38799a
v12.2.5-canary.1 2022-08-09 18:03:15 -05:00
JJ Kasper
b0f590162c
v12.2.5-canary.0 2022-08-08 18:44:10 -05:00
Aniket Singh Rawat
8ddcc6aedb
Fix removing whitespacing in dev overlay (#28277)
## Bug

- [x] Related issues linked using `fixes #number`

fixes #14434 

Before
![image](https://user-images.githubusercontent.com/31622972/130001431-392efc66-69b3-47b5-802a-251a545983fd.png)

After
![image](https://user-images.githubusercontent.com/31622972/130001455-f553c977-c64b-43da-8e27-b513c6ea4179.png)



Co-authored-by: JJ Kasper <22380829+ijjk@users.noreply.github.com>
2022-08-08 02:16:42 +00:00
JJ Kasper
d6cb795fc6
v12.2.4 2022-08-04 12:24:58 -05:00
JJ Kasper
dbc38d607e
v12.2.4-canary.12 2022-08-04 09:29:59 -05:00
JJ Kasper
ad687c9304
v12.2.4-canary.11 2022-08-03 16:15:59 -05:00
JJ Kasper
b7efce6437
v12.2.4-canary.10 2022-08-03 10:54:33 -05:00
JJ Kasper
ad75204b34
v12.2.4-canary.9 2022-08-01 17:51:35 -05:00
JJ Kasper
48405e6bd7
v12.2.4-canary.8 2022-07-28 23:34:07 -05:00
JJ Kasper
d091c818c5
v12.2.4-canary.7 2022-07-28 20:24:34 -05:00
JJ Kasper
a08415be32
v12.2.4-canary.6 2022-07-28 16:03:26 -05:00
JJ Kasper
ec2f0a8c4b
v12.2.4-canary.5 2022-07-28 12:00:28 -05:00
Tim Neutkens
70e4cf6d28 v12.2.4-canary.4 2022-07-28 10:49:03 +02:00
JJ Kasper
84fcbd56bc
v12.2.4-canary.3 2022-07-27 20:00:50 -05:00
JJ Kasper
8017d69a68
v12.2.4-canary.2 2022-07-26 15:24:27 -05:00
JJ Kasper
8c902b61d1
v12.2.4-canary.1 2022-07-25 15:50:59 -05:00
Tobias Koppers
8324cf5218
update webpack (#38988)
https://github.com/webpack/webpack/releases/tag/v5.74.0

There is a nice little performance fix for rebuild performance in this release.
It also fixes the edge case @Kikobeats did run into: https://vercel.slack.com/archives/CGU8HUTUH/p1656505879286119
2022-07-25 15:47:11 +00:00
JJ Kasper
6b915cc34e
v12.2.4-canary.0 2022-07-22 17:51:32 -05:00
JJ Kasper
4b6cb447d1
v12.2.3 2022-07-21 19:53:45 -05:00
JJ Kasper
12b7c584f9
v12.2.3-canary.17 2022-07-21 16:30:46 -05:00
Damien Simonin Feugas
90bbac44db
fix(edge): error handling for edge route and middleware is inconsistent (#38401)
## What’s in there?

This PR brings more consistency in how errors and warnings are reported when running code in the Edge Runtime:

- Dynamic code evaluation (`eval()`, `new Function()`, `WebAssembly.instantiate()`, `WebAssembly.compile()`…)
- Usage of Node.js global APIs (`BroadcastChannel`, `Buffer`, `TextDecoderStream`, `setImmediate()`...)
- Usage of Node.js modules (`fs`, `path`, `child_process`…)

The new error messages should mention *Edge Runtime* instead of *Middleware*, so they are valid in both cases.

It also fixes a bug where the process polyfill would issue a warning for  `process.cwd` (which is `undefined` but legit). Now, one has to invoke the function `process.cwd()` to trigger the error.

It finally fixes the react-dev-overlay, where links from middleware and Edge API route files could not be opened because of the `(middleware)/` prefix in their name.

About the later, please note that we can’t easily remove the prefix or change it for Edge API routes. It comes from the Webpack layer, which is the same for both. We may consider renaming it to *edge* instead in the future.

## How to test?

These changes are almost fully covered with tests:

```bash
pnpm testheadless --testPathPattern runtime-dynamic
pnpm testheadless --testPathPattern runtime-with-node
pnpm testheadless --testPathPattern runtime-module
pnpm testheadless --testPathPattern middleware-dev-errors
```

To try them out manually, you can write a middleware and Edge route files like these:

```jsx
// middleware.js
import { NextResponse } from 'next/server'
import { basename } from 'path'

export default async function middleware() {
  eval('2+2')
  setImmediate(() => {})
  basename()
  return NextResponse.next()
}

export const config = { matcher: '/' }
```

```jsx
// pages/api/route.js
import { basename } from 'path'

export default async function handle() {
  eval('2+2')
  setImmediate(() => {})
  basename()
  return Response.json({ ok: true })
}

export const config = { runtime: 'experimental-edge' }
```

The expected behaviours are:

- [x] dev, middleware/edge route is using a node.js module: error at runtime (logs + read-dev-overlay):

```bash
error - (middleware)/pages/api/route.js (1:0) @ Object.handle [as handler]
error - The edge runtime does not support Node.js 'path' module.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime
> 1 | import { basename } from "path";
  2 | export default async function handle() {
```

- [x] build, middleware/edge route is using a node.js module: warning but succeeds

```bash
warn  - Compiled with warnings

./middleware.js
A Node.js module is loaded ('path' at line 4) which is not supported in the Edge Runtime.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime

./pages/api/route.js
A Node.js module is loaded ('path' at line 1) which is not supported in the Edge Runtime.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime
```

- [x] production, middleware/edge route is using a node.js module: error at runtime (logs + 500 error)

```bash
Error: The edge runtime does not support Node.js 'path' module.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime
    at <unknown> (file:///Users/damien/dev/next.js/packages/next/server/web/sandbox/context.ts:149)
```

- [x] dev, middleware/edge route is using a node.js global API: error at runtime (logs + read-dev-overlay):

```bash
error - (middleware)/pages/api/route.js (4:2) @ Object.handle [as handler]
error - A Node.js API is used (setImmediate) which is not supported in the Edge Runtime.
Learn more: https://nextjs.org/docs/api-reference/edge-runtime
  2 |
  3 | export default async function handle() {
> 4 |   setImmediate(() => {})
    |  ^
```

- [x] build, middleware/edge route is using a node.js global API: warning but succeeds

```bash
warn  - Compiled with warnings

./middleware.js
A Node.js API is used (setImmediate at line: 6) which is not supported in the Edge Runtime.
Learn more: https://nextjs.org/docs/api-reference/edge-runtime

./pages/api/route.js
A Node.js API is used (setImmediate at line: 3) which is not supported in the Edge Runtime.
Learn more: https://nextjs.org/docs/api-reference/edge-runtime
```

- [x] production, middleware/edge route is using a node.js module: error at runtime (logs + 500 error)

```bash
Error: A Node.js API is used (setImmediate) which is not supported in the Edge Runtime.
Learn more: https://nextjs.org/docs/api-reference/edge-runtime
    at <unknown> (file:///Users/damien/dev/next.js/packages/next/server/web/sandbox/context.ts:330)
```

- [x] dev, middleware/edge route is loading dynamic code: warning at runtime (logs + read-dev-overlay) and request succeeds (we allow dynamic code in dev only):

```bash
warn  - (middleware)/middleware.js (7:2) @ Object.middleware [as handler]
warn  - Dynamic Code Evaluation (e. g. 'eval', 'new Function') not allowed in Edge Runtime
   5 |
   6 | export default async function middleware() {
>  7 |   eval('2+2')
```

- [x] build, middleware/edge route is loading dynamic code: build fails with error:

```bash
Failed to compile.

./middleware.js
Dynamic Code Evaluation (e. g. 'eval', 'new Function', 'WebAssembly.compile') not allowed in Edge Runtime
Used by default

./pages/api/route.js
Dynamic Code Evaluation (e. g. 'eval', 'new Function', 'WebAssembly.compile') not allowed in Edge Runtime
Used by default
```

## Notes to reviewers

Edge-related errors are either issued from `next/server/web/sandbox/context.ts` file (runtime errors) or from `next/build/webpack/plugins/middleware-plugin.ts` (webpack compilation).

The previous implementation (I’m pleading guilty here) was way too verbose: some errors (Node.js global APIs like using `process.cwd()`) could be reported several times, and the previous mechanism to dedupe them (in middleware-plugin) wasn’t really effective.

Changes in tests are due to renaming existing tests such as `test/integration/middleware-with-node.js-apis` into `test/integration/edge-runtime-with-node.js-apis`. I extended them to cover Edge API route.

@hanneslund I’ve pushed the improvement you did in https://github.com/vercel/next.js/pull/38289/ one step further to avoid duplication.
2022-07-21 14:53:23 +00:00
Tim Neutkens
5dafe472bc v12.2.3-canary.16 2022-07-21 14:44:35 +02:00
Maia Teegarden
ea9f855253
v12.2.3-canary.15 2022-07-20 14:52:31 -07:00
JJ Kasper
a2554c09a4
v12.2.3-canary.14 2022-07-18 18:21:55 -05:00
Tim Neutkens
aa664868c1 v12.2.3-canary.13 2022-07-18 19:20:48 +02:00
Tim Neutkens
0610f9ac0d v12.2.3-canary.12 2022-07-18 10:32:26 +02:00
JJ Kasper
67e10a7052
Ensure flight manifest is correct with app and pages dir (#38716)
This fixes the failing test case on canary in the `app-dir` test suite which is caused by the flight-manifest including references to the `pages/index` chunk and it being attempted to be loaded for a page in `app` which causes a webpack error in development. 

This also fixes an error from missing `getDerivedStateFromError` in our error boundary in development. 

## Bug

- [x] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

x-ref: https://github.com/vercel/next.js/runs/7360713710?check_suite_focus=true
x-ref: https://github.com/vercel/next.js/runs/7361755629?check_suite_focus=true
x-ref: https://github.com/vercel/next.js/runs/7361755806?check_suite_focus=true
2022-07-16 22:07:37 +00:00
Tim Neutkens
3017b606e0 v12.2.3-canary.11 2022-07-15 17:09:39 +02:00
Tim Neutkens
e685214cec v12.2.3-canary.10 2022-07-15 14:21:49 +02:00
Tim Neutkens
3ebdf1988a v12.2.3-canary.9 2022-07-15 13:44:11 +02:00
Tim Neutkens
c1ce6bfe1b v12.2.3-canary.8 2022-07-14 17:06:56 +02:00
Tim Neutkens
f5af5bb0db v12.2.3-canary.7 2022-07-14 12:58:55 +02:00
Jiachi Liu
5a15c5fb85 v12.2.3-canary.6 2022-07-13 19:33:11 +02:00
Tim Neutkens
1e09d9bd40 v12.2.3-canary.5 2022-07-13 14:45:36 +02:00
Tim Neutkens
722e64f06d v12.2.3-canary.4 2022-07-13 12:01:33 +02:00
Tim Neutkens
c1b2ee635f v12.2.3-canary.3 2022-07-13 09:30:15 +02:00
Tim Neutkens
114e151c23 v12.2.3-canary.2 2022-07-12 14:46:07 +02:00
Tim Neutkens
cd5709825c
Handle development error when Server Component throws (#38550)
Handles the case where an error is introduced which causes a Fast Refresh and then it's fixed.


## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `pnpm lint`
- [ ] The examples guidelines are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing.md#adding-examples)
2022-07-12 12:44:53 +00:00
JJ Kasper
883a52ede9
v12.2.3-canary.1 2022-07-11 18:12:44 -05:00
Tim Neutkens
0887d283e1 v12.2.3-canary.0 2022-07-11 14:35:12 +02:00
Tim Neutkens
2d9875983c
Handle on-demand-entries and error overlay for server components (#38480) 2022-07-10 19:18:48 +02:00
Tim Neutkens
689626c6a4 v12.2.2 2022-07-09 13:18:55 +02:00
Tim Neutkens
4e21a240a5 v12.2.2-canary.0 2022-07-09 11:44:49 +02:00
JJ Kasper
ef90539968
v12.2.1 2022-07-07 18:01:56 -05:00
JJ Kasper
e9ffd9bec4
v12.2.1-canary.5 2022-07-07 15:49:30 -05:00
JJ Kasper
3411794607
v12.2.1-canary.4 2022-07-06 16:33:16 -05:00
Damien Simonin Feugas
6e2c3821cf
feat: build edge functions with node.js modules and fail at runtime (#38234)
## What's in there?

The Edge runtime [does not support Node.js modules](https://edge-runtime.vercel.app/features/available-apis#unsupported-apis).
When building Next.js application, we currently fail the build when detecting node.js module imported from middleware.

This is an blocker for using code that is conditionally loading node.js modules (based on platform/env detection), as @cramforce reported.

This PR implements a new strategy where:
- we can build such middleware/Edge API route code **with a warning**
- we fail at run time, with graceful errors in dev (console & react-dev-overlay error)
- we fail at run time, with console errors in production

## How to test?

All cases are covered with integration tests.
To try them live, create a simple app with a page, a `middleware.js` file and a `pages/api/route.js`file.
Here are iconic examples:

### node.js modules
```js
// middleware.js
import { NextResponse } from 'next/server'
// static
import { basename } from 'path'

export default async function middleware() {
  // dynamic
  const { basename } = await import('path')
  basename()
  return NextResponse.next()
}

export const config = { matcher: '/' }
```
```js
// pags/api/route.js
// static
import { isAbsolute } from 'path'

export default async function handle() {
  // dynamic
  const { isAbsolute } = await import('path')
  return Response.json({ useNodeModule: isAbsolute('/test') })
}

export const config = { runtime: 'experimental-edge' }
```

Desired error (+ source code highlight in dev):

> The edge runtime does not support Node.js 'path' module
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime

Desired warning at build time:

> A Node.js module is loaded ('path' at line 2) which is not supported in the Edge Runtime.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime

- [x]  in dev middleware, static, shows desired error on stderr
- [x]  in dev route, static, shows desired error on stderr
- [x]  in dev middleware, dynamic, shows desired error on stderr
- [x]  in dev route, dynamic, shows desired error on stderr
- [x]  in dev middleware, static, shows desired error on react error overlay
- [x]  in dev route, static, shows desired error on react error overlay
- [x]  in dev middleware, dynamic, shows desired error on react error overlay
- [x]  in dev route, dynamic, shows desired error on react error overlay
- [x]  builds middleware successfully, shows build warning, shows desired error on stderr on call
- [x]  builds route successfully, shows build warning, shows desired error on stderr on call

### 3rd party modules not found

```js
// middleware.js
import { NextResponse } from 'next/server'
// static
import Unknown from 'unknown'

export default async function middleware() {
  // dynamic
  const Unknown = await import('unknown')
  new Unknown()
  return NextResponse.next()
}
```
export const config = { matcher: '/' }
```
```js
// pags/api/route.js
// static
import Unknown from 'unknown'

export default async function handle() {
  // dynamic
  const Unknown = await import('unknown')
  return Response.json({ use3rdPartyModule: Unknown() })
}

export const config = { runtime: 'experimental-edge' }
```

Desired error (+ source code highlight in dev):

> Module not found: Can't resolve 'does-not-exist'
Learn More: https://nextjs.org/docs/messages/module-not-found

- [x]  in dev middleware, static, shows desired error on stderr
- [x]  in dev route, static, shows desired error on stderr
- [x]  in dev middleware, dynamic, shows desired error on stderr
- [x]  in dev route, dynamic, shows desired error on stderr
- [x]  in dev middleware, static, shows desired error on react error overlay
- [x]  in dev route, static, shows desired error on react error overlay
- [x]  in dev middleware, dynamic, shows desired error on react error overlay
- [x]  in dev route, dynamic, shows desired error on react error overlay
- [x]  fails to build middleware, with desired error on stderr
- [x]  fails to build route, with desired error on stderr

### unused node.js modules
```js
// middleware.js
import { NextResponse } from 'next/server'

export default async function middleware() {
  if (process.exit) {
    const { basename } = await import('path')
    basename()
  }
  return NextResponse.next()
}
```
```js
// pags/api/route.js
export default async function handle() {
  if (process.exit) {
    const { basename } = await import('path')
    basename()
  }
  return Response.json({ useNodeModule: false })
}

export const config = { runtime: 'experimental-edge' }
```

Desired warning at build time:

> A Node.js module is loaded ('path' at line 2) which is not supported in the Edge Runtime.
Learn More: https://nextjs.org/docs/messages/node-module-in-edge-runtime

- [x]  invoke middleware in dev with no error
- [x]  invoke route in dev with no error
- [x]  builds successfully, shows build warning, invoke middleware with no error
- [x]  builds successfully, shows build warning, invoke api-route with no error

## Notes to reviewers

The strategy to implement this feature is to leverages webpack [externals](https://webpack.js.org/configuration/externals/#externals) and run a global `__unsupported_module()` function when using a node.js module from edge function's code.
For the record, I tried using [webpack resolve.fallback](https://webpack.js.org/configuration/resolve/#resolvefallback) and [Webpack.IgnorePlugin](https://webpack.js.org/plugins/ignore-plugin/) but they do not allow throwing proper errors at runtime that would contain the loaded module name for reporting.

`__unsupported_module()` is defined in `EdgeRuntime`, and returns a proxy that's throw on use (whether it's property access, function call, new operator... synchronous & promise-based styles).

However there's an issue with error reporting: webpack does not includes the import lines in the generated sourcemaps, preventing from displaying useful errors.
I extended our middleware-plugin to supplement the sourcemaps (when analyzing edge function code, it saves which module is imported from which file, together with line/column/source)

The react-dev-overlay was adapted to look for this additional information when the caught error relates to modules, instead of looking at sourcemaps.

I removed the previous mechanism (built by @nkzawa ) which caught webpack errors at built time to change the displayed error message (files `next/build/index.js`, `next/build/utils.ts` and `wellknown-errors-plugin`)
2022-07-06 20:54:44 +00:00
JJ Kasper
764f7d42d4
v12.2.1-canary.3 2022-07-05 12:09:24 -05:00
JJ Kasper
274980f057
v12.2.1-canary.2 2022-07-01 19:49:58 -05:00
JJ Kasper
c64af8aa34
v12.2.1-canary.1 2022-06-29 15:06:44 -05:00
JJ Kasper
70c0b20885
v12.2.1-canary.0 2022-06-29 13:57:24 -05:00
JJ Kasper
632feb6b73
v12.2.0 2022-06-28 09:21:07 -05:00
JJ Kasper
ed35138edc
v12.1.7-canary.52 2022-06-28 08:35:37 -05:00
JJ Kasper
3eb9caeb6a
v12.1.7-canary.51 2022-06-27 23:35:41 -05:00
JJ Kasper
52763de94a
v12.1.7-canary.50 2022-06-27 18:52:05 -05:00
JJ Kasper
7e3355dd9f
v12.1.7-canary.49 2022-06-27 15:12:26 -05:00
Steven
f6ee4c06b9 v12.1.7-canary.48 2022-06-24 19:56:15 -04:00
Steven
086746538c v12.1.7-canary.47 2022-06-24 14:58:49 -04:00
JJ Kasper
8a0f86a8e8
v12.1.7-canary.46 2022-06-23 21:12:22 -05:00
JJ Kasper
f246e781bb
v12.1.7-canary.45 2022-06-22 17:25:10 -05:00
Hannes Bornö
2ff660c25a
Remove full reload overlay and warn in CLI instead (#37874)
- Always perform a full reload when needed without blocking with the overlay.
- Old client warnings re-added.
- Post client warning to dev server and print it in the CLI. 


## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `pnpm lint`
- [ ] The examples guidelines are followed from [our contributing doc](https://github.com/vercel/next.js/blob/canary/contributing.md#adding-examples)
2022-06-22 15:41:23 +00:00
JJ Kasper
5b854f31f5
v12.1.7-canary.44 2022-06-21 16:20:06 -05:00
JJ Kasper
1f68a5df52
v12.1.7-canary.43 2022-06-21 13:17:00 -05:00
JJ Kasper
89333da141
v12.1.7-canary.42 2022-06-20 10:44:11 -05:00
Hannes Bornö
2313ee093a
Display full refresh warning even when error has occurred (#37425)
If you end up in a state where an error happened and you also should be warned about a full refresh  - you get stuck. The full refresh is blocked by the warning but the error is shown instead.

Tests didn't catch this because the refresh warning never showed in `__NEXT_TEST_MODE`.

## Bug

- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`
2022-06-19 00:00:14 +00:00
JJ Kasper
67e937d821
v12.1.7-canary.41 2022-06-17 10:44:25 -05:00
Damien Simonin Feugas
c2b8006485
refactor(middleware): leverages edge-runtime builtins to decorate errors in dev (#37718)
### What's in there?

This is a followup of https://github.com/vercel/next.js/pull/37695.
For the dev server to clean stacktraces, we're decorating errors caught during code evaluation (`getServerSideProps` or middleware).
However, when these errors are asynchronously raised, we can't decorate them before processing them, leading to this fallback logic:

bf7bf8217f/packages/next/server/dev/next-dev-server.ts (L775-L779)

Thanks to latest improvement of the edge-runtime in 1.1.0-beta.4, we can now catch unhandled rejection and uncaught exception, and decorate them.

### How to test?

Please reuse the existing tests who already covered these cases:
`pnpm testheadless --testPathPattern middleware-dev-errors`


Co-authored-by: JJ Kasper <22380829+ijjk@users.noreply.github.com>
2022-06-17 15:06:30 +00:00
JJ Kasper
016ce59a97
v12.1.7-canary.40 2022-06-15 14:40:38 -05:00
Javi Velasco
de7b316446
Improve Middleware errors (#37695)
* Improve stack traces in dev mode

* Refactor `react-dev-overlay` to support the Edge Compiler

* Serialize errors including the compiler `source`

* Adopt the new `react-dev-overlay` displaying it for middleware errors

* Improve tests

* fix rsc cases

* update test

* use check for dev test

* handle different error from node version

Co-authored-by: feugy <damien@vercel.com>
Co-authored-by: JJ Kasper <jj@jjsweb.site>
2022-06-14 19:58:13 -05:00
JJ Kasper
b65e10ea7a
v12.1.7-canary.39 2022-06-14 12:03:57 -05:00
JJ Kasper
75053a06f8
v12.1.7-canary.38 2022-06-13 22:11:26 -05:00
JJ Kasper
77c96a19b3
v12.1.7-canary.37 2022-06-13 15:50:25 -05:00
JJ Kasper
07420998c1
v12.1.7-canary.36 2022-06-13 10:32:27 -05:00
JJ Kasper
1463f0d1bc
v12.1.7-canary.35 2022-06-10 18:24:42 -05:00
JJ Kasper
f8ebb19dc5
v12.1.7-canary.34 2022-06-10 15:23:31 -05:00
JJ Kasper
0c986cd767
v12.1.7-canary.33 2022-06-08 16:55:45 -05:00
JJ Kasper
2ea3e92a21
v12.1.7-canary.32 2022-06-08 11:55:39 -05:00
JJ Kasper
6f2eb24109
v12.1.7-canary.31 2022-06-06 16:49:30 -05:00
JJ Kasper
28a56d8220
v12.1.7-canary.30 2022-06-06 14:39:08 -05:00
John Pham
be5dedf676
Allowing hiding the ReactDevOverlay (#37417)
* Add hide button

* Update label

* Add data attributes for testing

* Add e2e tests

* update test

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2022-06-06 14:21:53 -04:00
Tim Neutkens
20f9e949b0 v12.1.7-canary.29 2022-06-02 16:02:47 +02:00
Tim Neutkens
ebc3408f47 v12.1.7-canary.28 2022-06-02 12:03:17 +02:00
Tim Neutkens
c31c95b735 v12.1.7-canary.27 2022-06-01 13:54:05 +02:00
JJ Kasper
d153f0db28
v12.1.7-canary.26 2022-05-31 11:39:07 -05:00
JJ Kasper
1d1ffc88b7
Update to leverage turbo for build/prepublish (#37280)
* Update to leverage turbo for build/prepublish

* update path

* remove extra turbo config
2022-05-30 19:05:27 -05:00
Tim Neutkens
67180687f4 v12.1.7-canary.25 2022-05-30 20:25:01 +02:00
Tim Neutkens
96cabcdede v12.1.7-canary.24 2022-05-30 15:16:47 +02:00
JJ Kasper
ec572b0bb8
v12.1.7-canary.23 2022-05-29 19:56:31 -05:00
JJ Kasper
db805ced22
v12.1.7-canary.22 2022-05-29 17:21:20 -05:00
JJ Kasper
23013674a1
v12.1.7-canary.21 2022-05-29 15:00:22 -05:00
Tim Neutkens
85871e80ee v12.1.7-canary.20 2022-05-29 21:22:25 +02:00
JJ Kasper
f7b81316ae
Update to leverage pnpm for monorepo (#37259)
* Update to leverage pnpm for monorepo

* update compiled

* update stats action

* update ci install step

* update ci

* add test dep

* update invoking scripts

* update caching

* skip cache for now

* update dep

* update packages and fix babel

* update compiled

* update lint

* update test

* update ci

* update pnpm store caching

* update path for windows

* update restore-key config

* update caching

* remove extra build azure stage

* re-add checkout

* update setting pnpm store

* bump

* remove azure caching as pnpm is faster to download

* update contributing

* apply suggestions

* remove install-peers

* prepublish -> prepublishOnly

* prepublish -> prepublishOnly more

* more yarn -> pnpm references

* more yarn -> pnpm references take 2

* use workspace protocol for root package.json

Co-authored-by: Steven <steven@ceriously.com>
2022-05-28 23:35:16 -05:00
JJ Kasper
ae67f2821f
v12.1.7-canary.19 2022-05-27 15:29:17 -05:00
JJ Kasper
20ee57e0ad
v12.1.7-canary.18 2022-05-26 20:37:17 -05:00
JJ Kasper
d5706dc417
v12.1.7-canary.17 2022-05-26 18:52:20 -05:00
Tim Neutkens
3a6bd135dd v12.1.7-canary.16 2022-05-25 11:46:55 +02:00
JJ Kasper
780be60d23
v12.1.7-canary.15 2022-05-24 15:50:04 -05:00
JJ Kasper
18dc7e1a49
v12.1.7-canary.14 2022-05-24 13:34:36 -05:00
Tim Neutkens
e636234b2c v12.1.7-canary.13 2022-05-24 12:21:19 +02:00
JJ Kasper
b77ac14529
v12.1.7-canary.12 2022-05-23 19:29:03 -05:00
Tim Neutkens
1b4e2ccd63 v12.1.7-canary.11 2022-05-23 13:35:21 +02:00
Justin Goping
9b61b10245
Fix Trusted Types violations from dangerouslySetInnerHTML on style elements (#36751)
Remove dangerouslySetInnerHTML usage in style elements

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2022-05-22 00:26:54 -05:00
JJ Kasper
6e40fbd495
Ensure hydration error doc link is shown with react 18 (#37074)
Follow-up to https://github.com/vercel/next.js/pull/31519 this ensures the error link we added is shown with react 18 as well. 

## Documentation / Examples

- [x] Make sure the linting passes by running `yarn lint`
2022-05-20 19:04:27 +00:00
JJ Kasper
6cc2147386
v12.1.7-canary.10 2022-05-19 17:11:19 -05:00
JJ Kasper
50833d009d
v12.1.7-canary.9 2022-05-19 13:06:44 -05:00
JJ Kasper
5acf9db617
v12.1.7-canary.8 2022-05-18 20:35:50 -05:00
JJ Kasper
af86ca08e4
v12.1.7-canary.7 2022-05-17 11:01:35 -05:00