diff options
Diffstat (limited to 'python/pychecker/README')
-rw-r--r-- | python/pychecker/README | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/python/pychecker/README b/python/pychecker/README new file mode 100644 index 0000000000..9fb5dcec9e --- /dev/null +++ b/python/pychecker/README @@ -0,0 +1,25 @@ +PyChecker is a tool for finding bugs in python source code. It finds problems +that are typically caught by a compiler for less dynamic languages, like C and +C++. It is similar to lint. Because of the dynamic nature of python, some +warnings may be incorrect; however, spurious warnings should be fairly +infrequent. + +PyChecker works in a combination of ways. First, it imports each module. If +there is an import error, the module cannot be processed. The import provides +some basic information about the module. The code for each function, class, +and method is checked for possible problems. + +Types of problems that can be found include: +* No global found (e.g., using a module without importing it) +* Passing the wrong number of parameters to functions/methods/constructors +* Passing the wrong number of parameters to builtin functions & methods +* Using format strings that don't match arguments +* Using class methods and attributes that don't exist +* Changing signature when overriding a method +* Redefining a function/class/method in the same scope +* Using a variable before setting it +* self is not the first parameter defined for a method +* Unused globals and locals (module or variable) +* Unused function/method arguments (can ignore self) +* No doc strings in modules, classes, functions, and methods + |