Skip to main content

A pluggable framework for building codemods in Python

Project description

codemodder-python

This is the Python version of the Codemodder Framework, which builds on traditional codemod frameworks by providing codemods with additional context and services. Codemodder plugins inject codemods with the context and services they need to perform complex transforms.

Pluggability and the complex transforms they enable distinguish codemodder codemods from traditional codemods.

Development Status

The codemodder-python project is still under development. 🚧

The project includes a (growing) set of core codemods. It also supports the development of custom codemods.

Many of the existing codemods make use of Semgrep. The codemodder-python framework will support additional codemod sources in the future.

⚠️ The custom codemod API is under heavy development and is subject to change. The API should not be treated as stable at this time. ⚠️

Installation

To install the package from source, use pip:

pip install .

Running Locally

You can run the codemodder program with

codemodder <directory> --output <file> ...

codemodder --help

Contributing

See CONTRIBUTING.md.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codemodder-0.67.0.tar.gz (225.8 kB view details)

Uploaded Source

Built Distribution

codemodder-0.67.0-py3-none-any.whl (154.3 kB view details)

Uploaded Python 3

File details

Details for the file codemodder-0.67.0.tar.gz.

File metadata

  • Download URL: codemodder-0.67.0.tar.gz
  • Upload date:
  • Size: 225.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for codemodder-0.67.0.tar.gz
Algorithm Hash digest
SHA256 0e15a6a5b357a0c977945cb98fd5e21b3f701c9fc5a9f86c3e80ebee1a4fcd93
MD5 a390854b193c926b13dc5f339cad4586
BLAKE2b-256 68fa2dda9e026635cb7777dd207bf957579b05ba366d7579d9f3830dcef8932d

See more details on using hashes here.

File details

Details for the file codemodder-0.67.0-py3-none-any.whl.

File metadata

  • Download URL: codemodder-0.67.0-py3-none-any.whl
  • Upload date:
  • Size: 154.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for codemodder-0.67.0-py3-none-any.whl
Algorithm Hash digest
SHA256 73c2fb863fc38a084fcc4064b5f5120b5998cd47367a76f7d9810985a2e9c150
MD5 464f14e90da1f401693657082fa6f56d
BLAKE2b-256 6ad4336080f27685d0185fd95bf45679b6d90aa27fe9da409021a4a2f927f9e4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page