diff --git a/build/TeamCity/on-checkin.proj b/build/TeamCity/on-checkin.proj index 9657887f..8750636f 100644 --- a/build/TeamCity/on-checkin.proj +++ b/build/TeamCity/on-checkin.proj @@ -2,11 +2,11 @@ - + - + @@ -24,7 +24,7 @@ - + \ No newline at end of file diff --git a/tools/Gendarme-2.4/Gendarme.Framework.dll b/tools/Gendarme-2.4/Gendarme.Framework.dll deleted file mode 100644 index 8bb27d62..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Framework.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.BadPractice.dll b/tools/Gendarme-2.4/Gendarme.Rules.BadPractice.dll deleted file mode 100644 index b88619a4..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.BadPractice.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Concurrency.dll b/tools/Gendarme-2.4/Gendarme.Rules.Concurrency.dll deleted file mode 100644 index 791b4a60..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Concurrency.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Correctness.dll b/tools/Gendarme-2.4/Gendarme.Rules.Correctness.dll deleted file mode 100644 index 4ca6511a..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Correctness.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Design.Generic.dll b/tools/Gendarme-2.4/Gendarme.Rules.Design.Generic.dll deleted file mode 100644 index 830f3b51..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Design.Generic.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Design.dll b/tools/Gendarme-2.4/Gendarme.Rules.Design.dll deleted file mode 100644 index b59a2921..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Design.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Exceptions.dll b/tools/Gendarme-2.4/Gendarme.Rules.Exceptions.dll deleted file mode 100644 index 4c957674..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Exceptions.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Interoperability.dll b/tools/Gendarme-2.4/Gendarme.Rules.Interoperability.dll deleted file mode 100644 index 4e7a537a..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Interoperability.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Maintainability.dll b/tools/Gendarme-2.4/Gendarme.Rules.Maintainability.dll deleted file mode 100644 index c09a61f8..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Maintainability.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Naming.dll b/tools/Gendarme-2.4/Gendarme.Rules.Naming.dll deleted file mode 100644 index ebb81409..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Naming.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Performance.dll b/tools/Gendarme-2.4/Gendarme.Rules.Performance.dll deleted file mode 100644 index b5410218..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Performance.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Portability.dll b/tools/Gendarme-2.4/Gendarme.Rules.Portability.dll deleted file mode 100644 index dea5e601..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Portability.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Security.Cas.dll b/tools/Gendarme-2.4/Gendarme.Rules.Security.Cas.dll deleted file mode 100644 index 79c30055..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Security.Cas.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Serialization.dll b/tools/Gendarme-2.4/Gendarme.Rules.Serialization.dll deleted file mode 100644 index 8bb5cf36..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Serialization.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Smells.dll b/tools/Gendarme-2.4/Gendarme.Rules.Smells.dll deleted file mode 100644 index e3a265ac..00000000 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Smells.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Mono.Cecil.Mdb.dll b/tools/Gendarme-2.4/Mono.Cecil.Mdb.dll deleted file mode 100644 index 3b9a8e60..00000000 Binary files a/tools/Gendarme-2.4/Mono.Cecil.Mdb.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Mono.Cecil.Pdb.dll b/tools/Gendarme-2.4/Mono.Cecil.Pdb.dll deleted file mode 100644 index 6c8668c6..00000000 Binary files a/tools/Gendarme-2.4/Mono.Cecil.Pdb.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/Mono.Cecil.dll b/tools/Gendarme-2.4/Mono.Cecil.dll deleted file mode 100644 index ffc515ce..00000000 Binary files a/tools/Gendarme-2.4/Mono.Cecil.dll and /dev/null differ diff --git a/tools/Gendarme-2.4/gendarme-wizard.exe b/tools/Gendarme-2.4/gendarme-wizard.exe deleted file mode 100644 index 0c20cae4..00000000 Binary files a/tools/Gendarme-2.4/gendarme-wizard.exe and /dev/null differ diff --git a/tools/Gendarme-2.4/gendarme.1 b/tools/Gendarme-2.4/gendarme.1 deleted file mode 100644 index e765270d..00000000 --- a/tools/Gendarme-2.4/gendarme.1 +++ /dev/null @@ -1,102 +0,0 @@ -.\" -.\" Gendarme manual page. -.\" -.\" Author: -.\" Sebastien Pouliot -.\" -.\" Copyright (C) 2005-2006,2008 Novell, Inc (http://www.novell.com) -.\" - -.de Sp -.if t .sp .5v -.if n .sp -.. -.TH Gendarme "Gendarme 2.4.0.0" -.SH NAME -Gendarme \- Rule-based code analysis for Mono:: -.SH SYNOPSIS -.PP -.B gendarme [--config configfile] [--set ruleset] [--log file | --xml file | --html file] [options] assemblies ... -.SH DESCRIPTION -\fIGendarme\fP is a extensible rule-based tool to find problems in .NET -applications and libraries. Gendarme inspects programs and libraries that -contain code in ECMA CIL format (Mono and .NET) and looks for common -problems with the code, problems that compiler do not typically check or -have not historically checked. -.SH OPTIONS -.TP -.I "--config configfile" -Specify the configuration file. Default is 'rules.xml'. -.TP -.I "--set ruleset" -Specify the set of rules to verify. Default is '*'. -.TP -.I "--log file" -Save the text output to the specified file. -.TP -.I "--xml file" -Save the output, formatted as XML, to the specified file. -.TP -.I "--html file" -Save the output, formatted as HTML, to the specified file. -.TP -.I "--ignore ignore-file" -Do not report the known defects that are part of the specified file. -.TP -.I "--limit N" -Stop reporting after N defects are found. -.TP -.I "--severity [all | audit[+] | low[+|-] | medium[+|-] | high[+|-] | critical[-]],... -Filter the reported defects to include the specified severity levels. -Default is 'medium+' (i.e. low and audit levels are ignored). -.TP -.I "--confidence [all | low[+] | normal[+|-] | high[+|-] | total[-]],... -Filter the reported defects to include the specified confidence levels. -Default is 'normal+' (i.e. low level is ignored). -.TP -.I "--quiet" -Display minimal output (results) from the runner. -.TP -.I "--v|verbose" -Enable debugging output. You can supply several -v to augment debugging verbosity. -.TP -.I "--version" -Display Gendarme's version number. This number match the Mono release -where it was released. -.TP -.I "assemblies ..." -Specify the assemblies to verify. You can specify multiple filenames, -including masks (? and *). You can also provide a file that list several -assemblies (one by line) by prefixing the filename with @ on the command -line. -.SH FILES -.TP -.I rules.xml -This files contains a list of all the rulesets available to Gendarme. Each -ruleset includes a list of assemblies in which some, or all, rules can be -verified (include) or not (exclude). -+.TP -+.I gendarme.exe.config -+Used by debug versions of Gendarme to enable logging for rules. A config -+file will be generated automatically by the make file. To enable logging -+for a rule add a switch using the rule's name and set the value to 1. -.SH ENVIRONMENT VARIABLES -.TP -.I GENDARME_COLOR -The runner will use colors when displaying defects on the console. -By default colors are dark in order to display correctly on any -background. You can change this default to "light" (lighter colors -looks nice on a dark background, or "none" so no colors will be used. -E.g. -.nf - GENDARME_COLOR=none gendarme ... -.fi -.SH COPYRIGHT -Copyright (C) 2005-2008 Novell, Inc (http://www.novell.com) -.SH MAILING LISTS -Mailing lists are listed at the -http://groups.google.com/group/gendarme -.SH WEB SITE -http://www.mono-project.com/Gendarme -.SH SEE ALSO -.BR mono(1) diff --git a/tools/Gendarme-2.4/gendarme.exe b/tools/Gendarme-2.4/gendarme.exe deleted file mode 100644 index f28c0e4c..00000000 Binary files a/tools/Gendarme-2.4/gendarme.exe and /dev/null differ diff --git a/tools/Gendarme-2.4/AUTHORS b/tools/Gendarme-2.8/AUTHORS similarity index 88% rename from tools/Gendarme-2.4/AUTHORS rename to tools/Gendarme-2.8/AUTHORS index 55c17ea8..a1ccf665 100644 --- a/tools/Gendarme-2.4/AUTHORS +++ b/tools/Gendarme-2.8/AUTHORS @@ -15,3 +15,5 @@ Cedric Vivier Andres G. Aragoneses Peter Johanson Jesse Jones +Rolf Bjarne Kvinge +Antoine Vandecreme diff --git a/tools/Gendarme-2.8/Gendarme.Framework.dll b/tools/Gendarme-2.8/Gendarme.Framework.dll new file mode 100644 index 00000000..047b8a47 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Framework.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.BadPractice.dll b/tools/Gendarme-2.8/Gendarme.Rules.BadPractice.dll new file mode 100644 index 00000000..cc6aa8ab Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.BadPractice.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Concurrency.dll b/tools/Gendarme-2.8/Gendarme.Rules.Concurrency.dll new file mode 100644 index 00000000..62d2120d Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Concurrency.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Correctness.dll b/tools/Gendarme-2.8/Gendarme.Rules.Correctness.dll new file mode 100644 index 00000000..63ffd70c Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Correctness.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Design.Generic.dll b/tools/Gendarme-2.8/Gendarme.Rules.Design.Generic.dll new file mode 100644 index 00000000..653d48ca Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Design.Generic.dll differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Design.Linq.dll b/tools/Gendarme-2.8/Gendarme.Rules.Design.Linq.dll similarity index 63% rename from tools/Gendarme-2.4/Gendarme.Rules.Design.Linq.dll rename to tools/Gendarme-2.8/Gendarme.Rules.Design.Linq.dll index a68043db..2a5bbfda 100644 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Design.Linq.dll and b/tools/Gendarme-2.8/Gendarme.Rules.Design.Linq.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Design.dll b/tools/Gendarme-2.8/Gendarme.Rules.Design.dll new file mode 100644 index 00000000..cf5b3695 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Design.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Exceptions.dll b/tools/Gendarme-2.8/Gendarme.Rules.Exceptions.dll new file mode 100644 index 00000000..3aa28ce5 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Exceptions.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Interoperability.dll b/tools/Gendarme-2.8/Gendarme.Rules.Interoperability.dll new file mode 100644 index 00000000..37c18324 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Interoperability.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Maintainability.dll b/tools/Gendarme-2.8/Gendarme.Rules.Maintainability.dll new file mode 100644 index 00000000..7dfcf202 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Maintainability.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Naming.dll b/tools/Gendarme-2.8/Gendarme.Rules.Naming.dll new file mode 100644 index 00000000..b2f3761d Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Naming.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Performance.dll b/tools/Gendarme-2.8/Gendarme.Rules.Performance.dll new file mode 100644 index 00000000..7b9eaf8a Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Performance.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Portability.dll b/tools/Gendarme-2.8/Gendarme.Rules.Portability.dll new file mode 100644 index 00000000..ec6ad5dd Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Portability.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Security.Cas.dll b/tools/Gendarme-2.8/Gendarme.Rules.Security.Cas.dll new file mode 100644 index 00000000..0bfca346 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Security.Cas.dll differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Security.dll b/tools/Gendarme-2.8/Gendarme.Rules.Security.dll similarity index 52% rename from tools/Gendarme-2.4/Gendarme.Rules.Security.dll rename to tools/Gendarme-2.8/Gendarme.Rules.Security.dll index da876f25..7da8273f 100644 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Security.dll and b/tools/Gendarme-2.8/Gendarme.Rules.Security.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Serialization.dll b/tools/Gendarme-2.8/Gendarme.Rules.Serialization.dll new file mode 100644 index 00000000..4f41b5ab Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Serialization.dll differ diff --git a/tools/Gendarme-2.8/Gendarme.Rules.Smells.dll b/tools/Gendarme-2.8/Gendarme.Rules.Smells.dll new file mode 100644 index 00000000..97b0ec16 Binary files /dev/null and b/tools/Gendarme-2.8/Gendarme.Rules.Smells.dll differ diff --git a/tools/Gendarme-2.4/Gendarme.Rules.Ui.dll b/tools/Gendarme-2.8/Gendarme.Rules.Ui.dll similarity index 56% rename from tools/Gendarme-2.4/Gendarme.Rules.Ui.dll rename to tools/Gendarme-2.8/Gendarme.Rules.Ui.dll index 57fdf22f..c4ea46ac 100644 Binary files a/tools/Gendarme-2.4/Gendarme.Rules.Ui.dll and b/tools/Gendarme-2.8/Gendarme.Rules.Ui.dll differ diff --git a/tools/Gendarme-2.4/MIT.X11 b/tools/Gendarme-2.8/MIT.X11 similarity index 94% rename from tools/Gendarme-2.4/MIT.X11 rename to tools/Gendarme-2.8/MIT.X11 index 34a52c9e..8d90e9d1 100644 --- a/tools/Gendarme-2.4/MIT.X11 +++ b/tools/Gendarme-2.8/MIT.X11 @@ -1,4 +1,4 @@ -Copyright (c) 2005-2008 Novell, Inc and the individuals listed on the +Copyright (c) 2005-2010 Novell, Inc and the individuals listed on the ChangeLog entries. Permission is hereby granted, free of charge, to any person obtaining diff --git a/tools/Gendarme-2.8/Mono.Cecil.Pdb.dll b/tools/Gendarme-2.8/Mono.Cecil.Pdb.dll new file mode 100644 index 00000000..f9e52152 Binary files /dev/null and b/tools/Gendarme-2.8/Mono.Cecil.Pdb.dll differ diff --git a/tools/Gendarme-2.8/Mono.Cecil.dll b/tools/Gendarme-2.8/Mono.Cecil.dll new file mode 100644 index 00000000..efb0f42c Binary files /dev/null and b/tools/Gendarme-2.8/Mono.Cecil.dll differ diff --git a/tools/Gendarme-2.4/NEWS b/tools/Gendarme-2.8/NEWS similarity index 87% rename from tools/Gendarme-2.4/NEWS rename to tools/Gendarme-2.8/NEWS index 4887c278..6288623d 100644 --- a/tools/Gendarme-2.4/NEWS +++ b/tools/Gendarme-2.8/NEWS @@ -1,3 +1,81 @@ +2010-09-05 Version 2.8.0 + + First release in the 2.8.x serie which will lead to the 3.0 + release. Many rules were enhanced and a lot of work was done + to make Gendarme adhere to its own rules (self-test). + + This release also includes 10 new rules (221 rules total): + + Gendarme.Rules.BadPractice + * PreferParamsArrayForVariableArgumentsRule [Sebastien Pouliot] + * PreferTryParseRule [Sebastien Pouliot] + + Gendarme.Rules.Correctness + * UseNoInliningWithGetCallingAssemblyRule [Sebastien Pouliot] + + Gendarme.Rules.Design + * ProvideTryParseAlternativeRule [Sebastien Pouliot] + + Gendarme.Rules.Design.Generic + * AvoidDeclaringCustomDelegatesRule [Sebastien Pouliot] + + Gendarme.Rules.Maintainability + * RemoveDependenceOnObsoleteCodeRule [Sebastien Pouliot] + + Gendarme.Rules.Interoperability + * CentralizePInvokesIntoNativeMethodsTypeRule [Sebastien Pouliot] + + Gendarme.Rules.Performance + * AvoidConcatenatingCharsRule [Sebastien Pouliot] + * AvoidLocalDataStoreSlotRule [Sebastien Pouliot] + * AvoidRepetitiveCallsToPropertiesRule [Sebastien Pouliot] + + Contributors for this release are: + Antoine Vandecreme, JB Evain, Rolf Bjarne Kvinge and Sebastien + Pouliot. + +2009-12-20 Version 2.6 + + Released just in time for xmas Gendarme 2.6 comes with a lot of + enhancements and bug fixes. Rule documentation (wiki) and our MAN + pages were also greatly enhanced by the work of Jesse Jones. + + In the ecosystem Daniel Nauck contributed Gendarme support for + CC.NET and a new NAnt task with reduced dependencies. With this + Gendarme should be easier than ever to use on your projects. + + This release includes 12 new rules (207 rules total): + + Gendarme.Rules.BadPractice + * DoNotUseEnumIsAssignableFromRule [JB Evain] + * OnlyUseDisposeForIDisposableTypesRule [Jesse Jones] + * PreferSafeHandleRule [Jesse Jones] + + Gendarme.Rules.Concurrency + * DoNotUseThreadStaticWithInstanceFieldsRule [Jesse Jones] + + Gendarme.Rules.Correctness + * ProvideValidXmlStringRule [Cedric Vivier] + * ProvideValidXPathExpressionRule [Cedric Vivier] + + Gendarme.Rules.Design + * PreferXmlAbstractionsRule [Cedric Vivier] + * UseCorrectDisposeSignaturesRule [Jesse Jones] + * UseFlagsAttributeRule [Jesse Jones] + + Gendarme.Rules.Exceptions + * UseObjectDisposedExceptionRule [Jesse Jones] + + Gendarme.Rules.Interoperability + * DelegatesPassedToNativeCodeMustIncludeExceptionHandlingRule [Rolf Bjarne Kvinge] + + Gendarme.Rules.Performance + * ReviewLinqMethodRule [Jesse Jones] + + Contributors for this release are: + Cedric Vivier, Daniel Nauck, JB Evain, Jesse Jones, Rolf Bjarne + Kvinge and Sebastien Pouliot. + 2009-01-20 Version 2.4 This release was the shortest (about 2 months) release cycle ever @@ -40,7 +118,7 @@ Contributors for this release are: Andres G. Aragoneses, Cedric Vivier, JB Evain, Jesse Jones, Nestor Salceda, Sebastien Pouliot. - + 2008-11-10 Version 2.2 This release includes the development results of the last four diff --git a/tools/Gendarme-2.4/README b/tools/Gendarme-2.8/README similarity index 87% rename from tools/Gendarme-2.4/README rename to tools/Gendarme-2.8/README index 900cc612..1e75bd85 100644 --- a/tools/Gendarme-2.4/README +++ b/tools/Gendarme-2.8/README @@ -19,7 +19,8 @@ http://groups.google.com/group/gendarme IMPORTANT NOTES * Gendarme "official" build system is based on the auto*/Makefile files -and tested on monobuild. See mono-tools on http://mono.ximian.com/monobuild/ +and tested on MonkeyWrench. See mono-tools-trunk on +http://build.mono-project.com/index.aspx?lane=mono-trunk (checking out gendarme without its parent dir 'mono-tools' is not supported) * Visual Studio solutions and projects files (usable by both MonoDevelop diff --git a/tools/Gendarme-2.8/gd2i.exe b/tools/Gendarme-2.8/gd2i.exe new file mode 100644 index 00000000..67d86e2f Binary files /dev/null and b/tools/Gendarme-2.8/gd2i.exe differ diff --git a/tools/Gendarme-2.8/gendarme-wizard.exe b/tools/Gendarme-2.8/gendarme-wizard.exe new file mode 100644 index 00000000..db31f548 Binary files /dev/null and b/tools/Gendarme-2.8/gendarme-wizard.exe differ diff --git a/tools/Gendarme-2.8/gendarme.1 b/tools/Gendarme-2.8/gendarme.1 new file mode 100644 index 00000000..bf447256 --- /dev/null +++ b/tools/Gendarme-2.8/gendarme.1 @@ -0,0 +1,128 @@ +.\" +.\" Gendarme manual page. +.\" +.\" Authors: +.\" Sebastien Pouliot +.\" Jesse Jones +.\" +.\" Copyright (C) 2005-2006,2008-2010 Novell, Inc (http://www.novell.com) +.\" + +.de Sp +.if t .sp .5v +.if n .sp +.. +.TH Gendarme "Gendarme 2.8.0.0" +.SH NAME +Gendarme \- Rule-based code analysis for Mono. +.SH SYNOPSIS +.PP +.B gendarme [--config configfile] [--set ruleset] [--log file | --xml file | --html file] [options] assemblies ... +.SH DESCRIPTION +\fIGendarme\fP is a extensible rule-based tool used to find problems in .NET +applications and libraries. Gendarme inspects programs and libraries that +contain code in ECMA CIL format (Mono and .NET) and looks for common +problems with the code, problems that compilers do not typically check or +have historically not checked. +.SH OPTIONS +.TP +.I "--config configfile" +Specify the rule sets and rule settings. Default is 'rules.xml'. +.TP +.I "--set ruleset" +Specify a rule set from configfile. Defaults to 'default'. +.TP +.I "--log file" +Save the report to the specified file. If none of --log, --xml, or --html are used +then the report is written to stdout. +.TP +.I "--xml file" +Save the report, formatted as XML, to the specified file. +.TP +.I "--html file" +Save the report, formatted as HTML, to the specified file. +.TP +.I "--ignore ignore-file" +Do not report defects listed in the specified file. +.TP +.I "--limit N" +Stop reporting after N defects are found. +.TP +.I "--severity [all | audit[+] | low[+|-] | medium[+|-] | high[+|-] | critical[-]],... +Filter the reported defects to include the specified severity levels. +Default is 'medium+' (i.e. low and audit levels are ignored). +.TP +.I "--confidence [all | low[+] | normal[+|-] | high[+|-] | total[-]],... +Filter the reported defects to include the specified confidence levels. +Default is 'normal+' (i.e. low level is ignored). +.TP +.I "--quiet" +Used to disable progress and other information which is normally written to stdout. +.TP +.I "--v|verbose" +When present additional progress information is written to stdout. May be used +more than once to write even more info. +.TP +.I "--version" +Display Gendarme's version number. This will match the Mono version number +that this copy of Gendarme was released with. +.TP +.I "assemblies ..." +Specify the assemblies to verify. You can specify multiple filenames, +including masks (? and *). You can also provide a file that lists several +assemblies (one per line) by prefixing the filename with @ on the command +line. +.SH FILES +.TP +.I ignore-file +This file is used to filter out defects from gendarme reports. +.TP +.I rules.xml +This file is used in conjunction with the --set option to control and configure the rules +used by Gendarme. It contains a set of named rules (rule sets) and each rule set contains +a list of rules. +.TP +.I gendarme.exe.config +Used by debug versions of Gendarme to enable logging for rules. It is useful +for Gendarme's developers (i.e. not meant for end-users). +.SH ENVIRONMENT VARIABLES +.TP +.I GENDARME_COLOR +The runner will use colors when displaying defects on the console. +By default colors are dark in order to display correctly on any +background. You can change this default to "light" (lighter colors +looks nice on a dark background, or "none" so no colors will be used. +E.g. +.nf + GENDARME_COLOR=none gendarme ... +.fi +.SH EXIT STATUS +.TP +.I 0 +The runner returns 0 when no error has occurred. If some code was +analyzed then this also means that no defects were found and reported. +.TP +.I 1 +The runner execution was successful but either some defects where found +or no assembly was specified. +.TP +.I 2 +The runner execution was interrupted by I/O errors (e.g. missing files). +.TP +.I 3 +The runner founds errors in the (default or user supplied) configuration +files. Specific error messages should be printed on the console. +.TP +.I 4 +The runner execution was interrupted by a non-handled exception. This +is likely a bug inside Gendarme and should be reported on Novell's +bugzilla (http://bugzilla.novell.com) or on the mailing-list. +.SH COPYRIGHT +Copyright (C) 2005-2009 Novell, Inc (http://www.novell.com) +.SH MAILING LISTS +Mailing lists are listed at the +http://groups.google.com/group/gendarme +.SH WEB SITE +http://www.mono-project.com/Gendarme +.SH SEE ALSO +.BR gendarme(5), mono(1) diff --git a/tools/Gendarme-2.8/gendarme.5 b/tools/Gendarme-2.8/gendarme.5 new file mode 100644 index 00000000..c476200b --- /dev/null +++ b/tools/Gendarme-2.8/gendarme.5 @@ -0,0 +1,80 @@ +.\" +.\" Gendarme manual page. +.\" +.\" Authors: +.\" Sebastien Pouliot +.\" Jesse Jones +.\" +.\" Copyright (C) 2005-2006,2008-2009 Novell, Inc (http://www.novell.com) +.\" + +.de Sp +.if t .sp .5v +.if n .sp +.. +.TH Gendarme "Gendarme 2.8.0.0" +.SH NAME +Gendarme \- Rule-based code analysis for Mono. + +.SH FILE FORMATS +.TP +.I ignore-file +This file is used to filter out defects from gendarme reports. It uses a line oriented +file format where the first characters of the line control the interpretation of the line: +.RS +# - means that the line is a comment. +.RE +.RS +R: - if the full name of a rule to be filtered. +.RE +.RS +A: - is used to filter out an assembly (the extension can be omitted). +.RE +.RS +T: - is used to filter out a namespace qualified type name. +.RE +.RS +M: - is used to filter out a method. It must contain the full method name as it appears in the report. +.RE + +.TP +.I rules.xml +This file is used in conjunction with the --set option to control and configure the rules +used by Gendarme. It contains a set of named rules (rule sets) and each rule set contains +a list of rules. Rules have required from and include attributes, optional exclude and +applyTo attributes, and optional parameter child elements. + +The from attribute is the path of a dll to load ("Gendarme.Rules.BadPractice.dll"). +Relative paths are relative to the gendarme executable. + +The include attribute may be "*" to match every rule in the dll or a list of rule names +separated by '|' ("WhizBangRule | MyRule"). + +The exclude attribute is a list of rule names separated by '|' ("IckyRule"). +These will override any rules matched by the include attribute. + +The applyTo attribute may be "all", "visible", or "nonvisible". If it is all (the default) then +all types in the assemblies are checked, if it is visible then only the externally visible +types are checked, if it is nonvisible then only the internally visible types are checked. + +The parameter child element is used to customize the behavior of a rule within a dll. +It has three required attributes: rule, property, and value. rule is the name of the +applicable rule ("AvoidSmallNamespaceRule"), property is the name of a public +property in the rule ("Minimum"), value is the value to assign to the property ("10"). +.TP +.I gendarme.exe.config +Used by debug versions of Gendarme to enable logging for rules. A config +file will be generated automatically by the make file. To enable logging +for a rule edit the config file, add a switch using the rule's name, and set the +value to 1. + +.SH COPYRIGHT +Copyright (C) 2005-2009 Novell, Inc (http://www.novell.com) +.SH MAILING LISTS +Mailing lists are listed at the +http://groups.google.com/group/gendarme +.SH WEB SITE +http://www.mono-project.com/Gendarme +.SH SEE ALSO +.BR gendarme(1) + diff --git a/tools/Gendarme-2.8/gendarme.exe b/tools/Gendarme-2.8/gendarme.exe new file mode 100644 index 00000000..a6514013 Binary files /dev/null and b/tools/Gendarme-2.8/gendarme.exe differ diff --git a/tools/Gendarme-2.4/rules.xml b/tools/Gendarme-2.8/rules.xml similarity index 100% rename from tools/Gendarme-2.4/rules.xml rename to tools/Gendarme-2.8/rules.xml