Skip to content

Commit 2747232

Browse files
authored
Merge branch 'main' into refactor/rsc-on-client-reference
2 parents 5406e46 + 3d3dbc2 commit 2747232

5 files changed

Lines changed: 58 additions & 2 deletions

File tree

packages/plugin-react/package.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,5 +61,17 @@
6161
},
6262
"engines": {
6363
"node": "^20.19.0 || >=22.12.0"
64+
},
65+
"compatiblePackages": {
66+
"schemaVersion": 1,
67+
"rolldown": {
68+
"type": "compatible",
69+
"versions": "^1.0.0-beta.44",
70+
"note": "You can use Rolldown's built-in feature directly."
71+
},
72+
"rollup": {
73+
"type": "incompatible",
74+
"reason": "Uses Rolldown-specific APIs or Vite-specific APIs"
75+
}
6476
}
6577
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
import { test } from '@playwright/test'
2+
import * as vite from 'vite'
3+
import { setupInlineFixture, useFixture } from './fixture'
4+
import { defineStarterTest } from './starter'
5+
6+
test.describe('rolldownOptions', () => {
7+
test.skip(!('rolldownVersion' in vite), 'rolldown only')
8+
9+
const root = 'examples/e2e/temp/rolldown-options'
10+
test.beforeAll(async () => {
11+
await setupInlineFixture({
12+
src: 'examples/starter',
13+
dest: root,
14+
files: {
15+
'vite.config.ts': {
16+
edit: (s) => s.replace(/rollupOptions/g, 'rolldownOptions'),
17+
},
18+
},
19+
})
20+
})
21+
22+
test.describe('dev', () => {
23+
const f = useFixture({ root, mode: 'dev' })
24+
defineStarterTest(f)
25+
})
26+
27+
test.describe('build', () => {
28+
const f = useFixture({ root, mode: 'build' })
29+
defineStarterTest(f)
30+
})
31+
})

packages/plugin-rsc/examples/e2e/middleware-mode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ async function main() {
2828
const entry = await import(
2929
pathToFileURL(path.resolve('dist/rsc/index.js')).href
3030
)
31-
app.use(toNodeHandler(entry.default) as any)
31+
app.use(toNodeHandler(entry.default.fetch) as any)
3232
} else {
3333
console.error(`Unknown command: ${command}`)
3434
process.exitCode = 1

packages/plugin-rsc/examples/starter/src/framework/entry.rsc.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ export type RscPayload = {
2525

2626
// the plugin by default assumes `rsc` entry having default export of request handler.
2727
// however, how server entries are executed can be customized by registering own server handler.
28-
export default async function handler(request: Request): Promise<Response> {
28+
export default { fetch: handler }
29+
30+
async function handler(request: Request): Promise<Response> {
2931
// differentiate RSC, SSR, action, etc.
3032
const renderRequest = parseRenderRequest(request)
3133
request = renderRequest.request

packages/plugin-rsc/package.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,5 +75,16 @@
7575
"react-server-dom-webpack": {
7676
"optional": true
7777
}
78+
},
79+
"compatiblePackages": {
80+
"schemaVersion": 1,
81+
"rolldown": {
82+
"type": "incompatible",
83+
"reason": "Uses Vite-specific APIs"
84+
},
85+
"rollup": {
86+
"type": "incompatible",
87+
"reason": "Uses Vite-specific APIs"
88+
}
7889
}
7990
}

0 commit comments

Comments
 (0)