473,406 Members | 2,867 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,406 software developers and data experts.

PyChecker lives! Version 0.8.13 released.

A new version of PyChecker is (finally) available for your hacking pleasure.

It's been quite a while since the last release--11 months.
I wish there was more progress, but such is life.
Many bug fixes and some new warnings were added.

I hope to get future releases out faster. I have several patches
queued up and ideas for more warnings. As always, I'd like
to hear your suggestions for common mistakes and bugs than
can/should be found by PyChecker.

I'm very interested to know what version(s) of Python you
use (or would like to use) PyChecker with. Even if you
don't use PyChecker, please take a moment to answer this short poll
so I can get an idea of how many people use each version of Python.

Please take a moment and visit: http://metaslash.com/pyversion.html

It would be great if you could help out the Python Software Foundation
and make a donation: http://python.org/psf/donate.html
In return for your generous donation, I will send you a very personal
email. ;-)

Comments, criticisms, new ideas, and other feedback is welcome.

Changes from 0.8.12 to 0.8.13:

* Add -s/--shadowbuiltin option to warn when overriding a builtin
* Add warning when assigning a variable to itself
* Add warning when dividing a variable by itself
* Add warnings when using a bit-wise operator with the same variable (a & a)
* Add warning when passing a constant string to getattr()/setattr()
* Add --special option to check for __special__ (reserved) method names
and that their signature (argument count) is correct
* Add warning for using __getattribute__ in an old-style class
* Suppress 'self as first argument' warning for static and class methods
* Add --classmethodargs option to specify first argument name
for class methods

PyChecker is available on Source Forge:
Web page: http://pychecker.sourceforge.net/
Project page: http://sourceforge.net/projects/pychecker/
Mailing List: py************@lists.sourceforge.net

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.

Neal
--
py************@lists.sourceforge.net
Jul 18 '05 #1
1 1468
> As always, I'd like to hear your suggestions for common mistakes and bugs
than
can/should be found by PyChecker.

Hi Neal. Thanks for these questions, and thanks for pychecker!

More nifty checks would always be welcome, but for me, some fairly small and
easy changes to pychecker might make a big difference. I would suggest
putting more of your attention on giving the user more control over
pychecker. In particular:

1. Make it really clear and obvious in the documentation that it is
possible to drive pychecker using options.py. Put some screenshots in the
docs, etc.

2. Bring options.py up-to-date: support all options (or maybe document
things better). For example, I've never been able to get the suppressions
dictionary in .pycheckrc to work, despite numerous experiments. I miss not
being able to get this to work every time I run pychecker.

3. Add an option to options.py so one can specify a source file to run.
Better yet, allow a list of files to check. As it is now, I have to browse
to the file.

4. Think about ways to make pychecker scriptable. This is a biggie. If it
is already, then _tell us about it_ (!!)

5. Think about ways to make pychecker less monolithic and more useful for
unit testing. In effect, I'd like unit tests to be able to run a specific
set of tests on specific files with specific options without having to mess
with options.py or .pycheckrc. This would be so cool.

I don't believe any of these items would take a lot of technical work, but
they would make pychecker hugely more useful to me.

Thanks for listening.

Edward
--------------------------------------------------------------------
Edward K. Ream email: ed*******@charter.net
Leo: Literate Editor with Outlines
Leo: http://webpages.charter.net/edreamleo/front.html
--------------------------------------------------------------------
Jul 18 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

16
by: achrist | last post by:
The pychecker site says that pychecker works with versions 1.5 through 2.2. Any reason to expect that 2.3 breaks it? Anyone tried it to see? TIA Al
4
by: beliavsky | last post by:
If I run PyChecker on the following program, stored in xtry.py, m = 10000000 k = 0 for i in xrange(m): k = k + i print k x = range(3) print x
8
by: Frans Englich | last post by:
Hello, I take PyChecker partly as an recommender of good coding practice, but I cannot make sense of some of the messages. For example: runner.py:878: Function (main) has too many lines (201)...
21
by: Philippe Fremy | last post by:
Hi, I would like to develop a tool that goes one step further than pychecker to ensure python program validity. The idea would be to get close to what people get on ocaml: a static verification...
4
by: Anthony Greene | last post by:
Howdy, I had the impression that pychecker caught and reported such dynamic syntactical errors. #!/usr/bin/env python def add(i): i += 10 status = 3
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.