e46a49ecf1
Former-commit-id: d0813289fa2d35e1f8ed77530acb4fb1df441bc0
74 lines
2.8 KiB
Markdown
74 lines
2.8 KiB
Markdown
Guidelines
|
|
==========
|
|
|
|
When contributing to the Mono project, please follow the [Mono Coding
|
|
Guidelines][1]. We have been using a coding style for many years,
|
|
please make your patches conform to these guidelines.
|
|
|
|
[1]: http://www.mono-project.com/community/contributing/coding-guidelines/
|
|
|
|
Etiquette
|
|
=========
|
|
|
|
In general, we do not accept patches that merely shuffle code around,
|
|
split classes in multiple files, reindent the code or are the result
|
|
of running a refactoring tool on the source code. This is done for
|
|
three reasons: (a) we have our own coding guidelines; (b) Some modules
|
|
are imported from upstream sources and we want to respect their coding
|
|
guidelines and (c) it destroys valuable history that is often used to
|
|
investigate bugs, regressions and problems.
|
|
|
|
License
|
|
=======
|
|
|
|
The Mono runtime, compilers, and tools and most of the class libraries
|
|
are licensed under the MIT license. But include some bits of code
|
|
licensed under different licenses. The exact list is [available here] (https://github.com/mono/mono/blob/master/LICENSE).
|
|
|
|
Different parts of Mono use different licenses. The actual details of
|
|
which licenses are used for which parts are detailed on the LICENSE
|
|
file in this directory.
|
|
|
|
CLA
|
|
=======
|
|
|
|
Contributions are now taken under the [.NET Foundation CLA] (https://cla2.dotnetfoundation.org/).
|
|
|
|
Testing
|
|
=======
|
|
|
|
Pull requests go through testing on our [Jenkins server][2]. We will
|
|
usually only merge a pull request if it causes no regressions in a
|
|
test run there.
|
|
|
|
When you submit a pull request, one of two things happens:
|
|
|
|
* If you are a new contributor, Jenkins will ask for permissions (on
|
|
the pull request) to test it. A maintainer will reply to approve
|
|
the test run if they find the patch appropriate. After you have
|
|
submitted a few patches, a maintainer will whitelist you so that
|
|
all of your future pull requests are tested automatically.
|
|
* If you are a well-known, whitelisted contributor, Jenkins will go
|
|
ahead and test your pull request as soon as a test machine is
|
|
available.
|
|
|
|
When your pull request has been built, Jenkins will update the build
|
|
status of your pull request. If it succeeded and we like the changes,
|
|
a maintainer will likely merge it. Otherwise, you can amend your pull
|
|
request to fix build breakage and Jenkins will test it again.
|
|
|
|
[2]: http://jenkins.mono-project.com/
|
|
|
|
# Inactivity
|
|
|
|
Occasionally, a pull request sits for several months without any
|
|
response from the author. This isn't necessarily an issue, but we may
|
|
sometimes decide to close pull requests that have not seen any
|
|
progress for a long time. This is in interest of keeping the pull
|
|
request list clean so that other pull requests don't get lost in the
|
|
clutter.
|
|
|
|
If we do close your pull request due to inactivity, you're more than
|
|
welcome to submit it anew after you address any comments or issues that
|
|
were brought up on the original pull request.
|