Skip to main content

Statically check your Python code

Project description

py_static_check

py_static_check can statically check your Python code for a lot of common errors. It uses a modified pyflakes code and extends with following things:

  • Ability to specify what star imports resolve to (-s argument)
  • Ability to ignore unused import warnings (-i argument)
  • Better sorting of warnings/errors

For more information check out:

To install it do following:

sudo easy_install py_static_check

Here are some of the things py_static_check can do.

Catch undefined names, even for star imports

Example code:

from os import *

def function_with_error():
    print path
    print paths

star_imports.py:

import os
STAR_IMPORTS = {
    'os': os.__all__,
}

When ran with py_static_check:

$ py_static_check -s tests/star_import.py tests/undefined_name_star.py
tests/undefined_name.py:5: undefined name 'paths

Ignore not used warnings

Exampel code:

from os import path

When ran with py_static_check -i option:

$ py_static_check -i tests/ignore_not_used.py

$ py_static_check tests/ignore_not_used.py
tests/ignore_not_used.py:10: 'path' imported but unused

Assigned but never used

Like pyflakes it can catch a lot of errors, such as defining a variable without using it.

Exampel code:

def some_function():
    def inner_fn():
        local_var = ""

When ran with py_static_check:

$ py_static_check tests/assigned_but_never_used.py

tests/assigned_but_never_used.py:8: local variable 'local_var' is assigned to but never used

Copyright: 2011 by amix License: MIT.

Project details


Release history Release notifications

This version
History Node

1.2

History Node

1.1

History Node

1.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
py_static_check-1.2-py2.7.egg (22.0 kB) Copy SHA256 hash SHA256 Egg 2.7 Dec 19, 2011
py_static_check-1.2.tar.gz (10.5 kB) Copy SHA256 hash SHA256 Source None Dec 19, 2011

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page