You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+26-1Lines changed: 26 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,11 +37,36 @@ Contributions to this repository will be rigorously policed for quality.
37
37
38
38
All code submissions should be submitted with regression test cases, and will be subject to peer review by the community and Microsoft. The bar for contributions will be high. This will result in a higher-quality, more stable product.
39
39
40
+
- We expect contributors to be actively involved in quality assurance.
40
41
- We expect contributors to be actively involved in quality assurance.
41
42
- We expect contributors to be actively involved in quality assurance.
42
43
- Partial, incomplete, or poorly-tested contributions will not be accepted.
43
44
- Contributions may be put on hold according to stability, testing, and design-coherence requirements.
44
45
46
+
####Mimimum Bar for Code Cleanp Pull Requests
47
+
48
+
In addition to the above, "Code Cleanup" pull requests have the following minimum requirements:
49
+
50
+
- There must be no chance of a behavioural change, performance degradation or regression under any reasonable reading of the code in the context of the codebase as a whole.
51
+
- Code cleanup should generally be made separate to other checkins where possible, or the parts that are cleanup should be labelled as such.
52
+
- Code cleanup is much more likely to be accepted towards the start of a release cycle.
53
+
54
+
####Mimimum Bar for Performance Improvement Pull Requests
55
+
56
+
Performance improvement checkins have the following minimum requirements (in addition to the above)
57
+
58
+
- Performance tests and figures must be given, either in the PR or in the notes associated with the PR. PRs without performance figures will be closed with a polite request to please add them.
59
+
- The PR must show a reliable, substantive performance improvement tha justifies the complexity introduced (if any). For the compiler, performance improvements of~1% are of interest. For the core library, it will depend on the routine in question. For the Visual F# tools, reactivity of the user interface will be of more interest than raw CPU performance.
60
+
61
+
####Mimimum Bar for Bug Fix Pull Requests
62
+
63
+
Bug fix PRs have the following minimum requirements
64
+
65
+
- There must be a separate tracking bug entry in the public GitHub issues. A link should be given in the PR. PRs without a matching bug link will be closed with a polite request to please add it.
66
+
- The code changes must be reasonably minimal and as low-churn, non-intrusive as possible. Cleanup should be done in separate PRs where possible (see above), and fixes should be as small as possible.
67
+
- Thorough test cases must be included in the PR (unless tests already exist for a failing case). PRs without matching tests will be closed with a polite request to please add the tests. However, if you need help adding tests, please note this in the description of the change and people will guide you through where to add the tests.
68
+
69
+
45
70
###Language Evolution
46
71
47
72
We are committed to carefully managing the evolution of the F# language.
@@ -50,4 +75,4 @@ We actively solicit contributions related to the F# language design, but the pro
50
75
51
76
###Coding guidelines
52
77
53
-
Although there is currently no strict set of coding or style guidelines, use common sense when contributing code - make an effort to use a similar style to nearby existing code. If you have a passion for helping us develop a set of coding guidelines that we can roll out and apply within this project, get involved and start a discussion issue.
78
+
Although there is currently no strict set of coding or style guidelines, use common sense when contributing code - make an effort to use a similar style to nearby existing code. If you have a passion for helping us develop a set of coding guidelines that we can roll out and apply within this project, get involved and start a discussion issue.