Ruby Core
Зараз чудовий час, щоб стежити за розвитком Ruby. З огляду на підвищену увагу до Ruby в останні роки, зростає потреба в талановитих людях, які допоможуть покращувати Ruby та документувати його частини. Тож з чого почати?
Тут розглядаються такі теми розвитку Ruby:
Використання Git для відстеження розвитку Ruby
Поточний основний репозиторій найсвіжішого вихідного коду Ruby — git.ruby-lang.org/ruby.git. Також є дзеркало на GitHub. Зазвичай, будь ласка, використовуйте саме це дзеркало.
Отримати найновіший вихідний код Ruby можна за допомогою Git. У командному рядку:
$ git clone https://github.com/ruby/ruby.gitКаталог ruby тепер міститиме найновіший вихідний код
для девелоперської версії Ruby (ruby-trunk).
Див. також Non-committer’s HOWTO to join our development.
Якщо у вас є доступ для комітів і ви хочете щось запушити, використовуйте основний репозиторій.
$ git clone git@git.ruby-lang.org:ruby.gitПокращення Ruby, патч за патчем
Команда core підтримує issue tracker для подання патчів і звітів про помилки для Matz і команди. Ці повідомлення також надходять до поштової розсилки Ruby-Core для обговорення, тож ви можете бути впевнені, що ваш запит не залишиться непоміченим. Ви також можете надсилати патчі безпосередньо до розсилки. У будь-якому разі вас заохочують долучатися до обговорення.
Будь ласка, перегляньте Посібник з написання патчів для порад від Matz про те, як зробити так, щоб ваші патчі розглядалися.
Коротко, кроки створення патча:
-
Клонувати вихідний код Ruby з GitHub. Зазвичай патчі для виправлення помилок або нових можливостей слід подавати для trunk гілки Ruby.
$ git clone https://github.com/ruby/ruby.gitЯкщо ви виправляєте помилку, специфічну для однієї гілки підтримки, переключіться на відповідну гілку.
$ git checkout ruby_X_XX_X слід замінити на версію, яку ви хочете отримати.
-
Додайте свої покращення в код.
-
Створіть патч.
$ git diff > ruby-changes.patch -
Створіть тікет в issue tracker або надішліть патч до поштової розсилки Ruby-Core із записом ChangeLog, що описує патч.
-
Якщо щодо патча не виникло проблем, комітерам буде надано дозвіл на його застосування.
Зверніть увагу: патчі слід подавати як unified diff. Більше про те, як патчі об’єднуються, дивіться у довідці diffutils.
Обговорення розвитку Ruby зосереджується в поштовій розсилці Ruby-Core. Тож якщо вам цікаво, чи вартий ваш патч уваги, або якщо ви хочете започаткувати обговорення про майбутнє Ruby — сміливо долучайтеся. Зауважте, що офтоп-обговорення в цій розсилці не допускаються: рівень шуму має бути дуже низьким, теми — точними, добре продуманими та добре сформульованими. Ми звертаємося до творця Ruby, тож тримаймо відповідний рівень поваги.
Пам’ятайте, що багато core-розробників Ruby живуть у Японії, і хоча багато хто добре володіє англійською, існує значна різниця в часових поясах. Також існує цілий набір японськомовних розсилок розробки, що функціонують паралельно з англомовними. Будьте терплячими: якщо ваше питання не вирішено, наполягайте — спробуйте ще раз через кілька днів.
Примітка про гілки
Вихідний код Ruby керувався репозиторієм Subversion до 22 квітня 2019 року. Тож деякі гілки й досі можуть підтримуватися у Subversion. Ви можете переглянути SVN-репозиторій.
Проте вам не потрібно про це турбуватися (якщо тільки ви не супроводжуєте гілку). Ви можете переключатися на гілки у своїй робочій копії Git. Наприклад, виконайте таку команду:
$ git checkout ruby_X_XX_X слід замінити на версію, яку ви хочете отримати.
Якщо ви хочете змінювати гілки, відкрийте issue у нашому issue tracker. Дивіться також наступний розділ.