[Bug?]: Server action chunks are not generated in production build when using `experimental.islands`
Duplicates
- [X] I have searched the existing issues
Latest version
- [X] I have tested the latest version
Current behavior 😯
Triggering a server action from a production build when experimental.islands are enabled throws a 500 error Cannot find module for the referenced chunk.
Expected behavior 🤔
Server actions should behave as they do in development as well as a production build with islands disabled.
Steps to reproduce 🕹
Steps:
- Clone linked repo
- Run
pnpm build - Run
pnpm start - Open app and click
Trigger Actionbutton - Observer the 500 error indicating that the server action chunk does not exist.
Context 🔦
I tried debugging this locally and the issue seems related to these lines in the vinxi config. Removing the both conditionals for the islands feature re-adds the server functions, but re-adds the client side routing, obviously. Having either of the two conditionals results in the server actions chunk not being generated.
https://github.com/solidjs/solid-start/blob/main/packages/start/config/index.js#L154-L159 https://github.com/solidjs/solid-start/blob/main/packages/start/config/index.js#L192-L196
I will continue to poke around and see if I can solve this but I am not deeply familiar with vinxi or vite apart from a surface level understanding. I do find it odd that the client config is dictating if server actions are being generated though :thinking:
Your environment 🌎
System:
OS: Linux 6.5.0-35-generic Ubuntu 22.04.4 LTS
CPU: i7-9750H
Binaries:
Node: v20.10.0
pnpm: v9.4.0
npmPackages:
@solidjs/router: 0.13.6
@solidjs/start: 1.0.2
solid-js: 1.8.17
vinxi: 0.3.12