PyChecker 0.8.19 “Two Seven” released |
2011-01-08
|
The first PyChecker release done by yours truly is out the door. You can download the source or install the Fedora 12/13/14 package from my package repository. I hope to push it in Fedora as soon as possible.
This release collects two years of bug fixes, and adds support for Python 2.7, which is now the default in Fedora 14.
I already have a few additional local patches that bring out a bunch of new (and correct) warnings in Flumotion, so I'll probably not wait another two years for the next release. My goal is to work towards a clean check of Flumotion.
[…] This post was mentioned on Twitter by Planet Python. Planet Python said: Thomas Vander Stichele: PyChecker 0.8.19 “Two Seven†released http://bit.ly/i39bKE […]
Pingback by Tweets that mention thomas.apestaart.org » PyChecker 0.8.19 “Two Seven†released -- Topsy.com — 2011-01-08 @ 21:43
Is there a way to run pychecker without installing it system wide?
I want to bundle pychecker along with my application so that users don’t have to haunt the internet for the package.
Also would it be possible to create a simple API of this sort.
import pychecker.checker
error_data = checker.check(“/path/to/python/file.py”)
error_data would be a list of error/warning messages and line numbers.
It would go a long way in helping those developers who want to integrate pychecker into their applications.
I did something similar in an old version of pychecker, but it looks like there’ve been some changes in the new version.
Pyflakes allows me to do this very well. Pylint on the other hand was a nightmare. Please don’t go the pylint route.
Thanks
Comment by mystilleef — 2011-01-09 @ 01:05
Hi,
Yes, you can simply run pychecker by running “python pychecker/checker.py” from the unpacked tarball.
That API sounds like a good idea, and I don’t think it’s very far from there. Let me see about that for a release soon.
Comment by Thomas — 2011-01-09 @ 10:25
Awesome! I eagerly await the next release.
Comment by mystilleef — 2011-01-09 @ 10:59
I’ve been using pychecker 0.8.18 (as installed by MacPorts) with python 2.6.5 on OS X for a while now.
I downloaded your new version 0.8.19 but I didn’t want to install it until I validate it, so I ran it via:
python /path/to/download/folder/pychecker-0.8.19/pychecker/checker.py
I get a number of INTERNAL ERROR messages from one of my modules. These are from lines in my code that use the ‘/=’ operator.
E.g.:
calibDelay /= 16
I note that I have the following line at the top of the module in order to always get floating point division:
from __future__ import division
The INTERNAL ERROR messages look like:
INTERNAL ERROR — STOPPED PROCESSING FUNCTION —
Traceback (most recent call last):
File “/path/to/download/folder/pychecker-0.8.19/pychecker/warn.py”, line 242, in _checkFunction
_checkCode(code, codeSource)
File “/path/to/download/folder/pychecker-0.8.19/pychecker/warn.py”, line 155, in _checkCode
raise NotImplementedError(‘No DISPATCH member for op %r’ % op)
NotImplementedError: No DISPATCH member for op 29
Comment by Cameron Hayne — 2011-01-10 @ 22:58
I took a look and just added support for opcode 29 to CVS.
Could I get you try CVS ? You can use it in the same way you used it from the source tarball after checking out.
Let me know if it works!
Thomas
Comment by Thomas — 2011-01-10 @ 23:32