Replace ast.Str with ast.Constant

Proprietary

The ast.Str node type was deprecated in Python 3.8 and removed in Python 3.14. Rename it to ast.Constant. An isinstance check against ast.Constant accepts every constant, and the recipe adds no isinstance(node.value, str) guard to narrow it.

org.openrewrite.python.migrate.ReplaceAstStr
mod run . --recipe=org.openrewrite.python.migrate.ReplaceAstStr

Install it once, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.

Recipe list

It runs these recipes, in this order.

  1. Change import