Пу-пу-пу, в смысле вышел #ruby 4.0.0 preview 2. Я почитал описание и не могу сказать, что увидел какие-то изменения, которые сразу вызвали у меня вопль "вау!" и желание протестировать сборку, но вот краткое саммари того, что в ней есть
- Оператор *nil больше не вызывает nil.to_a, аналогично тому, как оператор **nil не вызывает nil.to_hash.
- Логические операторы (||, &&, and, or) на начало строки теперь продолжают предыдущую строку, как при использовании текущего оператора.
- Версия Unicode обновлена до 17.0.0, а Emoji Version — до 17.0. Эти обновления применяются как к строкам, так и к регулярным выражениям.
- Set теперь является встроенным классом вместо класса со срабатыванием в стандартной библиотеке.
- IO.select теперь принимает Float::INFINITY в качестве аргумента timeout.
- Обновления стандартной библиотеки
• ostruct 0.6.1
• pstore 0.2.0
• benchmark 0.4.0
• logger 1.7.0
• rdoc 6.13.1
• irb 1.15.2
• reline 0.6.1
И еще ряд изменений. В общем - ждём полноценного релиза, чтобы потестировать и (надеюсь) поразиться очередному приросту производительности и каким-нибудь ярким фичам
- Оператор *nil больше не вызывает nil.to_a, аналогично тому, как оператор **nil не вызывает nil.to_hash.
- Логические операторы (||, &&, and, or) на начало строки теперь продолжают предыдущую строку, как при использовании текущего оператора.
- Версия Unicode обновлена до 17.0.0, а Emoji Version — до 17.0. Эти обновления применяются как к строкам, так и к регулярным выражениям.
- Set теперь является встроенным классом вместо класса со срабатыванием в стандартной библиотеке.
- IO.select теперь принимает Float::INFINITY в качестве аргумента timeout.
- Обновления стандартной библиотеки
• ostruct 0.6.1
• pstore 0.2.0
• benchmark 0.4.0
• logger 1.7.0
• rdoc 6.13.1
• irb 1.15.2
• reline 0.6.1
И еще ряд изменений. В общем - ждём полноценного релиза, чтобы потестировать и (надеюсь) поразиться очередному приросту производительности и каким-нибудь ярким фичам
Ruby Programming Language
Ruby 4.0.0 preview2 Released | Ruby
We are pleased to announce the release of Ruby 4.0.0-preview2. Ruby 4.0 updates its Unicode version to 17,0.0, and so on.
👍2
Вот это хороший подарок на Новый Год - вышел #ruby 4.0.0. В сообществе @pro_rb уже потестировали скорость работы, спойлер - стало побыстрее, включая работу ractor .
Ruby Programming Language
Ruby 4.0.0 Released | Ruby
We are pleased to announce the release of Ruby 4.0.0.Ruby 4.0 introduces “Ruby Box” and “ZJIT”, and adds many improvements.
🎉3🔥1
#ruby #rails поскольку гем
streamio-ffmpeg судя по всему был заброшен авторами, а мне понадобилось добавить поддержку ffmpeg в мой собственный небольшой проект, который я надеюсь скоро анонсировать, то выпустил первую версию своего гема ffmpeg_core - https://github.com/alec-c4/ffmpeg_core и буду рад любым PRам и багрепортамGitHub
GitHub - alec-c4/ffmpeg_core: Modern Ruby wrapper for FFmpeg with clean API and proper error handling.
Modern Ruby wrapper for FFmpeg with clean API and proper error handling. - alec-c4/ffmpeg_core
👍3🔥2
#ruby #rails Солнышко светит, птички поют, зайки прыгают по лужайке, а пацаны не спят ночами и релизят новые гемы. В общем, поимев немного попаболи с тем, чтобы вкрутить i18n в inertia-приложение (отдельное приключение с тем, чтобы поддерживать синхронно локали для бека и фронта + i18n-tasks постоянно ругается то на неиспользуемые ключи, то на пропущенные), я запилил гем inertia_i18n, который делает всем хорошо.
Как оно работает без магии и шаманства:
локали в config/locales раскладываются по папочкам. Всё, что для Rails — в backend, всё, что для фронта — в frontend. Что не попало ни туда ни сюда — считается общим и живёт своей жизнью.
Гем собирает всё это добро из yml в json и аккуратно подкладывает в app/frontend/locales, где его уже без сюрпризов жрёт i18next. Бэк доволен, фронт доволен, i18n-tasks жалуется, но жрёт кактус.
Как обычно — показывайте звёзды, несите PR, багрепорты принимаются без нытья, но с логами.
Как оно работает без магии и шаманства:
локали в config/locales раскладываются по папочкам. Всё, что для Rails — в backend, всё, что для фронта — в frontend. Что не попало ни туда ни сюда — считается общим и живёт своей жизнью.
config/
└── locales/
├── backend/ # Rails-specific translations
│ ├── en.yml
│ └── ru.yml
├── frontend/ # Frontend-specific translations
│ ├── common.en.yml
│ ├── pages.en.yml
│ └── pages.ru.yml
└── en.yml # Optional: shared or legacy keys
Гем собирает всё это добро из yml в json и аккуратно подкладывает в app/frontend/locales, где его уже без сюрпризов жрёт i18next. Бэк доволен, фронт доволен, i18n-tasks жалуется, но жрёт кактус.
Как обычно — показывайте звёзды, несите PR, багрепорты принимаются без нытья, но с логами.
GitHub
GitHub - alec-c4/inertia_i18n: Translation management for Inertia.js applications with Rails backend
Translation management for Inertia.js applications with Rails backend - alec-c4/inertia_i18n
👍2❤1🔥1
#opensource ще одна полезняшка для #ruby #rails моего авторства - https://github.com/alec-c4/role_fu Поскольку автор rolify судя по всему забил на проект и на текущий момент в нем 130 открытых issues и 22 зависших PR, я скреативил замену с парой новых фич - временные роли, аудит назначения ролей, (опциональные) abilities в БД и адаптеры для pundit и cancancan.
GitHub
GitHub - alec-c4/role_fu: Explicit role management gem for Ruby on Rails
Explicit role management gem for Ruby on Rails. Contribute to alec-c4/role_fu development by creating an account on GitHub.
❤2👍1
#opensource #rails #ruby в общем не буду ходить вокруг да около - еще один гем моего авторства https://github.com/alec-c4/active_record_properties Даёт возможность сохранять настройки для модели, например для User - тему, язык, таймзону, для организации - корпоративные цвета и юрисдикцию. Пользуйтесь и не благодарите меня за мою охуенность полезные проекты
GitHub
GitHub - alec-c4/active_record_properties: Type-safe properties stored in JSONB for ActiveRecord models. A modern, lightweight…
Type-safe properties stored in JSONB for ActiveRecord models. A modern, lightweight alternative to separate settings tables. - alec-c4/active_record_properties
👍4👎1
#ruby #opensource Как минимум - это забавно. Чувак сделал shell, в которой можно писать скрипты на ruby. Исходный код доступен на github, но пока что звёзд маловато, на текущий момент - 96 при 102 коммитах
RubyShell
RubyShell - The Bash for Rubyists
Shell commands as native Ruby methods. Readable syntax, real error handling, full Ruby integration.
#macos #ruby #postgres Интересный баг в PostgreSQL, который я только сейчас заметил, а его оказывается уже обсуждают вовсю в разных тикетах (раз, два, три) и блогах. Баг этот связан со стабильностью работы связки macOS Tahoe + libpq + fork, но от него падает Solid Queue. Ждём фикса либо от Apple (изменение поведения libdispatch/ObjC runtime), либо от PostgreSQL (изменение дефолта для gssencmode). Пока же используем
PGGSSENCMODE=disable в переменных окружения или gssencmode: disable в database.ymlGitHub
Solid Queue not starting on Tahoe · Issue #669 · rails/solid_queue
It's probably is my machine but I have no clue about what is happening. I've upgraded to Tahoe last week. Everything went fine, but now bin/rails solid_queue:start doesn't work anymore....
#ruby #rails еще один небольшой, но (надеюсь) полезный гем auto_decorator для тех, кто не хочет тащить в проект монстра типа draper. Минимум кода, декорирует автоматом, максимально легковесный - всё как мы любим 🙂
GitHub
GitHub - alec-c4/auto_decorator: Convention-based decorator autoloading for Rails models.
Convention-based decorator autoloading for Rails models. - alec-c4/auto_decorator
👍1🔥1
#ruby #rails Если вы хотели использовать классический инструментарий rails, но вам очень не хватало чего-то типа shadcn, то вот вам подходящий гем https://github.com/alec-c4/view_primitives
GitHub
GitHub - alec-c4/view_primitives: A shadcn/ui-inspired component library for Rails built on ViewComponent.
A shadcn/ui-inspired component library for Rails built on ViewComponent. - alec-c4/view_primitives
👍3❤2
#ruby Зачем эта штука нужна - на знаю, но хлопцы запилили приложение ActivePad, которое по факту является аналогом #rails console, но с gui и продают его за $20, мотивируя тем, что скоро цена взлетит до $30.
Activepad
Activepad - Rails scratchpad for macOS
Activepad is a macOS Rails scratchpad for running Ruby code against real app models, database records, and relations.
#ruby демо-приложение с использованием этого гема лежит рядом https://github.com/alec-c4/roistat_demo
GitHub
GitHub - alec-c4/roistat_demo: Read-only demo playground for the roistat Ruby gem
Read-only demo playground for the roistat Ruby gem - alec-c4/roistat_demo
#ruby #rails Посмотрел открывающий кейноут на rails world 2026 - если в 2025 году DHH рассказывал о нововведениях в rails, о том, какие крутые фичи подъехали в 8.1, то в 2026 он признаётся в любви к разработке с помощью #AI, о том, что английския язык - это самый лучший язык для программирования, что можно ненавидеть rust, но при этом писать на нём крутые вещи и вообще - Omarchy мржно установить на новый девайс за 9 секунд (круто, чо!)
YouTube
Rails World 2026 Opening Keynote
Join us live from Austin for the Opening Keynote of Rails World 2026 with the creator of Rails, David Heinemeier Hansson covering what's new in Rails, what's coming next, and where Rails is headed in the future.
Pre-opening chat hosted by Shopify's Andrew…
Pre-opening chat hosted by Shopify's Andrew…
👍1