** The content of this article may not be "all this". Read the community air before committing **
I wanted to commit to CRuby, but unfortunately the information is discrete and a little difficult to do. I felt that, so for those who want to commit to CRuby, this article is about summarizing information as much as possible.
CONTRIBUTING.md included in the source is as follows.
Please see the official issue tracker and wiki HowToContribute.
Issue tracker is a normal Redmine, and new tickets are added after registering an account. The content of HowToContribute is very simple, and when translated ... (It may become old in the future. ** Please read the content of CONTRIBUTING.md directly before posting the patch! **)
- Before sending the patch --Only Ruby 2.2 can add new features. 1.9 / 2.0 / 2.1 will not accept new feature additions, and maintenance branches like 2.1 will not merge new feature additions. --Search for previous discussions in ruby-core. --Be sure to agree that your code will be distributed or modified under a Ruby license. The license may change in the future, but if you disagree with the license change, be sure to participate in the discussion.
- What is requested by the patch --Most of the time you should send it to the Ruby 2.2 trunk. (Otherwise, only when sending bugfix patches for bugs that exist at the time of the maintenance branch) --Please be sure to send in unified diff format. (diff -pu is preferable. git or svn diff is also good.) --Be careful not to make any changes to the appearance of your code. (Follow the coding style of the original code) --Do not include multiple changes in one commit
- How to send --Create a Redmine ticket as a Bug or Feature. Then it will be transferred to ruby-core (and ruby-dev) --Pull Request on Github is also accepted for minor corrections. However, Pull Requests that contain controversial content are simply ignored.
- After sending --Tickets may be ignored in an accident. (For example, the reviewer is busy, so.) In that case, please ping with a ticket.
- License --Be sure to agree that your patch will be handled under a Ruby license. Also, when you change the license, unless you object to it, we will consider that you have agreed to the license change.
But it's not just this information. Let's follow the contents of ruby-dev and other discussions of Redmine tickets For example, https://bugs.ruby-lang.org/issues/10032 There is such a discussion (although it is a ticket with a slight frame ...), so here
Etc. can be read.
There is a problem that the work is overwhelmed, it is also to get the latest atmosphere of the community, and I think that it is good to read the tickets of other patches first.
I'd like to make a correction so as not to change the coding style, If you don't read the original coding style well, you may destroy it. I sent a patch to iseq.c the other day (not accepted), but I stepped on it.
At that time, it seemed to me that the original code was a mixture of tabs and spaces, the if indent was not indented, and the function scope was indented. And I tried to match it as much as possible, but there was no common sense. The tabs should look like 8 tabs, indented every 4 spaces, but replace them with tabs when they reach 8 spaces. It was the style.
Use common sense and read the code properly. I think it can be avoided if you think about something better and act rather than obey the rules and formats strangely. (It's a Rubyist.)
The important thing is probably hospitality. Keep in mind that everyone is a volunteer.
Recommended Posts