• Fastify/5/Remove Done Callback

    This codemod updates fastify.register to use return instead of done, reflecting changes in Fastify v5 for asynchronous plugin registration.

  • Fastify/5/MigrationRecipe

    This recipe provides a set of codemods designed to assist with migrating to Fastify 5. Each codemod addresses specific changes and enhancements introduced in Fastify 5.

  • Fastify/5/Rename Logger To Logger Instance

    This codemod updates the Fastify logger configuration by renaming the logger option to loggerInstance, in line with Fastify v5 changes.

  • Fastify/5/Make Reply Trailer Async

    This codemod updates the reply.trailer method to use an async function for handling trailers, aligning with Fastify v5's support for asynchronous operations in trailers.

  • Fastify/5/Redirect Arg Order

    This codemod updates reply.redirect by placing the status code as the second argument, as per Fastify v5 conventions.

  • Fastify/5/GetResponseTime To ElapsedTime

    This codemod converts reply.getResponseTime() to reply.elapsedTime, reflecting changes in Fastify v5 for retrieving response time.

  • Fastify/5/Req Connection To Socket

    This codemod updates references from req.connection to req.socket, reflecting changes in Fastify v5's request handling.

  • Fastify/5/Route Schema Enhancement

    This codemod enhances the schema definition for query strings by converting it to the full object schema format, adding properties and required fields.

  • Fastify/5/Decorate Request To Getter Method

    This codemod transforms fastify.decorateRequest with static objects into the new Fastify v5 pattern using a getter function.

  • Fastify/5/Add Expose Head Routes Option

    This codemod introduces the exposeHeadRoutes: false option to avoid automatic HEAD route exposure, while keeping manually defined HEAD routes intact.

    Before

  • Fastify/5/Replace Reply Sent With Hijack

    This codemod turns reply.sent = true into reply.hijack(), updating to the new Fastify v5 method for handling manual responses.

  • Fastify/5/Replace Hardcoded Url In Hasroute

    This codemod highlights the shift in how routes with dynamic parameters should be referenced in fastify.hasRoute in Fastify v5.

  • Fastify/5/Listen Arg Transformation

    This codemod turns fastify.listen(8000) into fastify.listen({ port: 8000 }), reflecting the highlights of the migration from the old listen method signature to the new object-based approach in Fastify v5.

    Before

  • Fastify/5/Req Params HasOwnProperty To ObjectHasOwn

    This codemod turns req.params.hasOwnProperty('name') into Object.hasOwn(req.params, 'name'), reflecting the new Fastify v5 approach to property checking.

  • Fastify/4/Reply Raw Access

    This codemod converts reply.res moved to reply.raw.

  • Fastify/4/Remove App Use

    This codemod removes app.use() and the use of middleware is no longer supported.

  • Fastify/4/Migration Recipe

    This recipe is a set of codemods that will help migrate to Fastify 4.

  • Fastify/4/Wrap Routes Plugin

    This codemod wrap your routes in a plugin

  • Fastify/4/Url Params Optional

    This codemod declares the optional parameters explicitly.

  • Fastify/4/Expose Head Routes

    This codemod makes exposeHeadRoutes true by default