diff --git a/docs/contributing.html b/docs/contributing.html new file mode 100644 index 000000000..9aa324e9d --- /dev/null +++ b/docs/contributing.html @@ -0,0 +1,132 @@ + + + + +Contributing to Checkstyle + + + + + + + + + + + +
+

Contributing to Checkstyle

+
+ Checkstyle Logo +
+ + + + + + + + + + +
+ +

Introduction

+ +

+ Hey, good to see you on this page. It means that you are + considering a contribution of your own work to the Checkstyle + project. We welcome anything: bugfixes, new check modules, unit + tests, documentation improvements, build process simplification, + etc. +

+ +

+ This document assumes you are working with the CVS version of + checkstyle and that you are familiar with some standard + development tools (CVS, + Ant, JUnit). +

+ + +

Quality matters

+ +

+ The developer team of checkstyle is really a lazy bunch of + people. We try to avoid work as best as we can, but most of all + we try to avoid working on bugs that are reported by end users. +

+ +

+ To that end, we use a set of development tools that ensure that the + quality of our code is kept at a fairly high level. Like most projects + today, we use JUnit to test our code. However we do take this one + step further and measure the coverage of our unit tests using + Clover. This means it + is not sufficient to pass all tests, but the tests should ideally + execute each line in the code. The most recent Clover report is + available here. +

+ +

+ Besides using unit testing, we obviously also use checkstyle to check + it's own code. +

+ +

+ We have the a build target in our Ant buildfile that builds checkstyle + from scratch, executes all tests, and runs checkstyle on it's own code. + That target should pass without errors. +

+ +

+ If you add new end user features, remember to document them. +

+ + +

Submitting your contribution

+ +

+ Once you have made sure that your changes pass the gump target, + and everthing is documented, you are ready to submit your work. +

+ +

+ If you have created new files, put them in a tgz file (or zip if you + are on Windows). If you have chaged existing files, create a unified + diff using CVS. To do that, open a command line, cd to the home + directory of checkstyle (where build.xml is located) and execute + cvs diff -u > mychanges.patch. +

+ +

+ Create a new item in our + patch tracker. + Send an email to the developer mailing list that explains + the purpose of your contribution. Be prepared to answer + questions and do some polishing work. +

+ +

+ We are not only lazy but at times we are also busy with our day jobs. + This means that you might not always get an immediate answer. You are + not being ignored, and we value your work - we might just be too busy + to review your code, especially if it is a bit complex. If you don't + get a response for two weeks, feel free to send a reminder email about + your tracker item. +

+ +
+
+ + diff --git a/docs/index.html b/docs/index.html index 77a839f2a..addc5d729 100644 --- a/docs/index.html +++ b/docs/index.html @@ -61,6 +61,7 @@
  • JavaDoc
  • +
  • Contributing
  • Coverage by:

    diff --git a/docs/writingchecks.html b/docs/writingchecks.html index d50797336..4398b9567 100644 --- a/docs/writingchecks.html +++ b/docs/writingchecks.html @@ -576,7 +576,8 @@ We need your help to keep improving Checkstyle. Whenever you write a Check or FileSetCheck that you think is - generally useful, please consider contributing it to the + generally useful, please consider + contributing it to the Checkstyle community and submit it for inclusion in the next release of Checkstyle.