-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
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
feat(remix-vercel): remove @vercel/node
from peerDependencies
#6076
Conversation
@vercel/node is a huge and quite overloaded library. It includes stale typescript version, old esbuild and own edge-runtime which is not need for most remix users. You can see here install size https://packagephobia.com/result?p=%40vercel%2Fnode And `@remix/vercel` use it only to import two types which are compatible with builtin node types.
|
Hi @TrySound, Welcome, and thank you for contributing to Remix! Before we consider your pull request, we ask that you sign our Contributor License Agreement (CLA). We require this only once. You may review the CLA and sign it by adding your name to contributors.yml. Once the CLA is signed, the If you have already signed the CLA and received this response in error, or if you have any questions, please contact us at [email protected]. Thanks! - The Remix team |
Thank you for signing the Contributor License Agreement. Let's get this merged! 🥳 |
@vercel/node
from peerDependencies
import type { | ||
IncomingMessage as VercelRequest, | ||
ServerResponse as VercelResponse, | ||
} from "node:http"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This would be a breaking change, because TS will throw an error if people are implementing getLoadContext
and using the added properties
export declare type VercelRequest = IncomingMessage & {
query: VercelRequestQuery;
cookies: VercelRequestCookies;
body: VercelRequestBody;
};
export declare type VercelResponse = ServerResponse & {
send: (body: any) => VercelResponse;
json: (jsonBody: any) => VercelResponse;
status: (statusCode: number) => VercelResponse;
redirect: (statusOrUrl: string | number, url?: string) => VercelResponse;
};
The team is also looking into what the future of @remix-run/vercel
would be now that it's technically not necessary anymore
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now vercel users cannot upgrade remix until @vercel/remix
package is bumped as well because it has fixed @remix-run/node
dependency. Would be easier for everyone if remix just integrated all the stuff back from vercel fork.
Going to close this as |
@vercel/node is a huge and quite overloaded library. It includes stale typescript version, old esbuild and own edge-runtime which is not need for most remix users.
You can see here install size https://packagephobia.com/result?p=%40vercel%2Fnode
And
@remix/vercel
use it only to import two types which are compatible with builtin node types.Closes: #
Testing Strategy: CI should pass