Ruby дайджест #38: интервью с DHH, обсуждение RuboCop, релизы dry-rb и rom-rb

Начнем с того, что одной из самых обсуждаемых тем в мире Ruby стало предложение переименовать гем RuboCop, выпущен фикс Rails, связанный с запуском миграций, Piotr Solnica поделился списком улучшений в dry-rb, rom-rb и hanami с апреля по июнь.

Тренды в сообществе

Интервью с DHH

Evrone продолжают брать интервью, в этот раз вышло текстовое интервью с DHH. В январе компания выпустила ролик с Yukihiro Matsumoto.

Переход GitLab с Unicorn на Puma

Команда GitLab опубликовала пост о том, что, начиная с 13.0 версии, Puma выбран как стандартный сервер приложения. В статье причины и детали перехода.

The RuboCop Name Drama

Через события, связанные с полицией в США, автор RuboCop получил предложение переименовать гем. Развернутый ответ от автора, почему переименовывать популярный проект — это плохая идея.

Релизы

rails 6.0.3.2 — исправление уязвимости CVE-2020-8185, связанной с запуском миграций.

shoulda 4.0

sidekiq 6.1.1

factory_bot 6.1

foreman 2.1

redis-rb 4.2

parallel_tests 3.0

Статьи и туториалы

Linkers & Ruby C Extensions — использование linux linkers при разработке C расширений для Ruby.

I created the same app with Rails and no Javascript — пример создания простейшего realtime приложения с помощью CableReady.

Taming Legacy Code With Characterization Tests — рефакторинг легаси кода с помощью тестов.

Monolithic Ideas For AWS Lambda File Systems — идеи по использованию EFS в Rails-приложении.

Running a Patched Ruby on Heroku — запуск кастомной сборки Ruby на Heroku.

Rails 6.1’s ActiveModel Errors Revamp — новый интерфейс для работы с ошибками ActiveRecord в Rails 6.1.

Web Scraping with Ruby — парсинг страниц с помощью Ruby, обзор инструментов.

Make use of your Github Actions minutes for security checking Rails PRs — интеграция гема brakeman в Github Actions.

Ruby 2.7 adds Enumerable#filter_map — обзор метода filter_map в Ruby 2.7, заменяющий комбинацию методов select и map.

Postgres Indexes for ActiveRecord Join Tables in Rails Apps — оптимизация JOIN-запросов с помощью индексов.

AnyCable 1.0: Four years of real-time web with Ruby and Go — отчет о проделанной работе над гемом AnyCable за 4 года.

Allowing dots in Rails routes — использование точек в роутинге.

Troubleshooting encoding errors in Ruby — подход к устранению ошибок, связанных с кодировками в Ruby.

Rails 6.1 allows enums attributes to configure the default value — Rails 6.1 позволяет устанавливать стандартные значение enum на уровне модели.

Rails 6.1 adds support for where with a comparison operator — добавлена возможность подставлять значения в ActiveRecord SQL запрос без использования знака «?».

Using Action Mailbox in Rails 6 to Receive Mail — туториал по использованию ActionMailbox.

How we scaled async workload processing at GitLab.com using Sidekiq — опыт GitLab по масштабированию Sidekiq.

Pragmatic Rails Testing — чек-лист по тестированию Rails-приложения.

Graceful Request Retries in Ruby Applications — инструменты и подходы для обработки запросов, связанных с внешними сервисами.

Инструменты

Inkblot — инструмент для манипуляции изображением на e-Paper дисплеях.

childprocess — гем, позволяющий управлять дочерними процессами.

regexp_parser — набор методов для работы с регулярными выражениями.

comma — DSL для генерации CSV-файлов.

gem_updater — обновление зависимостей с добавлением информации из changelog.

simple_discussion — Rails Engine, использующийся в GoRails, предоставляет функциональность форума.

Подкасты

Ruby Rogues

RR 461: Rethinking the View Layer with Components with Joel Hawksley

RR 462: Graphiti, REST, and GraphQL with Lee Richmond

RR 463: Can We Fix What We Can’t See? with James Thompson

RWPod

21-й выпуск 8 сезона — VCR 6.0.0, Snowpack 2.0, Brotli and Gzip Compression, AudioMass, AutoPilot, Dynamoid, Rough Notation

22-й выпуск 8 сезона — The RuboCop Name Drama Redux, Some Reminders of Good GitHub Etiquette, Galaaz, Cfndsl, Grid.js

23-й выпуск 8 сезона — DHH Interview, ES Logical assignment operators, TestBench, MyDrive, Jsgrids, Johnny-Five

24-й выпуск 8 сезона — Rails 6.0.3.2, Puppeteer 4.0.0, GitHub Super Linter, GitHub::DS, Code Notes, Inkblot, Docx

25-й выпуск 8 сезона — Angular 10, TypeScript 4.0 Beta, Ruby 2.7 adds Enumerable#filter_map, Comma, Rando.js, Checkboxland

26-й выпуск 8 сезона — AnyCable 1.0, Trailblazer 2.1, React Hook Form, Rubocop::GraphQL, Caporal, Vest

А также интервью с Bozhidar Batsov.

Ruby on Rails Podcast by 5by5

321: Ruby API and Bundler with Colby Swandale

322: Rails CI Pipeline Performance with Kelly Sutton

323: Keen to Keeping Using Ruby with Nick Schwaderer

324: Rails::Engine with Vladimir Dementyev

325: Ruby Blend: Open Sourcing a Ruby Gem with Brittany Martin


Предыдущие выпуски.

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному4
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Отличный обзор, спасибо !

Підписатись на коментарі