Skip to content

[pull] canary from vercel:canary#1048

Merged
pull[bot] merged 3 commits into
code:canaryfrom
vercel:canary
May 15, 2026
Merged

[pull] canary from vercel:canary#1048
pull[bot] merged 3 commits into
code:canaryfrom
vercel:canary

Conversation

@pull

@pull pull Bot commented May 15, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

aurorascharff and others added 3 commits May 14, 2026 22:00
## What

When a user writes `Date()` or `new Date()` in a Server Component and
instant validation surfaces a sync IO error, the dev overlay incorrectly
labels the cause as `Date.now()`.

```tsx
return <p>{new Date().toString()}</p>
```
Overlay headline says: `Next.js encountered Date.now() without an
explicit rendering intent.`

## Why

`getBlockingRouteErrorDetails` in `errors.tsx` classifies the API by
scanning the error message with `String.prototype.includes` against
`SYNC_IO_APIS` in order, first match wins. The time-type factory always
embeds `Date.now()` in the `elapsedTimeBullet` text (`Measure elapsed
time with \`performance.now()\` instead of \`Date.now()\``) regardless
of which API the user called. Because `Date.now()` was first in the
array, it matched the bullet text and shadowed the real expression.

Fix: put `new Date()` and `Date()` before `Date.now()` so the
more-specific entries win when both appear in the message.

User-visible cards and docs URL are unaffected — all three time variants
map to the same card set — only the cause label was wrong.

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
…em (#93856)

Adds `metadata.internal: true` to all 12 `.agents/skills/*/SKILL.md` files so external `npx skills add /path/to/next.js` no longer lists Next.js framework-dev skills — only `next-compile` remains visible.

<!-- NEXT_JS_LLM_PR -->
…free (#93858)

When an error prevents validation from happening that same error likely
shows up in the main dev render. To avoid double reporting in dev we
silence notices about validation being incomplete if the main render has
errors to report to the user. If no user facing errors exist then we
will report the lack of validation as it's own issue to confront.
@pull pull Bot locked and limited conversation to collaborators May 15, 2026
@pull pull Bot added the ⤵️ pull label May 15, 2026
@pull pull Bot merged commit 4e75a9c into code:canary May 15, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants