RubyGems Digest 2020·09

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
Большая подборка информации о библиотеках языка Ruby за сентябрь 2020 года. Новости, включая русскоязычные источники. А так же полезные мнения и опыт разработки.



Новости


Вышел Ruby 3.0.0 Preview 1. В нём добавляются статическая типизация RBS, улучшение производительности с помощью MJIT, параллельные вычисления на модели акторов с помощью Ractor, планировщик для перехвата блокирующих операций и другое. Новую версию уже можно попробовать в Docker.

image 4-5 сентября прошла японская конференция RubyKaigi Takeout 2020. Многие доклады представлены на английском. Больше ссылок на видео — ниже, в Полезных материалах.

8 сентября прошла итальянская конференция RubyDay 2020.

12-13 сентября прошла украинская конференция RubyC 2020.

В Rails 6.1 добавляется опция --minimal.

В Ruby 2.8 будет добавлен новый однострочный синтаксис объявления методов (без слова end)

image RWpod 35 выпуск
В Ruby добавляется экспериментальная поддержка правостороннего присваивания
В Rails добавляется поддержка сохранения часовых поясов для ActiveJob
Система тестов II: надежное браузерное Rails-тестирование с помощью SitePrism

image RWpod 36 выпуск
Sinatra v2.1.0
В класс Symbol добавят метод name для получения неизменяемой строки с именем символа
Вышли Rails 5.2.4.4 и Rails 6.0.3.3
Написание web-сервера на основе Ractor

image RWpod 37 выпуск
В Ruby добавляется пересылка списка аргументов с выделением ведущих аргументов
Мы сделали Puma быстрее с помощью Sleep Sort
Rails Concerns: использовать Concern или нет

image RWpod 38 выпуск
Вышел Ruby 3.0.0 Preview 1
В Rails 6.1 объявляются устаревшими команды rails db:structure:dump и rails db:structure:load
В Ruby объявляется устаревшим класс DateTime

Новинки


Classy Hash 1.0.0 — валидатор схем для хэшей

Cloudflare::Rails 1.0.0 — библиотека для правильной настройка Rails для CloudFlare

Новые версии


Puma 5.0.0 — HTTP-сервер для Ruby/Rack-приложений.

Browser 5.0.0 — определитель браузера, включает интеграцию с ActionController.

Airbrake 11.0.0 — онлайн инструмент для отслеживания исключений в приложениях.

docker-api 2.0.0 — гем, предоставляющий объектно-ориентированный интерфейс для Docker Engine API

Couchbase Ruby Client 3.0.0 — клиент для Couchbase

Coverband 5.0.0 — измерение использования кода на продакшене со счетчиком для каждой строки.

Castle-rb 5.0.0 — защита аккаунтов от взлома.

Foreman-tasks 3.0.0 — движок управления задачами для системы управления инфраструктурой Foreman

Blocks 4.0.0 — библиотека для работы с блоками MVC-представлений

Hawkular Client 5.0.0 — клиент для инструментария мониторинга Hawkular

Waterdrop 2.0.0 — библиотека для простой отправки сообщений в Kafka с валидацией

Ruby-bandwidth 3.0.0 — интеграция с сервисом звонков и сообщений Bandwidth

Rgeo-shapefile 3.0.0 — компонент для чтения файлов геопространственных данных библиотеки RGeo

Stripe-rails 2.0.0 — движок для интеграции с платежной инфраструктурой Stripe

Обновления


StimulusReflex 3.3.0 — frontend-библиотека для создания современных реактивных real-time приложений на привычном Ruby on Rails

Webpacker 5.2.0 — надстройка над webpack для управления Javascript-модулями в Rails-приложениях.

Sinatra 2.1.0 — DSL для создания web-приложений.

Rack::Protection 2.1.0 — защита от распространненых способов web-атак.

Unicorn 5.7.0 — HTTP-сервер с Rack-интерфейсом

Haml 5.2.0 — шаблонизатор для HTML.

WebMock 3.9.0 — библиотека для заглушек и установки ожиданий на HTTP-запросы в Ruby.

Rack-mini-profiler 2.1.0 — профайлер, замеряющий скорость отображения каждой страницы

New Relic Ruby Agent 6.13.0 — агент New Relic для мониторинга производительности.

Faker 2.14.0 — порт Perl-библиотеки Data::Faker для генерации фейковых данных

Bunny 2.17.0 — клиент для RabbitMQ.

Ruby_parser 3.15.0 — парсер языка Ruby написанный на чистом Ruby, позволяющий преобразовывать код в изменяемые s-выражения.

Brakeman 4.10.0 — сканер уязвимостей, преимущественно для Ruby on Rails

Active Admin 2.8.0 — фреймворк для создания админки к вебсайту

Regexp::Parser 1.8.0 — библиотеки для токенизации, парсинга и преобразования регулярных выражений

RuboCop Rails 2.8.0 — автоматический контроль соглашений по наилучшему стилю кода в Rails-приложениях

Groonga-command 1.5.0 — библиотека команд для системы поиска Groonga

Kiba 3.5.0 — легковесная ETL для Ruby

Arbre 1.3.0 — DSL для описания HTML

iCalendar 2.7.0 — библиотека для работы с календарем в формате iCalendar

Gon 6.4.0 — получение Rails-переменных в Js-коде

Ancestry 3.2.0 — организация записей в ActiveRecord в древовидной структуре

hamlit 2.13.0 — высокопроизводительная реализация Haml

