We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I am working on migrating my remix app to react-router and am now stuck on this part: https://remix.run/docs/en/main/start/future-flags#multipart-form-data-and-file-upload-utilities I've updated my actions to this:
const uploadHandler = async (fileUpload: FileUpload) => { let storageKey = getStorageKey("temporary-key"); await fileStorage.set(storageKey, fileUpload); return fileStorage.get(storageKey); }; const formData = await parseFormData(request, uploadHandler);
This works when i run the dev-server. But when i run a production-build the formData is empty. Does anyone know how this could be happening? When i do
formData
const formData = await request.formData();
I see the formData is present on the request. After I do that the parseFormData functions complains about the stream being locked.
parseFormData
My vite config looks like this:
import mdx from "@mdx-js/rollup"; import { vitePlugin as remix } from "@remix-run/dev"; import { defineConfig } from "vite"; import tsconfigPaths from "vite-tsconfig-paths"; declare module "@remix-run/server-runtime" { // or cloudflare, deno, etc. interface Future { v3_singleFetch: true; } } export default defineConfig({ server: { port: 3000 }, plugins: [ mdx(), remix({ future: { v3_fetcherPersist: true, v3_relativeSplatPath: true, v3_throwAbortReason: true, v3_singleFetch: true, v3_lazyRouteDiscovery: true, v3_routeConfig: true, }, }), tsconfigPaths(), ], });
My routes config looks like this:
import { flatRoutes } from "@remix-run/fs-routes"; export default flatRoutes();
A route not yet migrated still works:
Any guidance would be appreciated
System: OS: Linux 6.5 Debian GNU/Linux 11 (bullseye) 11 (bullseye) CPU: (12) arm64 unknown Memory: 4.92 GB / 7.66 GB Container: Yes Shell: 5.1.4 - /bin/bash Binaries: Node: 20.18.0 - /usr/local/bin/node Yarn: 1.22.22 - /usr/local/bin/yarn npm: 10.8.2 - /usr/local/bin/npm pnpm: 9.12.1 - /usr/local/share/npm-global/bin/pnpm npmPackages: @remix-run/dev: ^2.15.2 => 2.15.2 @remix-run/fs-routes: ^2.15.2 => 2.15.2 @remix-run/node: ^2.15.2 => 2.15.2 @remix-run/react: ^2.15.2 => 2.15.2 @remix-run/route-config: ^2.15.2 => 2.15.2 @remix-run/serve: ^2.15.2 => 2.15.2 vite: ^6.0.5 => 6.0.7
npm
Continue working as before migration
Breaks in the production build of Vite. The formData is always empty
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Reproduction
I am working on migrating my remix app to react-router and am now stuck on this part: https://remix.run/docs/en/main/start/future-flags#multipart-form-data-and-file-upload-utilities
I've updated my actions to this:
This works when i run the dev-server. But when i run a production-build the
formData
is empty. Does anyone know how this could be happening?When i do
I see the formData is present on the request. After I do that the
parseFormData
functions complains about the stream being locked.My vite config looks like this:
My routes config looks like this:
A route not yet migrated still works:
Any guidance would be appreciated
System Info
Used Package Manager
npm
Expected Behavior
Continue working as before migration
Actual Behavior
Breaks in the production build of Vite. The formData is always empty
The text was updated successfully, but these errors were encountered: