Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #61923 > unrolled thread

a Python Static Analyzer

Started byarie.lakeman@gmail.com
First post2013-12-14 16:35 -0800
Last post2013-12-15 02:56 +0000
Articles 6 — 4 participants

Back to article view | Back to comp.lang.python


Contents

  a Python Static Analyzer arie.lakeman@gmail.com - 2013-12-14 16:35 -0800
    Re: a Python Static Analyzer Dan Stromberg <drsalists@gmail.com> - 2013-12-14 17:31 -0800
    Re: a Python Static Analyzer Chris Rebert <clp2@rebertia.com> - 2013-12-14 18:36 -0800
      Re: a Python Static Analyzer arie.lakeman@gmail.com - 2013-12-15 12:25 -0800
        Re: a Python Static Analyzer Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-15 21:00 +0000
    Re: a Python Static Analyzer Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-15 02:56 +0000

#61923 — a Python Static Analyzer

Fromarie.lakeman@gmail.com
Date2013-12-14 16:35 -0800
Subjecta Python Static Analyzer
Message-ID<6d2c938b-dd66-4de6-8422-aaa55fcc2e1e@googlegroups.com>
Hi,

I thought it would be worth contributing some awareness of Yin Wang's PySonar2 Python static analyzer being open sourced, it's here https://github.com/yinwang0/pysonar2.  I recently converted it from being implemented in Java to being implemented in Python - here https://github.com/ariejdl/pysonarsq.  All the critical tests pass, it may interest pythonistas to be able to hack on something like this actually in Python.

Thanks,

Arie

[toc] | [next] | [standalone]


#61926

FromDan Stromberg <drsalists@gmail.com>
Date2013-12-14 17:31 -0800
Message-ID<mailman.4132.1387071100.18130.python-list@python.org>
In reply to#61923
On Sat, Dec 14, 2013 at 4:35 PM,  <arie.lakeman@gmail.com> wrote:
> Hi,
>
> I thought it would be worth contributing some awareness of Yin Wang's PySonar2 Python static analyzer being open sourced, it's here https://github.com/yinwang0/pysonar2.  I recently converted it from being implemented in Java to being implemented in Python - here https://github.com/ariejdl/pysonarsq.  All the critical tests pass, it may interest pythonistas to be able to hack on something like this actually in Python.

This is interesting.

Where does PySonar2 sit in the spectrum from pylint
(thorough/pedantic) to pyflakes (relaxed/few-false-positives)?

I use pylint and pyflakes a lot, and I've heard that PyChecker sits in
between them on this axis.

[toc] | [prev] | [next] | [standalone]


#61928

FromChris Rebert <clp2@rebertia.com>
Date2013-12-14 18:36 -0800
Message-ID<mailman.4133.1387075322.18130.python-list@python.org>
In reply to#61923
On Sat, Dec 14, 2013 at 5:31 PM, Dan Stromberg <drsalists@gmail.com> wrote:
> Where does PySonar2 sit in the spectrum from pylint
> (thorough/pedantic) to pyflakes (relaxed/few-false-positives)?
>
> I use pylint and pyflakes a lot, and I've heard that PyChecker sits in
> between them on this axis.

My impression is that PyChecker has been abandoned.
The last commit in its SourceForge CVS repo is from 2008, and `pip
install PyChecker` fails.

Cheers,
Chris

[toc] | [prev] | [next] | [standalone]


#61962

Fromarie.lakeman@gmail.com
Date2013-12-15 12:25 -0800
Message-ID<5efb51fe-6b07-4e03-83b4-5453d51d9310@googlegroups.com>
In reply to#61928
On Sunday, 15 December 2013 02:36:56 UTC, Chris Rebert  wrote:
> On Sat, Dec 14, 2013 at 5:31 PM, Dan Stromberg <drsalists@gmail.com> wrote:
> 
> > Where does PySonar2 sit in the spectrum from pylint
> 
> > (thorough/pedantic) to pyflakes (relaxed/few-false-positives)?
> 
> >
> 
> > I use pylint and pyflakes a lot, and I've heard that PyChecker sits in
> 
> > between them on this axis.
> 
> 
> 
> My impression is that PyChecker has been abandoned.
> 
> The last commit in its SourceForge CVS repo is from 2008, and `pip
> 
> install PyChecker` fails.
> 
> 
> 
> Cheers,
> 
> Chris

Hi Chris,