Scientist 1.5.0 — библиотека для осторожного рефакторинга критических участков кода

Grape-swagger 1.3.0 — автогенерация документации для API на Grape

Invisible Captcha 1.1.0 — библиотека для защиты приложения от спам-ботов

Down 5.2.0 — инструмент для гибкого, потокового и безопасного скачивания удаленных файлов

Racecar 2.1.0 — дружественный фреймворк для Kafka-обработчиков

Travis 1.10.0 — консольный клиент и библиотека для Travis CI

March_hare 4.3.0-java — RabbitMQ-клиент для JRuby созданный на основе официального клиента для Java

Rpush 5.1.0 — сервис push-уведомлений

Unicode::Emoji 2.6.0 — библиотека для сопоставление юникод-текста с эмодзи

karafka 1.4.0 — фреймворк для работы с Kafka

Lita 4.8.0 — чат-бот с плагинами для различных чат-сервисов

Closure Tree 7.2.0 — простая и эффективная реализация иерархии в ActiveRecord-моделях

pusher-fake 2.2.0 — имитация Pusher-сервера для разработки и тестирования

Leaflet-rails 1.7.0 — привязка фронтенд библиотеки географических карт leaflet.js к Rails

Rails Multisite 2.5.0 — обеспечение нескольких баз данных для Rails-приложений

Ibandit 1.2.0 — библиотека для проверки и действий с IBAN

Blind Index 2.2.0 — безопасный поиск в зашифрованных полях базы данных

Validators 3.4.0 — дополнение некоторых полезных ActiveModel/ActiveRecord валидаторов

Signalfx 3.1.0 — клиент для сервиса мониторинга SignalFx

Полезные материалы


image Компания Evrone провела марафон кейсов, часть из которых посвящена Ruby или связана с ним.
image Ключевые идеи из интервью с создателем Ruby on Rails (а так же полный текст image интервью с Дэвидом Ханссоном на русском).
image Медиа-портал на Ruby-движке
image Vexor — что нужно знать, если создаёте продукт для разработчиков?
image Связываем обычные и криптовалюты с Cryptopay
image Оцифровываем консультанта с планшетом
image Work&Play — превращаем мотивацию персонала в игру
image Quiv — конвертируем знания в помощь благотворительным фондам
image Айдентика конференции RubyRussia

image Программирование только классами

Реактивное Rails-приложение со StimulusReflex

Вышел StimulusReflex v3.3

Переход с JavaScript на Ruby

image Пришло время запускать Ruby в Web через WebAssembly?

image Почему и как транспилировать Ruby?

image Ускорение работы Rack и Rails с TruffleRuby

image Разработка Dreamcast-приложений и игр на mruby

Когда разработка на Ruby on Rails — правильный выбор?

Почему Ruby on Rails по-прежнему хороший выбор для разработки в 2020 году?

Параллельные вычисления в Ruby 3 preview

Синтаксис Set в Ruby 3

Денежные расчеты в Ruby

11 частых вопросов по RubyCop

Повышение производительности с Ruby 3.0 JIT

Профилирование — очевидный шаг после замеров производительности вашего кода

Сложность ActiveRecord-транзакций

В процессе деконструкции: состояние монолита Shopify

image dry-system — для чего? от ручного перечисления зависимостей к полномасштабной архитектуре

image Разработка через тестирование, мой упрощенный подход

Разница при тестировании между Mocks, Stubs и Spies

5 лучших библиотек для тестирования для создания приложений на Ruby on Rails

Написание хороших пояснений к тестам

Композиция функций: Python vs Ruby

Разделяем монолит

Современные альтернативы командной строки

Введение в паттерны и антипаттерны Ruby on Rails

Наиболее распространенные ошибки в разработке на Ruby on Rails (и как их избежать)

Непрерывная интеграция для Ruby

Управление RubyGems и Bundler с помощью Ansible

Автоматизация подготовки и развертывания Rails-сервера с помощью Ansible и Capistrano

Что нового в Sidekiq, выпуск 2020

image Контрибьютинг в Тор

Советы и приемы защиты вашего приложения от ссылочных уязвимостей

10 лучших технических подкастов (по выбору Rails-сообщества)

Объяснение принципов SOLID на примерах

Наиболее полезные библиотеки для API на Ruby on Rails

Предыдущий Ruby Digest
Источник: https://habr.com/ru/post/522648/


Интересные статьи

Интересные статьи

На работе я занимаюсь поддержкой пользователей и обслуживанием коробочной версии CRM Битрикс24, в том числе и написанием бизнес-процессов. Нужно отметить, что на самом деле я не «чист...
Часто от программистов PHP можно услышать: «О нет! Только не „Битрикс“!». Многие специалисты не хотят связываться фреймворком, считают его некрасивым и неудобным. Однако вакансий ...
В 1С-Битрикс: Управление сайтом (как и в Битрикс24) десятки, если не сотни настраиваемых типов данных (или сущностей): инфоблоки, пользователи, заказы, склады, форумы, блоги и т.д. Стр...
В 2019 году люди знакомятся с брендом, выбирают и, что самое главное, ПОКУПАЮТ через интернет. Сегодня практически у любого бизнеса есть свой сайт — от личных блогов, зарабатывающих на рекламе, до инт...
От скорости сайта зависит многое: количество отказов, брошенных корзин. Согласно исследованию Google, большинство посетителей не ждёт загрузки больше 3 секунд и уходит к конкурентам. Бывает, что сайт ...