mirror of
https://github.com/cloudflare/vinext.git
synced 2026-05-09 00:09:23 +02:00
[PR #993] [MERGED] fix(app): apply layout segment config to pages #1006
Labels
No labels
enhancement
enhancement
good first issue
help wanted
nextjs-tracking
nextjs-tracking
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/vinext#1006
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/cloudflare/vinext/pull/993
Author: @NathanDrake2406
Created: 4/30/2026
Status: ✅ Merged
Merged: 5/3/2026
Merged by: @james-elicx
Base:
main← Head:nathan/layout-segment-config📝 Commits (2)
8a4a177fix(app): apply layout segment config to pages62b7fdafix(app): address segment config review nits📊 Changes
29 files changed (+1048 additions, -34 deletions)
View changed files
📝
packages/vinext/src/entries/app-rsc-entry.ts(+38 -5)📝
packages/vinext/src/server/app-page-dispatch.ts(+11 -1)📝
packages/vinext/src/server/app-page-params.ts(+2 -2)📝
packages/vinext/src/server/app-page-request.ts(+113 -11)➕
packages/vinext/src/server/app-segment-config.ts(+174 -0)📝
packages/vinext/src/server/app-server-action-execution.ts(+5 -0)📝
packages/vinext/src/shims/fetch-cache.ts(+127 -14)📝
packages/vinext/src/shims/unified-request-context.ts(+1 -0)📝
tests/app-page-request.test.ts(+65 -0)📝
tests/app-router.test.ts(+64 -0)➕
tests/app-segment-config.test.ts(+190 -0)📝
tests/fetch-cache.test.ts(+151 -0)📝
tests/fixtures/app-basic/app/feed/page.tsx(+3 -1)➕
tests/fixtures/app-basic/app/layout-segment-config/dynamic-error-fetch/page.tsx(+6 -0)➕
tests/fixtures/app-basic/app/layout-segment-config/dynamic-error/[id]/layout.tsx(+5 -0)➕
tests/fixtures/app-basic/app/layout-segment-config/dynamic-error/[id]/page.tsx(+8 -0)➕
tests/fixtures/app-basic/app/layout-segment-config/dynamic/[id]/layout.tsx(+5 -0)➕
tests/fixtures/app-basic/app/layout-segment-config/dynamic/[id]/page.tsx(+8 -0)➕
tests/fixtures/app-basic/app/layout-segment-config/force-dynamic/layout.tsx(+5 -0)➕
tests/fixtures/app-basic/app/layout-segment-config/force-dynamic/page.tsx(+3 -0)...and 9 more files
📄 Description
Summary
route.pagedynamic,revalidate,dynamicParams, andfetchCacheto App page request handlingserver/app-segment-configNext.js compatibility evidence
dynamic,fetchCache, and shortest numericrevalidate: https://github.com/vercel/next.js/blob/canary/packages/next/src/build/utils.ts#L1001-L1041dynamicParams = falseas effective if any generated segment disables dynamic params: https://github.com/vercel/next.js/blob/canary/packages/next/src/build/static-paths/app.ts#L907-L959Tests
vp test run tests/app-segment-config.test.ts tests/fetch-cache.test.ts tests/entry-templates.test.tsvp test run tests/app-router.test.ts -t "dynamicParams = false exported from a layout|revalidate exported from a layout|force-dynamic' exported from a layout"vp check packages/vinext/src/server/app-segment-config.ts packages/vinext/src/shims/fetch-cache.ts packages/vinext/src/shims/unified-request-context.ts packages/vinext/src/entries/app-rsc-entry.ts tests/app-segment-config.test.ts tests/fetch-cache.test.ts tests/app-router.test.ts🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.