skip to navigation
skip to content

pep8radius 0.5

PEP8 clean only the parts of the files which you have touched since the last commit, a specific commit or a branch.

Latest Version: 0.9.2

Fixing the entire project of PEP8 infractions (“PEP8 storms”) can lead to merge conflicts, add noise to merges / pull requests and break (git) blame. pep8radius solves this problem by fixing only those PEP8 infractions contained on the lines of the project which you’ve been working, leaving these sections “better than you found it” whilst keeping your commits focused on the areas of the codebase you were actually working on.


From pip:

$ pip install pep8radius


requires autopep8, which in turn requires pep8.

Currently Supports

git and hg (you need your version control to be installed on your system).


  • Move to project directory
  • Make some changes to the project
  • Run pep8radius --dry-run # don't make the changes to files, just view the diff
  • Run pep8radius           # apply the fixes
  • Commit your changes

Against a branch you can use the same syntax as with git diff:

pep8radius master   # branch name
pep8radius c12166f  # commit hash

Note: can also use btyfi alias for pep8radius.


usage: [-h] [--version] [-v] [-d] [--dry-run] [-p n] [-a]
                [--experimental] [--exclude globs] [--list-fixes]
                [--ignore errors] [--select errors] [--max-line-length n]
                [--indent-size n]

positional arguments:
  rev                   commit or name of branch to compare against

optional arguments:
  -h, --help            show this help message and exit
  --version             print version number and exit
  -v, --verbose         print verbose messages; multiple -v result in more
                        verbose messages (passed to autopep8)
  -d, --diff            print the diff for the fixed source
  --dry-run             do not make the changes in place and print diff

  -p n, --pep8-passes n
                        maximum number of additional pep8 passes (default:
  -a, --aggressive      enable non-whitespace changes; multiple -a result in
                        more aggressive changes
  --experimental        enable experimental fixes
  --exclude globs       exclude file/directory names that match these comma-
                        separated globs
  --list-fixes          list codes for fixes; used by --ignore and --select
  --ignore errors       do not fix these errors/warnings (default: E24)
  --select errors       fix only these errors/warnings (e.g. E4,W)
  --max-line-length n   set maximum allowed line length (default: 79)
  --indent-size n       number of spaces per indent level (default 4)

For more details about these options see autopep8.

File Type Py Version Uploaded on Size
pep8radius-0.5.tar.gz (md5) Source 2014-04-02 7KB