Ruby Digest #87. Вихід Ruby 3.4.4, оновлення гемів, інструменти для продуктивності та анонси Rails World 2025

Вітання, Ruby-спільното!

Ми підготували для вас свіжу порцію новин: новий Ruby 3.4.4, гучні оновлення гемів, нові обличчя Rails World 2025, статті про продуктивність Ruby-застосунків та добірку корисних інструментів.

Новини

🔸 Ruby 3.4.4 Released — незначне оновлення з виправленнями помилок та покращеннями стабільності, рекомендоване для всіх, хто використовує гілку 3.4.x.

🔸 3.6.9 Released — виправлення помилок і невеликі покращення, зокрема для інтеграції з Bundler, а також стабільність роботи з новими версіями Ruby.

Корисне

🔸 Shopify / roast — новий інструмент для виявлення «гарячих точок» у Ruby-коді з фокусом на зниження споживання CPU та оптимізацію продуктивності.

🔸 rubygems / rubygems — RubyGems отримав оптимізації швидкодії, підтримку Ruby 3.5.0-preview1 та низку виправлень для bundler і lockfile.

🔸 flavorjones / tailwindcss-ruby — покращення сумісності та невеликі виправлення у популярному гемі для інтеграції TailwindCSS із Ruby on Rails.

🔸 ViewComponent / view_component — нове альфа-оновлення з покращеннями API на шляху до ViewComponent 4.0.

🔸 stripe / stripe-ruby — додано підтримку нових API-версій Stripe, покращено обробку помилок і розширено можливості SDK для нових фінансових продуктів.

🔸 maxim / tiny_mcp — невелика бібліотека для створення та локального запуску інструментів для AI-асистентів за допомогою Ruby.

🔸 AlexB52 / retest — покращено підтримку RSpec і Minitest, оптимізовано спостереження за змінами файлів для швидшого тестового циклу.

🔸 ankane / pghero — додано сумісність із новими версіями PostgreSQL, удосконалено візуалізацію запитів і оптимізовано збір метрик для великих баз даних.

🔸 Announcing a new IDE for PostgreSQL in VS Code from Microsoft — Microsoft представила нове розширення для VS Code — зручне середовище розробки для PostgreSQL, яке може стати у пригоді Rails-розробникам.

🔸 Rails World 2025 speaker lineup, deprecations, doc updates and more! — офіційна добірка змін у Rails: нові депрекейшени, вдосконалення документації, фікси та плани на майбутні релізи.

Цікаве

🔸 Meet the Rails World 2025 speakers — офіційно оприлюднено список доповідачів цьогорічної конференції, серед яких провідні учасники спільноти та творці Rails.

🔸 Itsi — новий мінімалістичний вебзастосунок для обміну файлами, створений на Ruby on Rails із використанням Hotwire.

🔸 Give it time — роздуми про створення якісного програмного забезпечення через поступовість, терпіння та зростання разом із проєктом — від творця Ruby-сервісу Keygen.

Статті й туторіали

🔸 Inline RBS comments support for Sorbet — огляд того, як Sorbet починає підтримувати RBS-типи, що відкриває шлях до кращої сумісності між інструментами типізації у Ruby.

🔸 Creating Beautiful Charts with JRuby and JFreeChart — інструкція, як створювати візуалізації за допомогою JRuby та бібліотеки JFreeChart — міст між Ruby та Java для побудови діаграм.

🔸 Turbo Drive, Frames, Streams, Morph? What to use?! — короткий і візуально зрозумілий гайд по ключових частинах Hotwire — коли використовувати Turbo Drive, Frame, Stream чи Morph.

🔸 Setting Up Rails with Dev Containers — практичний гайд, як налаштувати Dev Containers у VSCode для комфортної розробки Rails-застосунків у відокремленому середовищі.

🔸 Part 1: How We Fell Out of Love with Next.js and Back in Love with Ruby on Rails & Inertia.js — команда Hardcover ділиться досвідом переходу з Next.js назад на Rails — з акцентом на продуктивність, зручність і використання Inertia.js.

🔸 Rails Controller Callback Order With Concerns — детальне пояснення, як визначається порядок виклику callbacks у Rails-контролерах, особливо при використанні concerns.

🔸 How to get composite keys to play with Rails view helpers — пояснення, як змусити складені ключі коректно працювати з Rails-хелперами — практичне рішення для нестандартних моделей.

