[Monodevelop-devel] MD Gendarme Addin

Michael Hutchinson m.j.hutchinson at gmail.com
Wed Nov 26 18:17:03 EST 2008


On Wed, Nov 26, 2008 at 4:02 PM, Luciano _ <lnc19 at hotmail.com> wrote:
> HI All:
>  I was talking to Michael and i will try to start the MonoDevelop Gendarme
> addin.
>  I have some affirmations/questions, Based on Michael post [*], that i need
> to clarify, any help will be helpfull.
>
> 1) I use Gendarme with System.Diagnostic.Process to not depend on it.

Yup, it'll need to run gendarme to produce an xml file in the output
directory, then read in the XML. The Smokey code analysis addin
already does this, so that code might be a good starting point.

This is the main priority IMO.

> 2) I have to make a widget/dialog to setup Rules.xml file with all the
> futures: Rules sets, ignore rules, Severity levels, etc.

See #4.

> 3) User must jump to the offending code line/file and an explanation of the
> fault: This is the hard part, i will try to save log file, an parse it, any
> other way? (Parse html could be another way, but i think is harder than log
> file). I didn't see the log file, i didn't know if my approach is correct.

There's the XML file, which should be very easy to load. The smokey
addin does this.

> 4) I will use One rules.xml file per solution/target (Solution &
> Debug/Release/Test/etc)

I'm not sure how rule sets should apply to
project/solutions/configurations, but this seems like a good model:
http://blogs.msdn.com/fxcop/archive/2008/11/12/fun-with-code-analysis-rulesets.aspx

> 5) Allow to check the rules before checking to VCS.
> 6) Use the MD Code DOM to find things not listed in MDB files. What is this?

Some analyses might report an error in a member, without having a
location. MD has an internal type database with lots of line/col/file
information so this could be a good fallback. Very low priority
anyway, so don't worry about it :)

> 7) Add the Gendarme configuration file to the project.
> 8) Warning message of gendarme result could it be shown in Construction Pad,
> as "Wanings".

It's debatable exactly how gendarme severity should map to
error/warnings in the errors pad.

-- 
Michael Hutchinson
http://mjhutchinson.com


More information about the Monodevelop-devel-list mailing list