Documentation for a newer release is available. View Latest

Ruby

Ruby 2.5

Ruby 2.5 — это последняя стабильная версия Ruby. Включено множество новых функций и улучшений для всё более разнообразных и растущих требований к Ruby. Благодаря этому крупному обновлению с Ruby 2.4 в Fedora 26 до Ruby 2.5 в Fedora 28 Fedora становится превосходной платформой разработки на Ruby.

Новые функции:

  • rescue/else/ensure теперь разрешено использовать непосредственно с блоками do/end.

  • Добавлен yield_self для вызова данного блока в его контексте. В отличие от tap, он возвращает результат блока.

  • Поддержка измерения покрытия ветвей и покрытия методов. Покрытие ветвей указывает, какие ветви выполняются, а какие нет. Покрытие методов указывает, какие методы вызываются, а какие нет. Запуская набор тестов с этими новыми функциями, вы узнаете, какие ветви и методы выполняются, и сможете более строго оценить общее покрытие набора тестов.

  • Hash#slice и Hash#transform_keys.

  • Struct.new может создавать классы, принимающие именованные аргументы.

  • Методы Enumerable #any?, all?, none? и one? принимают аргумент-образец.

  • Поиск констант верхнего уровня больше не доступен.

  • Одна из наших самых любимых библиотек, pp.rb, теперь загружается автоматически. Вам больше не нужно писать require pp.

  • Вывод обратной трассировки и сообщения об ошибке в обратном порядке (сначала самый старый вызов, последним — самый новый). Когда длинная обратная трассировка появляется в вашем терминале (TTY), вы можете легко найти строку-причину внизу трассировки. Обратите внимание, что порядок изменяется только когда обратная трассировка выводится непосредственно в терминал.

Совместимость на уровне исходного кода с предыдущими версиями Ruby должна быть сохранена. Тем не менее, пользовательские двоичные расширения Ruby необходимо пересобрать.

Дополнительную информацию о Ruby 2.5 см. в примечаниях к выпуску вышестоящего проекта.