🔸 Managing PostgreSQL table partitioning in Ruby — розбирають інструменти для зручного керування PostgreSQL-партиціями у Ruby-застосунках — з простим DSL та активною підтримкою.

🔸 It’s TRUE, SQL Supports Booleans — короткий технічний допис про особливості роботи з булевими типами в SQL та як це впливає на використання їх у Rails-проєктах.

🔸 Enumerable’s loveliness — короткий розбір, як розв’язати класичну задачу про суму непарних чисел у Ruby з чистим і лаконічним кодом.

🔸 RubyLLM 1.3.0: Contexts, Local Models, and the End of Manual Model Tracking — оновлена версія RubyLLM додає підтримку OpenAI JSON mode, Anthropic Claude 3.5, а також новий DSL для швидкої інтеграції LLM у Ruby-проєкти.

🔸 ZJIT has been merged into Ruby — огляд MergeJIT — експеримент із поєднання двох JIT-компіляторів для більшої продуктивності та простішої підтримки.

🔸 Sign in with Apple for Rails apps — покроковий гайд із прикладами, як реалізувати авторизацію через Apple ID у Ruby on Rails — просто, без зайвих бібліотек.

🔸 Coding agent in 94 lines of Ruby — автор ділиться досвідом побудови простого агента з LLM-інтеграцією, використовуючи лише Ruby без складних фреймворків.

🔸 How `.excluding` works in Rails — коротке пояснення, як метод excluding фільтрує об’єкти в ActiveRecord-запитах і чому це зручно.

🔸 Modern Rails Rendering Techniques — порівняння можливостей Hotwire-підходів до рендерингу у Rails — що обрати для різних сценаріїв і як уникнути типових помилок.

🔸 Your Rails App Isn’t Slow—Your Database Is — розбір поширених причин повільної роботи застосунку через неоптимізовані SQL-запити та поради з аналізу продуктивності бази даних.

🔸 Building AI Applications in Ruby — огляд підходів, інструментів і гемів для побудови Ruby-застосунків з підтримкою AI, з акцентом на LLM і інтеграцію сторонніх сервісів.

🔸 How to Build a Twitter Clone with Rails 8 Inertia and React — покроковий гайд зі створення повноцінного SPA-застосунку на Rails з Inertia.js і React — чудовий приклад сучасного стека.

🔸 Natural Language Parser for Recurring Events using Stimulus — інструкція, як поєднати OpenAI API з Hotwire, Stimulus і Tailwind для обробки запитів природною мовою у Rails-застосунку.

🔸 Let Rails Help You — нагадування про те, чому варто використовувати вбудовані можливості Rails замість зайвого ускладнення — про силу конвенцій, генераторів і готових рішень.

🔸 Set Up Tracing for a Ruby on Rails Application in AppSignal — покроковий гайд з інтеграції трейсингу в Ruby on Rails з використанням AppSignal — моніторинг продуктивності, сповіщення та аналіз запитів.

🔸 Fast Allocations in Ruby 3.5 — огляд оптимізацій у Ruby 3.5, які прискорюють виділення об’єктів у пам’яті та покращують загальну продуктивність застосунків.

🔸 Objects that lie — роздуми про шкідливість об’єктів, які приховують свій справжній стан або поведінку, та як уникати цього антипатерну у Ruby-коді.

🔸 Building intelligent applications with Rails — гайд, як інтегрувати великі мовні моделі в Ruby on Rails-застосунки для створення розумніших функцій і персоналізованого досвіду.

Відео

Покрокове відео про те, як розгорнути Ruby on Rails застосунок на Fly.io з використанням Docker та налаштуванням CI/CD через GitHub Actions:

Подкасти

Drifting Ruby

🔹 Scaffold Templates

🔹 LLM Insights

🔹 Kamal Maintenance Mode

🔹 Printing

Remote Ruby

🔹 Why is the Test Suite Hanging?!

🔹 Gems, Jokes, and JavaScript

🔹 The Frustrations of React and the Power of Turbo

🔹 Bites and Bytes — Cheesesteaks and One Month Rails

The Ruby on Rails Podcast

🔹 Episode 536: Better With Becky with Becky Searls

🔹 Episode 537: Userlist with Benedikt Deicke

RWpod

Для гарного настрою





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

👍ПодобаєтьсяСподобалось4
До обраногоВ обраному0
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

Дякую, Дмитро Чекалкін, що ділитеся із нами інформацією зі світу Рубі.
Завжди відкриваю для себе щось новеньке у цих підбірках.

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