Use case
Framework
Owner
Remix Js/V2/Migration Recipe
This recipe is a set of codemods that will help migrate to Remix.js v2.
Remix Js/V2/Webpack V2 Migrate Dev Server Port
In your remix.config.js, rename devServerPort to future.v2_dev.port.
Remix Js/V2/Typescript 2 Update Links Function And Property Names
Route links properties should all be the React camelCase values instead of HTML lowercase values.
Remix Js/V2/Rename Browser Build Directory
In your remix.config.js, rename browserBuildDirectory to assetsBuildDirectory.
Before
Remix Js/V2/Remix Run 1 Use Transition To Use Navigation
This hook is now called useNavigation to avoid confusion with the recent React hook by the same name. It also no longer has the type field and flattens the submission object into the navigation object itself.
Remix Js/V2/Remix 1 Use Route Error Codemod
In v1, a thrown Response rendered the closest CatchBoundary while all other unhandled exceptions rendered the ErrorBoundary. In v2 there is no CatchBoundary and all unhandled exceptions will render the ErrorBoundary, response or otherwise.
Remix Js/V2/Remix 1 Replace Response With Create Readable Stream
ne place this is likely to surface and require a change is your app/entry.server.tsx file, where you'll also need to convert the Node PassThrough into a web ReadableStream via createReadableStreamFromReadable
Remix Js/V2/Remix 1 Add Meta V1 Wrapper
Using the metaV1 function, you can pass in the meta function's arguments and the same object it currently returns. This function will use the same merging logic to merge the leaf route's meta with its direct parent route meta before converting it to an array of meta descriptors usable in v2.
Remix Js/V2/Nodejs Module Exports Server Build Directory To Path
In your remix.config.js, rename serverBuildDirectory to serverBuildPath and specify a module path, not a directory.
Remix Js/V2/Fetcher Submission Properties Flattening
Like useNavigation, useFetcher has flattened the submission and removed the type field.
Remix Js/V2/Add Matches Param And Array Return To Meta Export
Instead of returning an object from meta, you will now return an array of descriptors and manage the merge yourself. This brings the meta API closer to links, and it allows for more flexibility and control over how meta tags are rendered.
Valtio/V2/Migration Recipe
This recipe provides a collection of codemods to help you migrate your codebase to Valtio v2. These codemods are designed to streamline the transition process by automating common code transformations due to behavioral changes in Valtio v2.
Valtio/V2/Use Snapshot Migration
This codemod automates the migration of Valtio code to accommodate changes in the behavior of
useSnapshot()
. In recent updates,useSnapshot()
has been modified for better compatibility withuseMemo
and the upcoming React compiler. This codemod updates your code to ensure optimal performance and compatibility with these changes.Valtio/V2/Deep Clone Proxy Objects
In Valtio v2, the behavior of the
proxy(obj)
function has changed. In v1,proxy(obj)
was a pure function that deeply copied the objectobj
. In v2,proxy(obj)
is an impure function that deeply modifiesobj
. This codemod updates your code to accommodate these changes by incorporatingdeepClone
to ensure that objects are deeply copied as they were in v1.Msw/2/Upgrade Recipe
This recipe is a set of codemods that will upgrade your project from using msw v1 to v2.
Codemod verified
Regularly tested and maintained by our engineers and codemod expert community
Msw/2/Response Usages
To send a response from MSW handler, one would previously use something like
res(ctx.text("Hello world"))
. In msw v2, this is achieved by returning a native WebAPI Response object. msw v2 conveniently exposes aHttpResponse
function that has useful methods for creating just that object with a desired body. This codemod replaces the oldres
calls with the newHttpResponse
function calls and a bunch of ctx utilities that usually go with it. See examples below.Codemod verified
Regularly tested and maintained by our engineers and codemod expert community
Msw/2/Req Passthrough
A new way of calling a passthrough is available in msw v2. This codemod replaces
req.passthrough()
calls with the new way of doing that using exported function.Codemod verified
Regularly tested and maintained by our engineers and codemod expert community
Msw/2/Print Handler
A new way of listing all handlers is preferred in msw v2. This codemod replaces
printHandlers()
calls with the new way of doing that.Codemod verified
Regularly tested and maintained by our engineers and codemod expert community
Msw/2/Lifecycle Events Signature
In msw v2, lifecycle events callback methods have changed their signature. This codemod replaces usages if its arguments with the new ones.
Codemod verified
Regularly tested and maintained by our engineers and codemod expert community