This page is for people who want to send a patch. If you want to report a bug, see HowToReport.

Before submit

Only Ruby 2.4 may accept new features. 1.9/2.0/2.1/2.2/2.3 won't accept new features, and maintenance branches like 2.1 also won't merge new features.

Search previous discussions in ruby-core.

You must agree that your code will be distributed and/or modified and so on under Ruby's License. The license may change in the future, you must join the discussion if you don't agree the change.

Patch Requirement

Usually it should be for trunk of Ruby. (except when it is a bugfix and the bug exists only in a maintenance branch)

Format must be a unified diff (diff -pu is prefered. svn diff and git diff are also ok).

Don't introduce cosmetic changes (follow original coding style of the code).

Don't mix different changes in one commit.


Make a redmine ticket as Bug or Feature, and it will forward to ruby-core (or ruby-dev).

Pull request to is acceptable for tiny fixes. But pull requests which need discussions will be simply ignored.

After Submit

A ticket maybe ignored by accident (because reviewers are busy, and so on). In this case, ping the ticket.

You may also add your ticket to the topics of an upcoming Developers Meeting under "From non-attendees" (see "Developer Meetings" on the wiki main page).


You must agree that your patch will be licensed under the Ruby License, and when we change the license we will assume that you agreed the change unless you object to the change in time.