main icon indicating copy to clipboard operation
main copied to clipboard

Support for Code Quality Tools in IronPython missing

Open ironpythonbot opened this issue 10 years ago • 4 comments

At Resolver we are looking into tools that we can use to provide simple
code hygiene checks. Check we're not shadowing built-in names, check for
unneeded import statements and unused variables; that sort of thing.

I know of three Python modules that do this. They all fail unredeemably
on IronPython :

  • PyLint

Uses the compiler.ast module extensively

  • PyChecker

Does bytecode analysis

  • PyFlakes

Uses compiler.parse

(See also the previous email about coverage tools not working on
IronPython because "sys.settrace" is not implemented.)

We can use PyFlakes from CPython (and possbily PyLint- but not PyChecker
because it executes code), but that means our test code is dependent on
CPython.

So there are no native code quality tools that will work with
IronPython. This could be a barrier to entry for some projects who
consider using IronPython.

I realise it is not going to be high up the priority list, but if a
solution to this was possible it would be good.

One possibility is a pure Python ports of the parser module (which
should get the compiler and compiler.ast modules working). There is a
tool called EasyExtend which can generate CSTs in Pure Python, so it
could be possible to convert one of the existing tools to use this.

All the best,

Michael Foord

Work Item Details

Original CodePlex Issue: Issue 563 Status: Active Reason Closed: Unassigned Assigned to: Unassigned Reported on: Jun 22, 2006 at 5:03 PM Updated on: Sep 7, 2013 at 9:38 AM Updated by: paweljasinski

ironpythonbot avatar Dec 09 '14 16:12 ironpythonbot

On 2006-06-24 07:46:32 UTC, unknown user commented:

We are locking down on V1, and we will not be able to get to this in V1. We will revisit this later. Thanks for the report.

ironpythonbot avatar Dec 09 '14 16:12 ironpythonbot

On 2006-10-05 01:46:28 UTC, dinov commented:

+1 (another user request on the mailing list)

ironpythonbot avatar Dec 09 '14 16:12 ironpythonbot

On 2006-12-31 12:42:45 UTC, sanxiyn commented:

Pyflakes can now run with FePy's AST support.

ironpythonbot avatar Dec 09 '14 16:12 ironpythonbot

On 2013-09-07 16:38:07 UTC, paweljasinski commented:

pylint works with 2.7.4

ironpythonbot avatar Dec 09 '14 16:12 ironpythonbot