diff options
author | LukenShiro <lukenshiro@ngi.it> | 2010-05-13 00:58:01 +0200 |
---|---|---|
committer | David Somero <xgizzmo@slackbuilds.org> | 2010-05-13 00:58:01 +0200 |
commit | 50f74b69e1e5c05e8e66e709064f24fc3712975f (patch) | |
tree | 2ff10b916ac31cb0a3f0782f4ca19272ff39669a /development/pychecker/README | |
parent | e0f28d2291ee32c2251eb387c1b51c4f2a1919f2 (diff) |
development/pychecker: Added to 13.0 repository
Diffstat (limited to 'development/pychecker/README')
-rw-r--r-- | development/pychecker/README | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/development/pychecker/README b/development/pychecker/README new file mode 100644 index 0000000000000..ad5bab77ab979 --- /dev/null +++ b/development/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 + |