|
- Chris Webster - fix (and test) for UnnecessaryConstructorRule, BooleanInstantiation rule
- Colin Simmonds - detailed bug reports
- Trond Andersen - AvoidCatchingThrowable, ExceptionSignatureDeclaration, ExceptionTypeChecking
- Bernd Jansen - grammer modification
- Jarle Naess - bug report
- Jeff Anderson - VariableNamingConventionsRule, MethodNamingConventionsRule, ClassNamingConventionsRule
- Frank van Puffelen - documentation suggestions
- Conrad Roche - bug report
- mcclain looney - patch for CPD GUI, bug reports
- Ralf Hauser - Various documentation suggestions, cygwin-run.sh
- Vladimir Bossicard - VBHTMLRenderer, numerous feature requests and bug reports, several rule suggestions derived from JUnit-Addons
, evangelism :-)
- Pablo Casado - Bug report for UseSingletonRule
- Nicolai Czempin - Various rule suggestions, additional PMD backronyms
- Frank Hardisty - BeanMembersShouldSerializeRule
- Randall Schulz - bug report for LooseCouplingRule
- Wim Bervoets - bug report for the PMD Ant task
- Niels Peter Strandberg - various tweaks to the PMD Swing UI
- Ian Shef - documentation updates, bug reports on the Gel IDE plugin
- Astro Jetson Jr - a tweak for the ShortVariableNameRule
- Paul King - a complete rewrite of the Gel plugin
- Gael Marziou - "exclude" rule feature request, bug reports
- Philippe T'Seyen - refactoring and cleanup of the CPD Ant task, an XML renderer (with unit tests!) for CPD
- Michael Montuori - bug reports on the Gel IDE plugin
- Michael Hosier - bug reports on the Gel IDE plugin
- Matthew Harrah - script bug report
- Richard Jenson - CPD on Win32 troubleshooting
- Daniel Bruguier - CPD on Win32 troubleshooting
- Mario Claerhout - CPD optimizations and suggestions
- Sameer Nanda - CPD Ant task bug report
- Nanne Baars - grammar suggestions, rule suggestions
- Adam Nemeth - bug fixes for UnnecessaryConstructorRule
- Mike Thome - rule suggestions
- Brian Ewins - a complete rewrite of CPD based on the Burrows-Wheeler transform
- Andrew Glover - the CPDTask, ExcessivePublicCountRule, CouplingBetweenObjectsRule, ExcessiveImportsRule, documentation tweaks
- Robert Leland - bug report
- Dan Sheppard - added ability to write rules as XPath expressions - very, very cool stuff
- Carl Gilbert - AccessorClassGenerationRule, DoubleCheckedLockingRule, ConstructorCallsOverridableMethodRule, bug reports, feature requests, and documentation improvements
- Dave Fuller - improved resource loading code (packaged in a nice diff, too!)
- David Whitmore - parser bug report
- David Campbell - detailed bugs reports, Ant task refactoring, documentation tweaks
- Michael Sutherland - bug report in IfStmtMustUseBracesRule
- Egon Willighagen - pmd-web suggestion
- Didier Duquennoy - pmd-netbeans feedback
- Adam Nemeth - bug report on missing final attribute for local variable declarations
- Gunnlaugur Thor Briem - bug report on JavaCC parser's use of java.lang.Error
- Frederic Harper - bug report and subsequent troubleshooting
- Mats Henricson - an XSLT script and several bug reports
- Jesse Glick - an excellent discussion on the UnnecessaryConstructorRule
- Luke Francl - numerous high quality
feature suggestions and bug reports
- Martin Cooper - feature suggestions
- Bruce Mayhew - feedback on the jEdit plugin
- Juergen Ebert - feature suggestions and pmd-netbeans feedback
- Andriy Rozeluk - feature suggestions
- J.D. Fagan - feature suggestions
- William McArthur - ForLoopShouldBeWhileLoop rule
- Ales Bukovsky - pmd-netbeans feedback
- Radim Kubacki - bug reports, pmd-netbeans feedback
- Stefan Bodewig - bug report
- Paul Kendall - enhanced EmptyCatchBlock rule
- Sean Sullivan - rule suggestions
- Dale Vissar - rule suggestions
- Alina Copeland - pmd-web formulas, pmd-dcpd optimizations
- Vincent Massol - bug reports, design suggestions, feature suggestions, Maven guidance
- Peter Donald - design suggestions
- Liam Holohan - bug reports
- Rich Kilmer - logo design
- Ralph Schaer - bug reports and verification
- Damian O'Neill - Ant task patches
|
DARPA
for funding
the Ultra*Log effort which spawned PMD. |
|
Ultra*Log
for
letting us build PMD to help the code get better. |
|
Cougaar
is an
agent architecture Ultra*Log is based on. (Which needs
quite a bit of PMD also.) |
|
SourceForge
for
providing hosting services for PMD. |
|
RefactorIT
for letting
their software be used free-of-charge on PMD code
(OpenSource
Community License
) |
|