Commit graph

19675 commits

Author SHA1 Message Date
theItalianDev
29e7227362
enhancement(with-supabase): replace getSession() with getUser() (#61564)
### What?
Enhancement of _with-supabase example_. Replacing in **middelware.ts**,
**supabase.auth.getSession()** with **supabase.auth.getUser()**

### Why?
**Never trust supabase.auth.getSession() inside server code such as
middleware**. It isn't guaranteed to revalidate the Auth token.
**It's safe to trust getUser()** because it sends a request to the
Supabase Auth server every time to revalidate the Auth token.

[Setting up Server-Side Auth for
Next.js](https://supabase.com/docs/guides/auth/server-side/nextjs)
2024-02-05 00:24:39 +00:00
OMikkel
6d5cacad6e
Encode revalidateTag value fixes #61390 (#61392)
fixes #61390

### What?

Added encodeURIComponent to encode revalidateTag value beforing
appending it to the url.

### Why?

If a tag contains special characters the tag wont be revalidated because
the special characters arent encoded.
By encoding the tag any special characters can be used.
Check out issue #61390 for further explanation

I believe this is the reason why users report the revalidateTag as
unreliable. They might be using special characters in their tags to make
sure they are unique, but when deployed to vercel and the fetch cache is
used revalidateTag fail to revalidate them.

### How?

By encoding revalidateTag with encodeURIcomponent the tag can contain
special characters.

Closes NEXT-
Fixes #61390

---------

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2024-02-05 00:17:46 +00:00
JJ Kasper
b44b7ebe35
Update to latest version of npm for publishing (#61644)
Seems https://github.com/vercel/next.js/pull/61641 also did not resolve
the `npm publish` error so going to upgrade to latest version as well as
we pinned to a previous major.

Closes NEXT-2354
2024-02-05 00:09:05 +00:00
JJ Kasper
2a824e97db
Ensure publish job has correct status on fail (#61645)
This ensures we show the job as failed correctly when any of the
packages didn't publish successfully.

x-ref:
https://github.com/vercel/next.js/actions/runs/7777481701/job/21205867173

Closes NEXT-2355
2024-02-05 00:06:16 +00:00
Sam Ko
c1bce948e9
chore: upgrade turbo to 1.12.2 (#61643)
## Changes

- Upgrade turbo from 1.11.3 to 1.12.2

Closes NEXT-2353
2024-02-05 00:03:06 +00:00
Sam Ko
5284451ed9
docs: update style9 to stylex (#61646)
## Description

The `style9` [repo](https://github.com/johanholmerin/style9) now
recommends `stylex` since `stylex` has been open sourced.
2024-02-04 16:02:15 -08:00
Andrew Paramoshkin
5ed493e548
docs: update useParams examples and pages usage (#61595)
<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->

Updated https://nextjs.org/docs/app/api-reference/functions/use-params
with:
* returns block, examples table: route with no dynamic parameters should
return an empty object
* returns block, `pages` usage: if `useParams` is used in `pages` it
will return `null` only for the initial render and will update its value
with dynamic parameters following the same rules as stated in the doc
above this point.

---------

Co-authored-by: Sam Ko <sam@vercel.com>
2024-02-04 23:44:43 +00:00
vercel-release-bot
498d29413b v14.1.1-canary.32 2024-02-04 23:21:04 +00:00
JJ Kasper
4a5f5dee3f
Remove extra edge-runtime/primitives override (#61641)
Follow-up to https://github.com/vercel/next.js/pull/61637 seeing if the
overrides change is impacting the publish error.

Closes NEXT-2352
2024-02-04 14:06:54 -08:00
JJ Kasper
90ac2df874
Revert "Revert actions/setup-node v4 bump" (#61640)
This doesn't appear to be the root cause so can re-land

Reverts vercel/next.js#61637

Closes NEXT-2351
2024-02-04 14:06:28 -08:00
Wojciech Maj
f7fcd2b773
Fix @react-pdf/renderer not working in RSC (#61317)
<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change
-->

### What?

Fixes @react-pdf/renderer not working in RSC.

### Why?

Next.js RSC version of React does not include features necessary for
@react-pdf/renderer to work.

### How?

Adding @react-pdf/renderer to serverComponentsExternalPackages by
default.

Fixes #61313

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2024-02-04 21:30:47 +00:00
vercel-release-bot
db24fc0c3f v14.1.1-canary.31 2024-02-04 20:10:43 +00:00
JJ Kasper
226824e0d9
Revert actions/setup-node v4 bump (#61637)
Aims to revert back to previous npm version most likely bumped when this
action was bumped causing our publish to fail

x-ref:
https://github.com/vercel/next.js/actions/runs/7770035719/job/21189787242#step:11:307

Closes NEXT-2350
2024-02-04 19:37:05 +00:00
Zack Tanner
49020b7179
Remove unused mockedRes in resolveRoutes (#61635)
While looking into a bugfix in `resolveRoutes`, I noticed this mocked
req/res handler wasn't being used for anything anymore.


Closes NEXT-2342
2024-02-04 11:07:31 -08:00
Daniel Rivers
5602e6bc14
docs: Add Kinde to authentication docs (#61460)
Added Kinde to the authentication documentation, Its already mentioned
elsewhere in the docs just not here.

Co-authored-by: Lee Robinson <me@leerob.io>
2024-02-04 10:47:37 -06:00
byhow
3fee9e6295
docs: add auto closing tag to <source> (#61546) 2024-02-04 10:47:13 -06:00
hmmChase
d4b1c6c097
Update 03-linking-and-navigating.mdx (#61622)
Fix code example syntax

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2024-02-04 00:23:44 +00:00
Vercel Release Bot
a949bab3bc
Update font data (#61621)
This auto-generated PR updates font data with latest available
2024-02-04 00:20:28 +00:00
vercel-release-bot
bedfeac4e3 v14.1.1-canary.30 2024-02-03 23:21:46 +00:00
Leah
cb77a9c586
feat(turbopack): serve google fonts locally and allow preloading them (#61596)
### What?

Adds support for preloading google fonts.

Closes PACK-2351
2024-02-03 21:34:36 +01:00
Vercel Release Bot
d1616dffe6
Update Turbopack test manifest (#61608)
This auto-generated PR updates the integration test manifest used when
testing Turbopack.
2024-02-03 21:32:53 +01:00
Leah
1f8a5a2ed6
feat(turbopack): only preload fonts that opt in (#61591)
### What?

Adds another `ImportMappingReplacement` for the font file in order to
add markers to the filename.
The markers are used to generate the `next-font-manifest.json` (and also
in next.js code).

Closes PACK-2352
2024-02-03 19:53:21 +01:00
vercel-release-bot
aa66300f75 v14.1.1-canary.29 2024-02-02 23:21:11 +00:00
Zack Tanner
a67d247d94
ensure server action errors notify rejection handlers (#61588)
### What
When attaching a rejection listener to a server action promise, in the case of network errors, the rejection handler would be skipped and it'd throw an error that crashes the application.

### Why
When we refactored these reducers to no longer suspend, it caused the rejection handling logic we have to no longer make sense. In this case we're working with a native promise that won't have a `status` property, so we'd re-throw the error and not call `reject`. 

### How
This removes the special status handling logic and makes the rejection handler always call `reject` with the error. This will either be handled by user code or let the error bubble to an error boundary. 

I also cleaned up some mutable code that is no longer needed now that these reducers aren't replayed. 

Closes NEXT-1715
Closes NEXT-2323
Fixes #58638
2024-02-02 14:36:39 -08:00
OJ Kwon
fc22d287ba
refactor(next-core): consolidate custom ecma transform rules (#61481)
This PR consolidates how we inject specific, custom ecma transforms for
the each context.

Previously we had 2 different way to apply custom transforms via
ecmatransform plugin / custom rules, but it could create some conflict
in order as well as can be confusing between how it gets created. PR
uses new moduleruleeffect instead, consolidates all of the references
into single way.

Closes PACK-2342
2024-02-02 12:58:33 -08:00
OJ Kwon
b95e45a511
build(cargo): bump up turbopack (#61590)
* https://github.com/vercel/turbo/pull/7213 <!-- OJ Kwon -
feat(turbopack): extend ecmatransform moduleeffect -->
* https://github.com/vercel/turbo/pull/7219 <!-- Leah - fix(turbopack):
encode source map urls -->
* https://github.com/vercel/turbo/pull/7220 <!-- Leah -
style(turbopack): make idents more readable -->

Closes PACK-2369
2024-02-02 12:22:42 -08:00
Tim Neutkens
dbb2d86ae8
Skip Relay test for Turbopack (#61578)
## What?

This feature will be implemented after Turbopack is stable.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2339
2024-02-02 17:07:36 +01:00
Abdul Haseeb
f59540fedc
Fixing a case sensitivity error (#61563)
Fixing a simple case sensitivity error in the import statement,
"storeProvider" should be "StoreProvider".

Co-authored-by: Steven <steven@ceriously.com>
2024-02-02 09:33:32 -05:00
Tim Neutkens
9f5462ca23
Fix .env HMR for Turbopack in Edge runtime (#61565)
## What?

Fixes the `should update server components pages when env files is
changed (edge)` tests. In order for changes to the environment to apply
to edge-runtime routes we need to call `clearModuleContext`, currently
that only supports a single path being provided, but in Turobpack the
compilation is much more granular than webpack, in case of webpack we
loop through all items coming out of the compilation and invalidate them
regardless, which is not needed for Turbopack. Instead, when an
entrypoint (route) is recompiled it'll automatically only invalidate
that part. For `.env` changes that don't affect compilation, which is
what the test checks, this wouldn't be sufficient as there is no
compilation difference between changing those env vars. In the case that
you change `.env` / tsconfig/jsconfig we have to clear all module
contexts, which is what this PR implements.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2337
2024-02-02 11:48:16 +01:00
Leah
2afb6379d1
feat: first pass of next/font manifest (#61424)
### What?

We need the manifest to pass a bunch of preloading tests.

Currently, this is just a dumb implementation that preloads all fonts
and always sets size-adjust to true.

Google fonts are also still requested from Google directly it seems and
therefore never preloaded.
2024-02-02 09:42:36 +01:00
Donny/강동윤
a77f8a9165
Update turbopack (#61553)
# Turbopack

* https://github.com/vercel/turbo/pull/7207 <!-- Donny/강동윤 -
feat(turbopack): Enable error recovery of lightningcss -->
* https://github.com/vercel/turbo/pull/7096 <!-- Tobias Koppers -
migrate type references to primary references -->
* https://github.com/vercel/turbo/pull/7225 <!-- Donny/강동윤 -
fix(turbopack): Fix css var issue and font issue when using
`lightningcss` -->

### What?

Update turbopack 

### Why?

To test https://github.com/vercel/turbo/pull/7225 against internal apps.


### How?



Closes PACK-2364
2024-02-02 08:27:00 +00:00
Balázs Orbán
d43a387d27
chore: update ESLint and plugins to latest (#61544)
Bumping ESLint to the newest version.

Related: #61525

Closes NEXT-2336
2024-02-01 20:06:02 -05:00
Steven
804cb937fe
chore(docs): add // @ts-check to next.config.js docs (#61543)
This PR updates the docs to add `// @ts-check` at the top of each
`next.config.js` or `next.config.mjs`.

Even though you can't use `next.config.ts`, you can still get some type
checking to catch typos such as wrong type or even duplicate keys.


<img width="322" alt="image"
src="https://github.com/vercel/next.js/assets/229881/fcaba393-3560-4d16-95bf-a0504e66fa26">

<img width="325" alt="image"
src="https://github.com/vercel/next.js/assets/229881/e7156dd4-7b79-4f08-b843-4431b56b1c50">



Closes NEXT-2335
2024-02-02 00:36:00 +01:00
vercel-release-bot
5cd7790091 v14.1.1-canary.28 2024-02-01 23:21:30 +00:00
Steven
5ee6a07d74
fix: bump @vercel/nft@0.26.3 (#61538)
- Release notes https://github.com/vercel/nft/releases/tag/0.26.3
- Fixes https://github.com/vercel/next.js/issues/59346
- Related to https://github.com/lovell/sharp/issues/3967

Closes NEXT-2334
2024-02-01 16:46:38 -05:00
Leah
1240cda484
chore: update github actions (#61517)
### Why?

They used the `node16` runner which is deprecated

### Notable breaking changes

#### `dessant/lock-threads@v5`
[link](https://github.com/dessant/lock-threads)

Now also locks discussions (in addition to issues and pull requests):
https://github.com/dessant/lock-threads/blob/main/CHANGELOG.md#500-2023-11-14

#### `actions/stale@v9` [link](https://github.com/actions/stale)

Is now stateful: If the action ends because of
[operations-per-run](https://github.com/actions/stale#operations-per-run)
then the next run will start from the first unprocessed issue skipping
the issues processed during the previous run(s).
https://github.com/actions/stale/releases/tag/v9.0.0


Closes PACK-2347

Co-authored-by: Tobias Koppers <tobias.koppers@googlemail.com>
2024-02-01 22:13:29 +01:00
Zack Tanner
c60967328c
remove unnecessary PPR branch in non-PPR reducer (#61176)
PPR flows through the `navigateReducer_PPR` branch. This handling is vestigial from before proper PPR navigation support was added.

Closes NEXT-2244
2024-02-01 12:26:29 -08:00
JA
b654effd53
fix(with-docker): resolve build with pnpm (#61529)
### Adding or Updating Examples

- Example:
[with-docker](https://github.com/vercel/next.js/tree/canary/examples/with-docker)
- Update: The latest change introduced in #61466 on the building process
of NextJS when the package manager is PNPM is currently throwing an
error (it works for npm though).

**To replicate the error:**

1. Checkout on the **with-docker** example
2. Install with PNPM so that it generates the pnpm-lock.yaml
3. Build the Docker image -> This will fail on the _builder stage_ step
that runs `pnpm run build`.

**Possible Solution:**
- Run `corepack enable pnpm` before building with pnpm
2024-02-01 19:32:57 +00:00
Tim Neutkens
c99bf673fe
Fix env-config tests for Turbopack (#61503)
## What?

This test was checking internals, specifically the written files. I've
refactored it to only depend on page in the application itself, the
functionality worked fine already in Turbopack.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2325
2024-02-01 18:24:28 +01:00
Tim Neutkens
ffd5732187
Fix .env hmr for Node.js runtime in Turbopack (#61504)
## What?

Whenever `.env` related files or tsconfig/jsconfig changes there's a
call to `invalidate()`, as far as I found the only call to
`invalidate()` even, which wasn't implemented for Turbopack yet. For
`NEXT_PUBLIC_` changes normal Turbopack HMR will kick in already but
this test was checking env vars that do not affect the compiled output,
so Turbopack would not trigger a HMR as no inputs changed. Similarly
webpack doesn't either and it implements this call in a similar way.

For edge runtime there's a different bug where changes are not
propagated even when you refresh, so while this change does fix another
bug for edge runtime it doesn't solve that underlying issue where the
values don't update to begin with. I'll investigate that next.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->
2024-02-01 18:00:05 +01:00
Jiachi Liu
edb9371443
Fix experimental react support in app-route runtime (#61511)
Follow up for #61463

Basically the fix in #61463 was not correct. I added a log to see which
react is resolved in `dynmiac-rendering` module, and the got this:

The module with incorrect react version is from
`next.js/packages/next/dist/compiled/next-server/app-route.runtime.prod.js`
which resolves `react` as `./dist/compiled/react/index.js` even
experimental react should pop in here.

Then I found the app-route runtime doesn't have check for the react exp
env, then I added there to make it aligned with app-page runtime


Closes NEXT-2327
Closes NEXT-2294
2024-02-01 17:13:28 +01:00
Kiko Beats
461aa5108e
build: upgrade edge-runtime (#61030)
It exposes `performance` constructor

Closes #60433 
Closes NEXT-2195
2024-02-01 13:10:12 +01:00
Tim Neutkens
0237e60a3d
Fix emotion test (#61499)
## What?

Ensures that the `@emotion/cache` dependency is installed in the project
as it is used in `_app.js`. Ensures this test passes in Turbopack too.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2322
2024-02-01 12:14:54 +01:00
Tim Neutkens
b5155e166b
Fix styled-components test for Turbopack (#61496)
## What?

Fixes one of the styled-components tests. Somehow the test that checks
the warning shows up without the transform is not showing the warning
but the transform is also not enabled, so I've skipped the test as it's
not important for stable.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

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

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

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


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2321
2024-02-01 11:10:51 +01:00
Vercel Release Bot
2e3b88dcf1
Update font data (#61479)
This auto-generated PR updates font data with latest available

Co-authored-by: JJ Kasper <jj@jjsweb.site>
2024-02-01 01:12:13 +00:00
Steven
9d949fd428
chore(deps): bump swr to 2.2.4 (#61480)
- Closes https://github.com/vercel/next.js/pull/61478

Closes NEXT-2319
2024-02-01 00:29:04 +00:00
vercel-release-bot
a35f689c5b v14.1.1-canary.27 2024-01-31 23:21:57 +00:00
Jiachi Liu
be37d3eaab
Fix build worker callback arg missing correct page path (#61347)
### What

The `arg` in the worker callback is alwasy `any`, when we access the
page path the argument could be in different form as the arg types are
different.

This PR align the argument type to object for `isPageStatic`,
`getDefinedNamedExports`, `hasCustomGetInitialProps` methods in static
worker. So they can share the similar shape of type of argument when
accessing `page` path. This will avoid the case that logged `page` in
the warning is `undefined`

Import the helpers from utils instead of workers as the worker itself
don't need to contain other exports that is not used for static worker.

### Why

This PR align the callback type of callback argument type of static
worker, so that we could get the actual page path value in a type-safe
way. We have 4 methods for static worker, `exportPage`, `isPageStatic`,
`getDefinedNamedExports`, `hasCustomGetInitialProps`, which the rest of
3 methods share the same format of warnings but their argument are
different. It's easily ended up with wrong argument type, and log with a
bad page path in the warning.


Closes NEXT-2289
2024-02-01 00:04:34 +01:00
Jiachi Liu
92125f07b4
Always show version text in error overlay (#61421)
Make sure the version is always display on error overlay if possible, to
avoid that we saw it's "update to date" in screenshot but still no idea
about the version


![image](https://github.com/vercel/next.js/assets/4800338/22d932ce-6176-4cbd-be66-3db1eda259aa)


Closes NEXT-2307
2024-02-01 00:04:00 +01:00
Will Binns-Smith
c7ba7b8d8c
Turbopack: fix telemetry attributes for swc options (#61474)
Previously, this considered explicitly `false` options as true, as they
were still `Some(_)`.


Closes PACK-2340
2024-01-31 13:58:08 -08:00