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

github.com/dotnet/aspnetcore.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtak <34246760+mkArtakMSFT@users.noreply.github.com>2021-02-17 21:01:39 +0300
committerGitHub <noreply@github.com>2021-02-17 21:01:39 +0300
commit2f66d585c80d3273b4b5504185952bb291ee5ea0 (patch)
treeb6b3bbbae7c2f9c24eac44c173844fca6341c8dd /CONTRIBUTING.md
parenta9d9f522a907f94fd2935eb26cb321c702de9b50 (diff)
Added guidance about community contribution PRs (#30180)
Updated `Contributing code and content` section to include information about how to choose issues to contribute to and what process to follow. This is only a part of the workflow. The next one is to make sure we ask community contributors to follow this guidance when they submit a new issue, which I will handle soon.
Diffstat (limited to 'CONTRIBUTING.md')
-rw-r--r--CONTRIBUTING.md26
1 files changed, 22 insertions, 4 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index a125150797..e431e05686 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -28,15 +28,33 @@ Our team members also monitor several other discussion forums:
## Contributing code and content
-We accept fixes and features! Here are some resources to help you get started on how to contribute code or new content.
-
-* Look at the [Contributor documentation](/docs/) to get started on building the source code on your own.
+We are always happy to see PRs from community members both for bug fixes as well as new features.
+To help you be successful we've put together a few simple rules to follow when you prepare to contribute to our codebase:
+1. **Start from an issue, not PR**
+ Over the years we've seen many PRs targeting areas of the framework, which we didn't plan to expand further at the time.
+ In all these cases we had to say `no` to those PRs and close them. That, obviously, is not a great outcome for us. And it's especially bad for the contributor, as they've spent a lot of effort preparing the change.
+ To resolve this problem, we've decided to separate a bucket of issues, which would be great candidates for community members to contribute to. We mark these issues with `help wanted` label. You can find all these issues at: [https://aka.ms/aspnet/helpwanted](https://aka.ms/aspnet/helpwanted).
+
+
+ Within that set, we have additionally marked issues which are good candidates for first-time contributors. Those do not require too much familiarity with the framework and are more novice-friendly. Those are marked with `good first issue` label. The full list of such issues can be found at [https://aka.ms/aspnet/goodfirstissues](https://aka.ms/aspnet/goodfirstissues).
+ If there is some other area not included here where you want to contribute to, first open an issue to describe the problem you are trying to solve and state that you're willing to contribute a fix for it. We will then discuss in that issue, whether we think it belongs in the platform and the best approach to solve it.
+2. **Discuss the design with the team before actually working on a fix**
+ This can save you a lot of time. We've seen PRs, where customers would solve an issue in a way, which either wouldn't fit into the framework because of how it's designed or it would change the framework in a way, which is not something we'd like to do. To avoid these situations, we encourage customers to discuss the preferred design with the team first. To do so, file a new `design proposal` issue, link to the issue you'd like to address and provide detailed information about how you'd like to solve a specific problem. We triage issues peridocially and it will not take long for a team member to engage with you on that proposal.
+ When you get an agreement from our team members that the design proposal you have is solid, then go ahead and prepare the PR.
+ To file a design proposal, look for the relevant issue in the `New issue` page or simply click [this link](https://github.com/dotnet/aspnetcore/issues/new?assignees=&labels=design-proposal&template=4_design_proposal.md):
+ ![image](https://user-images.githubusercontent.com/34246760/107969904-41b9ae80-6f65-11eb-8b84-d15e7d94753b.png)
+
+By following the guidance provided above, you will greatly increase chances for your PR to be accepted and merged.
+
+### Resources to help you get started
+Here are some resources to help you get started on how to contribute code or new content.
+* Look at the [Contributor documentation](/docs/README.md) to get started on building the source code on your own.
* ["Help wanted" issues](https://github.com/dotnet/aspnetcore/labels/help%20wanted) - these issues are up for grabs. Comment on an issue if you want to create a fix.
* ["Good first issue" issues](https://github.com/dotnet/aspnetcore/labels/good%20first%20issue) - we think these are a good for newcomers.
### Identifying the scale
-If you would like to contribute to one of our repositories, first identify the scale of what you would like to contribute. If it is small (grammar/spelling or a bug fix) feel free to start working on a fix. If you are submitting a feature or substantial code contribution, please discuss it with the team and ensure it follows the product roadmap. You might also read these two blogs posts on contributing code: [Open Source Contribution Etiquette](http://tirania.org/blog/archive/2010/Dec-31.html) by Miguel de Icaza and [Don't "Push" Your Pull Requests](https://www.igvita.com/2011/12/19/dont-push-your-pull-requests/) by Ilya Grigorik. All code submissions will be rigorously reviewed and tested by the ASP.NET and Entity Framework teams, and only those that meet an extremely high bar for both quality and design/roadmap appropriateness will be merged into the source.
+If you would like to contribute to one of our repositories, first identify the scale of what you would like to contribute. If it is small (grammar/spelling or a bug fix) feel free to start working on a fix. If you are submitting a feature or substantial code contribution, please discuss it with the team and ensure it follows the product roadmap. You might also read these two blogs posts on contributing code: [Open Source Contribution Etiquette](http://tirania.org/blog/archive/2010/Dec-31.html) by Miguel de Icaza and [Don't "Push" Your Pull Requests](https://www.igvita.com/2011/12/19/dont-push-your-pull-requests/) by Ilya Grigorik. All code submissions will be rigorously reviewed and tested further by the ASP.NET team, and only those that meet an extremely high bar for both quality and design/roadmap appropriateness will be merged into the source.
### Submitting a pull request