Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'doc/contributing')
-rw-r--r--doc/contributing190
1 files changed, 0 insertions, 190 deletions
diff --git a/doc/contributing b/doc/contributing
deleted file mode 100644
index ffadd989e98..00000000000
--- a/doc/contributing
+++ /dev/null
@@ -1,190 +0,0 @@
-* 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>
-
- Those are just broad things that need to be worked on, but
- 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 <a href="class-status.html">here</a>
-
-** To start contributing
-
- As a programmer, you can contribute in three different scenarios to Mono:
-
- <ul>
- * If you only have Linux/Unix.
- * If you only have Windows.
-
- * If you have both Linux and Windows.
- </ul>
-
- You might also want to check our <a href="#setup">common
- setups</a> 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 Framework 1.0 SDK. Please notice
- that you do not need Visual Studio (although you can use it if
- 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 <a
- href="http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/001/829/msdncompositedoc.xml">.NET Redist package</a>, but it
- lacks the documentation browser and the ildasm program (C#, VB, JScript and IL
- assembler are included).
-
- You can get it <a href="http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true">here</a>
-
- 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 <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.
-
-
-*** 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:
- <ul>
- * 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
- </ul>
-
-** Bug reporting
-
- If you find bugs in Mono, please make sure you enter a bug
- report so we can keep track of problems in Mono.
-
- To enter bug reports go to <a href="http://bugzilla.ximian.com">
- http://bugzilla.ximian.com</a> and enter bug reports against
- your favorite component (Mono, Runtime, C# compiler).
-
- 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>
-
-** Small tasks
-
- A few smaller tasks are here, dropped in no particular order:
- <ul>
- * <b>Mono/doc and web site:</b> 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).
- </ul>
-
-* Emacs support
-
- Brad Merryl's C# mode for Emacs is available: <a
- href="http://www.cybercom.net/~zbrad/DotNet/Emacs/">http://www.cybercom.net/~zbrad/DotNet/Emacs/</a>
-
-* Books on C# and DotNet.
-
- <ul>
- * Dotnet Books (<a href="http://www.dotnetbooks.com">http://www.dotnetbooks.com</a>)
-
- * Dotnet Resources (<a href="http://www.dotnetexperts.com/resources/">
- http://www.dotnetexperts.com/resources</a>)
-
- * O'Reilly C# Essentials (<a href="http://www.oreilly.com/catalog/csharpess/">
- http://www.oreally.com/catalog/csharpess</a>)
-
- * O'Really .NET Essentials (<a href="http://www.oreilly.com/catalog/dotnetfrmess/">
- http://www.oreally.com/catalog/dotnetfrmess</a>)
- </ul>
-
-<a name="setup">
-* Common Setups
-
- People running both Linux and Windows while contributing to
- Mono use a number of tricks to increase their productivity.
-
- Scenarios:
-
- <ul>
- * <b>Linux host and Windows host</b>
-
- The Windows file system is shared (right click on
- your hard drive icon, and select sharing, allow this
- to be shared).
-
- The Windows machine has the required build tools
- (cygwin, and the .NET framework). On the Windows
- machine, you want to setup the ssh server (run the
- ssh-host-config program to configure your ssh) and
- run it (from a cygwin terminal, type: /usr/sbin/sshd).
-
- From the Linux side, you want to mount the Windows
- file system, using something like this:
-
-<tt><pre>
- mount -t smbfs -o uid=miguel,username="Miguel de Icaza" "//quack/c$" /mnt
-</pre></tt>
-
- In the above example, my Linux user name is
- `miguel', and this will allow this user to have
- read/write access to the share.
-
- The host name is `quack', and the name of the share
- is `c$' (that is the C: partition).
-
- The file system is accessible on /mnt.
-
- You can perform your cvs update and cvs commits from
- the /mnt directory, and run Emacs or your favorite
- Linux text editor on the Unix side in this way.
-
- Then from another terminal, you can ssh into your
- Windows box using ssh, like this: ssh "Miguel de Icaza@quack"
- </ul>
-
-* Special Note
-
- If you have looked at Microsoft's implementation of .NET or
- their shared source code, you may not be able to contribute
- to Mono. Details will follow when we know more about this.
-
- In general be careful when you are implementing free software
- and you have access to proprietary code. We need to make sure
- that we are not using someone else's copyrighted code
- accidentally.
-
- Please do not use the <b>ildasm</b> program to disassemble
- proprietary code when you are planning to reimplement a class
- for Mono. If you have done this, we might not be able to use
- your code.
-
- Please stick to published documentation for implementing any
- classes.