The supplementary materials for our paper, R-CPATMiner, can be found at https://mlcodepatterns.github.io .
PyEvolve automates the frequently repeated code changes in Python systems. This tool presents a complete pipeline for mining and automating best code evolution practices, ensuring that the your project does not fall behind. This link -- PyEvolve -- provides open access to the executables and source code for the tool. It includes steps for building the tool, examples of how to use it, and a list of the current APIs.
We submitted pull requests that cover a wide range of changes, including dissolving FOR loops, migrating to context managers, using advanced language features, and updating APIs. The table below contains examples of transformations from each group.
Dissolving FOR loops | Migrating to context managers | Using advanced language features | Updating APIs |
---|---|---|---|
The table below contains links to all of the pull requests we submitted to the popular open source projects.
We evaluated PyEvolve over 40,000 tranformation trials. The data set available in this link