Skip to main content
Moderne OnlyThis recipe is proprietary to Moderne and runs on the Moderne platform or CLI — it isn’t part of the open-source catalog. Available with a Moderne subscription.Contact Sales

Find encoding/json usage for the v2 migration

Recipe IDorg.openrewrite.golang.migration.FindEncodingJsonUsage
Artifactgithub.com/moderneinc/recipes-go

Inventory every encoding/json (v1) touchpoint that an encoding/json/v2 migration must address: the import, package functions, Encoder/Decoder and other type methods (resolved through the type system, so receivers reached via variables, parameters, or fields are all found), exported types, [N]byte/time.Duration struct fields, omitempty tags classified by field type, and custom MarshalJSON/UnmarshalJSON implementations. Findings populate a data table categorized as import, rewrite, review, or modernize. This recipe reports only and does not modify code.

Single recipeOpenRewriteModerne Proprietary License
Try in PlatformTry this recipe in the Moderne platform. Not a user yet? You’ll get a no-setup demo environment, with nothing to install or configure.

Usage

Run this recipe

In order to run Go recipes, you will need to use the Moderne CLI. For Go specific configuration instructions, please see our configuring Go guide.

Once the CLI is installed, you can run the recipe via:

Run the recipe
mod run . --recipe FindEncodingJsonUsage

If the recipe is not available locally, then you can install it using:

Installing without a pinned version lets mod config recipes upgrade pull in later versions without editing this command; a pinned version stays where you put it.

Install the recipe module
mod config recipes go install github.com/moderneinc/recipes-go