Самые важные обновления в мире технологий часто проходят без лишнего шума. Без громких презентаций, без обещаний «революции». Именно таким получился релиз Rust 1.93.0 — технический и при этом крайне показательный для того, куда движется язык и вся его экосистема.
Rust остаётся одним из немногих языков, где развитие идёт не ради маркетинга, а ради надёжности. И в версии 1.93 это чувствуется особенно хорошо — обновление выглядит скромно на бумаге, но на практике закрывает сразу несколько давних узких мест.
Одно из ключевых изменений — обновление встроенной библиотеки musl до версии 1.2.5. Для тех, кто собирает статические бинарники под Linux, это не просто цифра в списке изменений. Новая версия musl приносит улучшения DNS-резолвера и делает сетевые приложения заметно стабильнее, особенно в сложных сценариях с большими DNS-записями и рекурсивными серверами.
Правда, без последствий не обошлось. Обновление musl окончательно убирает ряд устаревших символов совместимости, на которые раньше опирались некоторые сборки. Формально это breaking change, но в сообществе Rust к нему готовились давно — соответствующие исправления в libc были выпущены ещё несколько лет назад.
На фоне разговоров о переходе крупных проектов и даже корпораций на Rust — я уже писал об этом в материале о переходе Microsoft на Rust — такие изменения выглядят логичным шагом. Язык постепенно избавляется от исторических костылей и становится более цельным.
Ещё одно важное, хотя и неочевидное нововведение, касается глобальных аллокаторов. В Rust 1.93 они теперь могут безопасно использовать thread-local storage, не рискуя попасть в проблемы повторного входа. Для обычного разработчика это почти незаметно, но для авторов низкоуровневых библиотек и runtime-решений — серьёзное упрощение архитектуры.
Также разработчики улучшили работу с inline-ассемблером. Теперь cfg-атрибуты можно применять к отдельным инструкциям внутри блока asm!, а не дублировать весь код целиком. Это небольшая деталь, но именно из таких деталей и складывается ощущение «отполированного» инструмента.
Если смотреть шире, Rust 1.93 хорошо ложится в общий тренд развития системного ПО под Linux. На фоне свежих изменений в ядре — например, в релизе Linux 6.18 — язык всё увереннее занимает нишу безопасной альтернативы классическим C и C++ там, где цена ошибки слишком высока.
Никаких громких фич, никаких резких поворотов. Просто ещё один шаг к более предсказуемой, стабильной и зрелой экосистеме. И, пожалуй, именно в этом сегодня и заключается сила Rust.
Источник: Tweakers




