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

Replace populate_by_name with validate_by_name

Recipe IDorg.openrewrite.python.migrate.pydantic.ReplacePopulateByNameWithValidateByName
Artifactopenrewrite-migrate-python

Pydantic 2.11 introduced validate_by_name as the equivalent of populate_by_name, which is pending deprecation in Pydantic V3. Rename ConfigDict(populate_by_name=...) to ConfigDict(validate_by_name=...). This is behavior-preserving (validate_by_alias defaults to True) and future-proofs the configuration.

Single recipePythonpythonpydanticmigration2.11Moderne 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 Python recipes, you will need to use the Moderne CLI.

Once the CLI is installed, you can install this Python recipe package by running the following command:

Install the recipe package
mod config recipes pip install openrewrite-migrate-python==0.9.3

Then, you can run the recipe via:

Run the recipe
mod run . --recipe org.openrewrite.python.migrate.pydantic.ReplacePopulateByNameWithValidateByName