Проект Rubinius приветствует ваш вклад в проект. Существует множество вещей, где требуется помощь. Самое важное, чтобы вы занимались именно тем, что интересно конкретно вам, поскольку это лучший способ поддержать ваш энтузиазм и желание работать.
Если у вас есть вопросы о Rubinius, лучшим способом получить ответы является общение с нами на IRC канале #rubinius на сервере irc.freenode.net.
Ниже описано неколько идей для вещей, которые можно сделать в Rubinius.
Зачастую ваш код более сложный и запутанный чем спеки. Запустите ваше детище под rubinius и сообщите о возникших проблемах. Смотрите How To Создание тикета.
Мы поможем всем, чем сможем. Выполните собственное исследование, если это возможно. Rubinius стремиться быть проектом, который легко изучить, из которого можно научится чему-то новому и, мы надеемся, который несложно улучшать.
Мы, безусловно, принимаем и поощряем просто отчеты об ошибках, но к тикетам, содержащим шаги для воспроизведения мы относимся с большим вниманием. Еще лучше, если в тикет включен RubySpec, который демонстрирует ошибку и патч, который эту ошибку исправляет.
Выполните bin/mspec tag --list incomplete <папка>
, чтобы просмотреть
спецификации, отмеченные как незавершенные. Или эти спецификации
просто нуждаются в пересмотре или они отсутствуют для определенного
класса.
Примечание: Вы можете указать псевдо-директорию ‘:files’ для <папки>, чтобы вывести теги для всех спецификаций, которые должны проходить на Rubinius. Или вы можете указать любую поддиректорию директории spec, чтобы вывести теги для спеков из этой поддиректории.
Ищите неописанное поведение. Смотрите Написание Ruby спецификации.
Выполните bin/mspec tag --list fails <папка>
, чтобы увидеть спецификации,
помеченные как неработающие.
Примечание: Вы можете указать псевдо-директорию ‘:files’ для <папки>, чтобы вывести теги для всех спецификаций, которые должны проходить на Rubinius. Или вы можете указать любую поддиректорию директории spec, чтобы вывести теги для спеков из этой поддиректории.
Выберите интересующую вас спецификацию и попробуйте написать патч, который исправляет ее.
Изучите принципы работы Rubinius и напишите высокоуровневую документацию, которая поможет другим понять детали реализации.
Ищите пометки типа TODO, HACK, FIXME в коде и отправляйте патчи, исправляющие их. Для их поиска вы можете воспользоваться следующей командой:
`grep -re "@todo\|TODO\|HACK\|FIXME" .`
По вопросам стиля кода обратитесь к Стиль кодирования.