diff options
Diffstat (limited to 'web/contributing')
-rw-r--r-- | web/contributing | 113 |
1 files changed, 99 insertions, 14 deletions
diff --git a/web/contributing b/web/contributing index ffadd989e98..0a80bcb91b1 100644 --- a/web/contributing +++ b/web/contributing @@ -1,18 +1,51 @@ * Contributing to the Mono project - There are many ways in which you can help in the Mono project: - - <ul> - * <b>Programmers:</b> You can work on a free - implementation of the <a - href="class-library.html">class libraries</a>, the - <a href="runtime.html">runtime engine</a>, <a - href="tools.html">the tools</a>, the <a - href="testing.html">testing framework</a> - - * <b>Writers:</b> You can help us bywriting <a - href="documentation.html">documentation</a>. - </ul> + Mono has not been completed yet. It is a project under + active development and with a vibrant community. If you are + looking at ways of helping the project, you have come to the + right web page. + + There are three different philosophical approaches to helping + the Mono project, the selfish way, the altruistic or the + educational way. + + The <b>selfish</b> way is packed with adventure. You start by + building your own software, and start using the compiler and + tools that come with Mono. Eventually you will run into + missing features, or a bug in the software. Since we ship all + the source code for Mono, you can start tracking down the + problem. Depending on how much time you have to devote to the + problem you could: <a href="http://bugzilla.ximian.com">File a + bug report</a> (read <a href="#goodbugreport">this</a>); track + down the problem and provide a better + <a href="http://bugzilla.ximian.com">bug report</a>; fix the + bug and provide a patch (you can <a + href="mailto:mono-list@ximian.com">post it</a> to the <a + href="http://lists.ximian.com/mailman/listinfo/mono-list">mono + mailing list</a>; or discuss the solution on the mailing + list. Ideally you will also write a <a + href="testing.html">regression test</a> so the bug does not + get re-introduced in the future. + + The <b>altruistic</b> is probably the easiest because you get + to pick a piece of Mono that you might want to work on. You + can pick an unfinished <a href="class-library.html">class</a> (from our <a + href="class-status.html">class status page</a>); help with the + <a href="documentation.html">documentation effort</a> (<a + href="http://lists.ximian.com/mailman/listinfo/mono-docs-list">mailing + list for the documentation effort</a>); fix existing <a + href=http://bugzilla.ximian.com/buglist.cgi?product=Mono%2FClass+Libraries&product=Mono%2FRuntime&component=CORLIB&component=misc&component=System&component=System.Web&component=System.XML&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time&form_name=query">runtime + bugs</a>; <a + href="http://bugzilla.ximian.com/buglist.cgi?product=Mono%2FMCS&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&cmdtype=doit&newqueryname=&order=Reuse+same+sort+as+last+time&form_name=query">compiler + bugs</a>; help with the <a href="tools.html">tools</a> or + writing <a href="testing.html">tests</a> that help make Mono + more robust or help with the <a + href="http://www.go-mono.com/winforms.html">Winforms + effort</a>. + + The <b>educational</b> way is an interesting one, because you + pick a technology you are interested in, and work on that + technology to learn the technology. Those are just broad things that need to be worked on, but something that would help tremendously would be to help with @@ -20,6 +53,11 @@ You can see what needs to be done in the class libraries <a href="class-status.html">here</a> +* IRC Channel + + Many developers get together on the <b>#mono</b> irc channel + on the <b>irc.gnome.org</b> server. + ** To start contributing As a programmer, you can contribute in three different scenarios to Mono: @@ -61,7 +99,7 @@ world that only has a test suite. To get started writing tests see the <a href="testing.html">Test Suite</a> - section. <a href="mono-contribution-howto">Here</a> there is a good All-In-One introduction to the art of writing tests. + section. <a href="mono-contribution-howto.html">Here</a> there is a good All-In-One introduction to the art of writing tests. *** Contributing to the runtime engine @@ -90,6 +128,53 @@ You can review the list of current bugs by going <a href="http://bugzilla.ximian.com/buglist.cgi?product=Mono%2FClass+Libraries&product=Mono%2FMCS&product=Mono%2FRuntime&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=substring&long_desc=&long_desc_type=substring&bug_file_loc=&bug_file_loc_type=substring&keywords=&keywords_type=anywords&op_sys_details=&op_sys_details_type=substring&version_details=&version_details_type=substring&cmdtype=doit&order=%27Importance%27&form_name=query">here</a> + Check our <a href="bugs.html">Bugs</a> that contains links to + easily add a bug report, or to query the existing bugs. + +<a name="goodbugreport"/> +** How to make good bug reports + + A mail from Paolo to mono-devel-list contained this check list: + <ol> + * Submit a test case, the smaller it is, the better + + * Use <a href="http://bugzilla.ximian.com"> + http://bugzilla.ximian.com</a> to report the bug. + + <p>In <b>addition</b> to bugzilla, posting to the list is + fine if the bug merits larger exposure or design + discussions to solve; posting to the list twice or more + is just a way to annoy people and make them waste time, + specially when you start a new thread about it. + + * If the test involves libraries or assemblies that are + not part of mono, add info about where to download all + the dependencies, and how to compile/install them. + + * If compiling the test case requires more than: + <pre> mcs test.cs </pre> + provide the <b>full command line</b> you used to compile + the test. + + * If running the test requires more than: + <pre> mono test.exe </pre> + provide the <b>full command line</b> needed to replicate + the bug. + + * Provide info about the version of the software you're + using (both mono and the operating system or relevant + libraries). + + * Provide the output you expect the test case to produce. + + * Provide the actual output <b>you</b> get from the test case. + </ol> + + A good bug report complies with at least 6 items from the list. + If your bug report complies with 3 or less items, it is very + poor and it means it will take much more time to fix (when it's + not ignored). + ** Small tasks A few smaller tasks are here, dropped in no particular order: |