Skip to content

[pull] canary from vercel:canary#1081

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

[pull] canary from vercel:canary#1081
pull[bot] merged 6 commits into
code:canaryfrom
vercel:canary

Conversation

@pull

@pull pull Bot commented May 28, 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 : )

mischnic and others added 6 commits May 28, 2026 10:28
If the user's `package.json` contains, `type: module`, then the file
generated by Turbopack at `[project]/__next_instrumentation_client.js`
would get treated as ESM. But it always contains CJS, causing
```
Uncaught (in promise) ReferenceError: module is not defined
    at module evaluation (__next_instrumentation_client.js:3:1)
```
### What?

- Align the public triage guide with the issue workflows current
response windows and confirmed-team labels.
- Update reproduction and canary response comments to describe automatic
closure separately from the later lock workflow.

### Why?

The documented triage contract had drifted from the active automation:
the guide described 30-day response windows and unsupported triage
labeling, while automated comments implied that timed closure
immediately locks issues. This sets inaccurate expectations for
reporters and maintainers.

### How?

Update the four Markdown surfaces that explain manual triage and
automated follow-up behavior to match the existing stale and lock
workflows.

### Verification

- `pnpm prettier --with-node-modules --ignore-path .prettierignore
--check contributing/repository/triaging.md
.github/comments/invalid-reproduction.md
.github/comments/simplify-reproduction.md
.github/comments/verify-canary.md`
- `git diff --cached --check`
- Not run: `pnpm --filter=next build` (`documentation and GitHub comment
text only; no framework source changes`)

<!-- NEXT_JS_LLM_PR -->
### What?

Fix three broken code examples in the Getting Started section.

### Why?

Per the contribution guide, code blocks should contain a minimum working
example that can be copied and pasted. These examples have bugs that
would cause runtime errors or incorrect behavior:

1. `02-project-structure.mdx`: Extra comma in App Icons table —
`apple-icon` row has `.jpg` `.jpeg`, `.png` while all other rows use
space-separated extensions without commas.
2. `03-layouts-and-pages.mdx`: `Post` component has an unused `post`
prop — the component fetches and renders all posts internally via
`getPosts()`, so the prop is never referenced. Removed the unused prop,
renamed to `Posts` to match its actual behavior, and added the missing
`import { getPosts } from '@/lib/posts'`.
3. `04-linking-and-navigating.mdx`: JSX `Layout` function is missing `{
children }` in its parameter list, causing `ReferenceError: children is
not defined` at runtime. The TSX version is correct.

### How?

- Remove stray comma from App Icons table
- Remove unused `post` prop from `Post` component, rename to `Posts`,
add missing import
- Add `{ children }` destructuring to JSX `Layout` function signature

Closes #93272

---------

Co-authored-by: Joseph <joseph.chamochumbi@vercel.com>
We want to be able to recover a shell from static and runtime
prerenders. This means that prerenders need to become staged renders, so
that we can collect the outputs as we progress through the stages. This
is a first step before #93801, where we'll actually implement the
staging

We do this with a regular `renderToReadableStream` so we can get the
results streamingly. We run the render, abort it, and omit any chunks
emitted after the abort (because in a render, pending chunks become
errored instead of halting). This logic is encapsulated in
`collectPrerenderChunksWeb`, which also tracks if the stream is still
pending.

In order to get debug info for hanging promises in `--debug-prerender`,
we also need to still collect the debug chunks emitted after the abort
and give them to the client just before aborting (so that the debug info
can be read, but nothing new can render). We already do this during the
dev staged render, so we can just re-use the existing
`createNodeStreamWithLateRelease` to achieve this.

I've also removed the unecessary microtasks from stale time and vary
params tracking. we need to wait an immediate for them to actually get
written into the stream, and the awaits weren't doing anything useful.
@pull pull Bot locked and limited conversation to collaborators May 28, 2026
@pull pull Bot added the ⤵️ pull label May 28, 2026
@pull pull Bot merged commit 1bc1da7 into code:canary May 28, 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.

5 participants