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 — автор ділиться досвідом побудови простого агента з
🔸 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
🔹 Printing
Remote Ruby
🔹 Why is the Test Suite Hanging?!
🔹 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
2 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів