Skip to content

Commit 5a50a99

Browse files
authored
Drop legacy RSC server and client extension (#40692)
Drop the support for `.server.js` and `.client.js` extension in RSC, only consume the pages with configured file extensions as page entry
1 parent 35098a1 commit 5a50a99

File tree

32 files changed

+23
-19
lines changed

32 files changed

+23
-19
lines changed

packages/next/server/config.ts

-10
Original file line numberDiff line numberDiff line change
@@ -702,16 +702,6 @@ function assignDefaults(userConfig: { [key: string]: any }) {
702702
}
703703
}
704704

705-
if (result.experimental?.serverComponents) {
706-
const pageExtensions: string[] = []
707-
;(result.pageExtensions || []).forEach((ext) => {
708-
pageExtensions.push(ext)
709-
pageExtensions.push(`server.${ext}`)
710-
pageExtensions.push(`client.${ext}`)
711-
})
712-
result.pageExtensions = pageExtensions
713-
}
714-
715705
if (result.devIndicators?.buildActivityPosition) {
716706
const { buildActivityPosition } = result.devIndicators
717707
const allowedValues = [

test/e2e/app-dir/app-static/pages/.gitkeep

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export default function Page() {
2+
return <h1 id="result-page">Result Page</h1>
3+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export default function Page() {
2+
return <p>This file won't be treated as entry page file</p>
3+
}

test/e2e/switchable-runtime/index.test.ts

+17-9
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,14 @@ describe('Switchable runtime', () => {
161161
)
162162
})
163163

164+
it('should not consume server.js file extension', async () => {
165+
const { status } = await fetchViaHTTP(
166+
context.appPort,
167+
'/legacy-extension'
168+
)
169+
expect(status).toBe(404)
170+
})
171+
164172
it('should build /api/hello and /api/edge as an api route with edge runtime', async () => {
165173
let response = await fetchViaHTTP(context.appPort, '/api/hello')
166174
let text = await response.text()
@@ -216,7 +224,7 @@ describe('Switchable runtime', () => {
216224
export const config = {
217225
runtime: 'experimental-edge',
218226
}
219-
227+
220228
export default () => new Response('edge response')
221229
`
222230
)
@@ -246,7 +254,7 @@ describe('Switchable runtime', () => {
246254
export const config = {
247255
runtime: 'experimental-edge',
248256
}
249-
257+
250258
export default () => new Response('edge response again')
251259
`
252260
)
@@ -327,7 +335,7 @@ describe('Switchable runtime', () => {
327335
export const config = {
328336
runtime: 'experimental-edge',
329337
}
330-
338+
331339
export default () => new Response('edge response')
332340
`
333341
)
@@ -360,7 +368,7 @@ describe('Switchable runtime', () => {
360368
export const config = {
361369
runtime: 'experimental-edge',
362370
}
363-
371+
364372
export default => new Response('edge response')
365373
`
366374
)
@@ -378,7 +386,7 @@ describe('Switchable runtime', () => {
378386
export const config = {
379387
runtime: 'experimental-edge',
380388
}
381-
389+
382390
`
383391
)
384392
await check(
@@ -400,7 +408,7 @@ describe('Switchable runtime', () => {
400408
export default function Page() {
401409
return <p>Hello from page with invalid type</p>
402410
}
403-
411+
404412
export const config = {
405413
runtime: 10,
406414
}
@@ -421,7 +429,7 @@ describe('Switchable runtime', () => {
421429
export default function Page() {
422430
return <p>Hello from page with invalid runtime</p>
423431
}
424-
432+
425433
export const config = {
426434
runtime: "asd"
427435
}
@@ -442,11 +450,11 @@ describe('Switchable runtime', () => {
442450
export default function Page() {
443451
return <p>Hello from page without errors</p>
444452
}
445-
453+
446454
export const config = {
447455
runtime: 'experimental-edge',
448456
}
449-
457+
450458
`
451459
)
452460
await check(

0 commit comments

Comments
 (0)