Руководство по написанию патчей
Ниже приведены несколько советов, полученных непосредственно от Matz, о том, как добиться рассмотрения ваших патчей.
Эти рекомендации были взяты из сообщения Matz в списке рассылки Ruby-Core:
-
Вносите одно изменение в один патч
Это самая большая проблема для большинства отложенных патчей. Когда вы отправляете патч, который исправляет несколько ошибок (и добавляет новые функции) одновременно, нам приходится разделять их перед применением. Это довольно сложная задача для нас, занятых разработчиков, поэтому такие патчи, как правило, откладываются. Пожалуйста, не присылайте большие патчи.
-
Предоставляйте описание
Иногда сам патч недостаточно описывает проблему, которую он исправляет. Более подробное описание (исправляемая проблема, условия, платформа и т. д.) помогло бы быстрее принять патч.
-
Создавайте diff относительно последней ревизии
Ваша проблема, возможно, уже была исправлена в последней ревизии. Или код к настоящему моменту может полностью отличаться. Пожалуйста, перед отправкой патча постарайтесь получить последнюю версию (ветку
trunkдля последней разрабатываемой версии,ruby_2_6для 2.6) из репозитория Subversion. -
Используйте
diff -uМы предпочитаем патчи в формате unified diff (
diff -u), а неdiff -cили любые другие стили патчей. Их гораздо легче рецензировать. Не присылайте измененные файлы, мы не хотим делать diff самостоятельно. -
Предоставляйте тест-кейсы (опционально)
Патч, содержащий тест-кейсы (желательно патч для
test/*/test_*.rb), поможет нам лучше понять патч и ваши намерения.
В будущем мы можем перейти на рабочий процесс в стиле Git (push/pull). Но до тех пор соблюдение приведенных выше рекомендаций поможет вам избежать разочарований.