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.

Codemodder is sponsored by pixee.ai.

Development Status

The codemodder-python project is still under heavy 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.71.0.tar.gz (251.9 kB view details)

Uploaded Source

Built Distribution

codemodder-0.71.0-py3-none-any.whl (179.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for codemodder-0.71.0.tar.gz
Algorithm Hash digest
SHA256 418cb354ea27420b4ed0f5bd160a6634fd3a8f9b594ca0cf4831c58d28923e64
MD5 ab73fb5f825f287f7a51e17df4b3acc3
BLAKE2b-256 230e4dddde8906865ca4a39778d07b8f421bdf0f5aff8c73d8b76f8dec03ba2b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for codemodder-0.71.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e2939984c366ec3e1b63c4c7fef9ed626aecfc73a224010102a9957c6fc968cf
MD5 738b4f62b3c674e8c3f7970fecee46e9
BLAKE2b-256 28572637156ccdf756ef3e35322b4d3af81d48bb142aef6a529854f88ce10fcc

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