I can't comment on the comparative sophistication of PySonar2 to pylint and pyflakes, my experience of those two projects is as code quality tools, whereas I've been using PySonar2 for things along the lines of indexing code at a more semantic level, something I'm satisfied with.

Here's a comment on a reddit post about PySonar a month ago

http://www.reddit.com/comments/1piusr

`
Yin Wang is awesome and his work on programming languages and type inference is super impressive. We've been using his PySonar (v1) to build a global index of Python code and it works far better than we or anyone would have expected, for a dynamic language.
Here are some examples of what PySonar can do:
Finding everywhere a function is used
Python stdlib, sorted by most-used functions
All usages of the Django URL render_to_response function
All usages of the Flask @app.route decorator
This is all done using PySonar v1-based static analysis on Python code. PySonar v2 is even better.
`

I've referred Yin to this google group post.

[toc] | [prev] | [next] | [standalone]


#61963

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-15 21:00 +0000
Message-ID<mailman.4150.1387141242.18130.python-list@python.org>
In reply to#61962
On 15/12/2013 20:25, arie.lakeman@gmail.com wrote:
> On Sunday, 15 December 2013 02:36:56 UTC, Chris Rebert  wrote:
>> On Sat, Dec 14, 2013 at 5:31 PM, Dan Stromberg <drsalists@gmail.com> wrote:
>>
>>> Where does PySonar2 sit in the spectrum from pylint
>>
>>> (thorough/pedantic) to pyflakes (relaxed/few-false-positives)?
>>
>>>
>>
>>> I use pylint and pyflakes a lot, and I've heard that PyChecker sits in
>>
>>> between them on this axis.
>>
>>
>>
>> My impression is that PyChecker has been abandoned.
>>
>> The last commit in its SourceForge CVS repo is from 2008, and `pip
>>
>> install PyChecker` fails.
>>
>>
>>
>> Cheers,
>>
>> Chris
>
> Hi Chris,
>
> I can't comment on the comparative sophistication of PySonar2 to pylint and pyflakes, my experience of those two projects is as code quality tools, whereas I've been using PySonar2 for things along the lines of indexing code at a more semantic level, something I'm satisfied with.
>
> Here's a comment on a reddit post about PySonar a month ago
>
> http://www.reddit.com/comments/1piusr
>
> `
> Yin Wang is awesome and his work on programming languages and type inference is super impressive. We've been using his PySonar (v1) to build a global index of Python code and it works far better than we or anyone would have expected, for a dynamic language.
> Here are some examples of what PySonar can do:
> Finding everywhere a function is used
> Python stdlib, sorted by most-used functions
> All usages of the Django URL render_to_response function
> All usages of the Flask @app.route decorator
> This is all done using PySonar v1-based static analysis on Python code. PySonar v2 is even better.
> `
>
> I've referred Yin to this google group post.
>

Looks like very good work, thanks for the data.

But please note that I'm reading this via email, not google groups.  If 
you'd care to look above, you'll observe the double line spacing that 
gets inserted into everything that we see from gg, unless you read and 
action this https://wiki.python.org/moin/GoogleGroupsPython  If you'd be 
kind enough to do this it would be greatly appreciated by many people 
here.  TIA.

-- 
My fellow Pythonistas, ask not what our language can do for you, ask 
what you can do for our language.

Mark Lawrence

[toc] | [prev] | [next] | [standalone]


#61929

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-15 02:56 +0000
Message-ID<mailman.4134.1387076188.18130.python-list@python.org>
In reply to#61923
On 15/12/2013 02:36, Chris Rebert wrote:
> On Sat, Dec 14, 2013 at 5:31 PM, Dan Stromberg <drsalists@gmail.com> wrote:
>> Where does PySonar2 sit in the spectrum from pylint
>> (thorough/pedantic) to pyflakes (relaxed/few-false-positives)?
>>
>> I use pylint and pyflakes a lot, and I've heard that PyChecker sits in
>> between them on this axis.
>
> My impression is that PyChecker has been abandoned.
> The last commit in its SourceForge CVS repo is from 2008, and `pip
> install PyChecker` fails.
>
> Cheers,
> Chris
>

I've no idea as to the real status of Pyflakes so hopefully this 
https://mail.python.org/pipermail/code-quality/2013-December/000189.html 
is just a temporary hickup.

-- 
My fellow Pythonistas, ask not what our language can do for you, ask 
what you can do for our language.

Mark Lawrence

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web