GENDARME(1)
π GENDARME π
okay bestie, so this is the manpage for Gendarme β version Gendarme 4.2.0.0 if you're keeping score π β and it's literally a rule-based code analysis tool for Mono. sit down, get comfy, we're gonna go through this together and you're gonna understand it. no cap.
β¨ SYNOPSIS β¨
gendarme [--config configfile] [--set ruleset] [--log file | --xml file
| --html file] [options] assemblies ...
that's the whole vibe right there. π
πΈ DESCRIPTION πΈ
so. Gendarme is an extensible, rule-based tool that goes looking for problems in .NET applications and libraries. it's giving detective energy π but for code.
the way it works is: Gendarme inspects programs and libraries that contain code in ECMA CIL format β that's Mono and .NET, both of them β and it hunts for common problems in the code. and here's the thing, these are problems that compilers do not typically check, or historically have not checked. so like, your compiler said "looks good bestie π«Ά" and then Gendarme shows up like "actuallyβ¦" π
β¨ OPTIONS β¨
--config configfileβ tell it which config file to use for the rule sets and rule settings. default is'rules.xml', that's the one it reaches for if you don't say anything.--set rulesetβ pick a specific rule set out of theconfigfile. defaults to'default', because of course it does.--log fileβ save the report as a text file into the file you name.--xml fileβ save the report, all formatted as XML, into the file you name.--html fileβ save the report, all formatted as HTML, into the file you name.--consoleβ write the defects onstdout. this is the default (implicit) behavior if none of--log,--xml, or--htmlare specified. but if you specify it explicitly, then the defects show up on bothstdoutand inside the text/xml/html report(s). double the chaos, double the fun β¨--ignore ignore-fileβ do NOT report defects that are listed in the file you specify. like a blocklist, but for problems.--limit Nβ stop reporting afterNdefects are found. that's it. that's the whole thing.--severity [all | audit[+] | low[+|-] | medium[+|-] | high[+|-] | critical[-]],...β filter the reported defects so only the severity levels you listed get through. default is'medium+'β meaning low and audit levels are ignored, sorry babes.--confidence [all | low[+] | normal[+|-] | high[+|-] | total[-]],...β filter the reported defects to include the confidence levels you specify. default is'normal+'β so the low level gets ignored.--quietβ disables progress and other info that would normally get written tostdout. shhh π€«--v|verboseβ when it's present, extra progress information gets written tostdout. and you can use it more than once to write even more info. stack it, bestie π--versionβ display Gendarme's version number. this will match the Mono version number that this copy of Gendarme was released with. iconic.assemblies ...β specify the assemblies to verify. you can drop multiple filenames in there, including masks (?and*). you can also hand it a file that lists several assemblies β one per line β by prefixing that filename with@on the command line. multitasking queen π
π FILES π
ignore-fileβ this file is used to filter out defects from gendarme reports.rules.xmlβ this file gets used together with the--setoption to control and configure the rules Gendarme uses. it contains a set of named rules (rule sets), and each rule set contains a list of rules. very structured of it.gendarme.exe.configβ used by debug versions of Gendarme to enable logging for rules. it's useful for Gendarme's developers, i.e. it is not meant for end-users. so if you're not a dev, this one's not your business π
π ENVIRONMENT VARIABLES π
GENDARME_COLORβ the runner will use colors when displaying defects on the console. by default the colors are dark so they display correctly on any background. you can change this default to"light"β lighter colors look nice on a dark background β or"none"so no colors get used at all. e.g.
GENDARME_COLOR=none gendarme ...
π EXIT STATUS π
0β the runner returns0when no error has occurred. and if some code was analyzed, then this also means that no defects were found and reported. a clean slate, we love to see it β¨1β the runner execution was successful, but either some defects were found, or no assembly was specified.2β the runner execution was interrupted by I/O errors (e.g. missing files). π3β the runner found errors in the (default or user supplied) configuration files. specific error messages should be printed on the console.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. not me reporting bugs π
π COPYRIGHT π
Copyright (C) 2005-2010 Novell, Inc (http://www.novell.com)
πΈ MAILING LISTS πΈ
mailing lists are listed at http://groups.google.com/group/gendarme
π¦ WEB SITE π¦
http://www.mono-project.com/Gendarme
β SEE ALSO β
okay that's the whole page, you made it π«Ά go analyze some assemblies, bestie. this was Gendarme 4.2.0.0 β the version number matching the Mono release it shipped with, and yeah the copyright has been holding it down since 2005-2010 β slay. periodt. π
β¨π
π¦ where this page comes from
- debian bookworm: gendarme 4.2-3.1
- fedora 43: mono-tools-gendarme 4.2-33.fc43 Β· MIT
- fedora 44: mono-tools-gendarme 4.2-34.fc44 Β· MIT
- ubuntu jammy: gendarme 4.2-3.1
- ubuntu noble: gendarme 4.2-3.2
- Copyright (C) 2005-2006,2008-2010 Novell, Inc (http://www.novell.com)
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms