X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=web%2Fcontributing;h=ffadd989e986a6ff2cb01ffcd80b1e4072f7bb91;hb=ef931215dd74f69d01e1f0d452eb512d89a7ac3b;hp=c09f5a79e8cdc8561eaf2e716c5b3d8d5390538f;hpb=6fa717e133a00bfcb00784282bdf160763470ba2;p=mono.git
diff --git a/web/contributing b/web/contributing
index c09f5a79e8c..ffadd989e98 100644
--- a/web/contributing
+++ b/web/contributing
@@ -10,7 +10,7 @@
href="tools.html">the tools, the testing framework
- * Writers: You can help us with writing Writers: You can help us bywriting documentation.
@@ -18,15 +18,67 @@
something that would help tremendously would be to help with
small duties in the project that need to be addressed.
+ You can see what needs to be done in the class libraries here
+
** To start contributing
+ As a programmer, you can contribute in three different scenarios to Mono:
+
+
+ * If you only have Linux/Unix.
+ * If you only have Windows.
+
+ * If you have both Linux and Windows.
+
+
+ You might also want to check our common
+ setups section that describes some common setups that people
+ use while working on Mono.
+
+*** Contributing to the class library, regression tests or the compiler
+
+ This only requires Windows currently.
+
To start developing classes or to contribute to the compiler,
- you only need Windows and the .NET Beta 2 SDK. Please notice
+ you only need Windows and the .NET Framework 1.0 SDK. Please notice
that you do not need Visual Studio (although you can use it if
- you want).
+ you want). The .NET Framework SDK requires some version of
+ Windows XP or Windows NT. If you are running Windows 98, 95
+ or Me, you could use instead the .NET Redist package, but it
+ lacks the documentation browser and the ildasm program (C#, VB, JScript and IL
+ assembler are included).
You can get it here
+ If you are new to .NET, writing regression tests is a good way
+ of starting to contribute: it will help you get used to C# as
+ well as getting comfortable with the .NET APIs.
+
+ This helps because at this point you might be the best
+ qualified person to fix a problem found by the regression
+ test, or you might have a new class to implement in the .NET
+ world that only has a test suite.
+
+ To get started writing tests see the Test Suite
+ section. Here there is a good All-In-One introduction to the art of writing tests.
+
+
+*** Contributing to the runtime engine
+
+ This only requires Linux, currently some tasks are easier if you
+ have access to Windows as well.
+
+ Here are a few things you can do:
+
+ * Port the runtime to other architectures.
+ * Port the runtime to other operating systems.
+ * Finish the IL code verifier in the runtime.
+ * Hack the JIT, improve the code generator, add new
+ pattern rules, improve the register allocator.
+ * Implement the debugging interfaaces
+
+
** Bug reporting
If you find bugs in Mono, please make sure you enter a bug
@@ -36,23 +88,89 @@
http://bugzilla.ximian.com and enter bug reports against
your favorite component (Mono, Runtime, C# compiler).
+ You can review the list of current bugs by going here
+
** Small tasks
A few smaller tasks are here, dropped in no particular order:
- * MCS compilation process: Currently MCS does
- not build with a single `make' command. This should
- be fixed (this being part of the `Joel Test' that
- software has to pass).
-
* Mono/doc and web site: They need to be
packaged up in the official `distribution'
+
+ * Adding serialization support to all the classes.
+
+ We have many classes, but we have not implemented in
+ many cases the serialization and re-incarnation support in
+ them (this is pretty straight forward code, and simple,
+ but there is a lot to be done here).
-* Books on C#
+* Emacs support
-
-* Special note
+ Brad Merryl's C# mode for Emacs is available: http://www.cybercom.net/~zbrad/DotNet/Emacs/
+
+* Books on C# and DotNet.
+
+
+
+
+* Common Setups
+
+ People running both Linux and Windows while contributing to
+ Mono use a number of tricks to increase their productivity.
+
+ Scenarios:
+
+
+
+* Special Note
If you have looked at Microsoft's implementation of .NET or
their shared source code, you may not be able to contribute