8052
Rust programming language По всем вопросам- @haarrp @ai_machinelearning_big_data - машинное обучение @programming_books_it - бесплатные it книги @pythonl - 🐍 @ArtificialIntelligencedl - AI @datascienceiot - ml 📚 #VRHSZ
🦀 Rust Pinning без магии: `Pin`, `Unpin` и `Future::poll`
Одна из самых сложных тем в Rust - зачем вообще нужен Pin и почему некоторые значения нельзя просто перемещать в памяти.
Хороший разбор строит механизм буквально с нуля и связывает его с тем, что реально встречается в async Rust:
- как работает Pin
- что означает Unpin
- почему self-referential структуры опасны
- при чём здесь Future
- почему Future::poll принимает Pin<&mut Self>
Главная идея: некоторые значения после начала использования должны оставаться по одному адресу в памяти, иначе внутренние ссылки могут стать невалидными.
Особенно полезно тем, кто пользуется async/await, но до конца не понимает, что происходит под капотом.
https://gmcgoldr.github.io/2026/08/27/pin-in-rust.html
🔥 Большой гайд по миграции с Go на Rust
Для разработчиков переход обычно упирается не в скорость, а в гарантии корректности, runtime trade-offs и ergonomics.
Внутри подробно сравниваются:go build → cargo build go test → cargo test go vet → cargo clippy nil → Option<T> error → Result<T, E>
interfaces → traits
goroutines → async/await -race → compile-time ограничения через Send / Sync
Отдельно хорошо показано, где Rust действительно выигрывает: data races, lifetime ресурсов, typed errors, отсутствие GC-пауз и более жёсткие гарантии компилятора.
Но автор не агитирует переписывать всё подряд: для большинства backend-сервисов Go остаётся достаточно быстрым и очень удобным.
Rust имеет смысл там, где цена runtime-багов уже выше, чем цена более сложной разработки.
Есть и практический раздел про постепенную миграцию сервисов, а не «rewrite from scratch».
https://corrode.dev/learn/migration-guides/go-to-rust/
@Golang_google
🦀 Rustler Weekly.
Главная новость: Microsoft перевела Rust в категорию Tier-1 - на один уровень с C++, C# и TypeScript. Новый backend связывает rustc с MSVC, поддерживает оптимизации между Rust и C++, усиленную защиту бинарников и hotpatch. Rust уже используется более чем в 100 внутренних репозиториях Microsoft.
Ещё один показательный случай: один lint в Clippy съедал до 25% времени работы. После небольшой переработки он стал быстрее в 3133 раз.
Также в выпуске - сравнение семи async runtime, опрос 2300 Rust-разработчиков, разбор лучших MCU для Rust, ESP32 как SWD-программатор для STM32 и свежие вакансии.
http://rustler.in/newsletter
Ubuntu 26.10 полностью переведён на Rust Coreutils
В пакетной базе дистрибутива Ubuntu 26.10, релиз которого намечен на 15 октября, осуществлён полный переход на инструментарий uutils coreutils (Rust Coreutils), написанный на языке Rust. Утилиты из состава Rust Coreutils полностью заменили все компоненты пакета GNU Coreutils, включая утилиты cp, mv и rm, которые в Ubuntu 26.04 поставлялись в варианте из GNU Coreutils.
Подробнее:
https://opennet.ru/66274/
https://opennet.me/66274/
🔥 Хочешь расти в IT быстрее остальных? Перестань учиться в одиночку
Можно годами смотреть курсы, читать документацию и всё равно топтаться на месте.
А можно попасть в правильное окружение, где каждый день обсуждают новые инструменты, вакансии, реальные кейсы, ошибки и то, что уже завтра станет стандартом.
Здесь собраны папки и каналы по разным направлениям IT, чтобы ты быстрее находил нужных людей, идеи и полезный контент - без бесконечного поиска.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: /channel/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_ci
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: /channel/gamedev
Haskell: t.me/haskell_tg
Собеседования и карьера:
DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview
Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: /channel/addlist/2Ls-snqEeytkMDgy
Папка Frontend: /channel/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: /channel/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: /channel/addlist/BkskQciUW_FhNjEy
Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg
Подпишись и сохрани, здесь регулярно появляются новые подборки, инструменты и материалы, которые реально помогают расти быстрее.
👣 Rust стал одним из основных языков разработки внутри Microsoft - наряду с C++, C# и TypeScript.
Компания обеспечила ему полноценную поддержку: от инструментов для программистов до проверок безопасности и выпуска готового ПО.
Для Rust также подготовили общий с C++ механизм генерации машинного кода в Windows. Это позволяет использовать возможности MSVC для оптимизации, отладки и защиты программ на обоих языках.
С новой системой уже собираются более 100 репозиториев Microsoft. Сам Rust применяется в драйверах, ядре, микросервисах и приложениях.
https://rustfoundation.org/media/guest-post-rust-is-tier-1-language-at-microsoft/
🌀 upmd превращает обычный Markdown в исполняемый workflow
Можно держать инструкции, команды, зависимости и вывод терминала прямо в одном `.md`-файле, а code blocks запускать как связанные между собой задачи.
Получается что-то между документацией, task runner и живым dev-ноутбуком без отдельного YAML-конфига.
Проект написан на Rust и построен на Ratatui.
⭐ GitHub: https://github.com/rezigned/upmd
Rust 1.98.1 вышел всего с одним исправлением, но довольно неприятным.
В Rust 1.98.0 нашли ошибку компилятора при генерации vtable для trait objects.
В некоторых случаях rustc мог поставить null вместо указателя на функцию внутри vtable. Результат - undefined behavior в уже скомпилированной программе. На практике это могло закончиться обычным segfault, но формально последствия UB ничем не ограничены.
Если уже обновились до Rust 1.98.0, лучше сразу поставить 1.98.1:
rustup update stable
Этот Rust-код может выглядеть как издевательство над глазами.
Но для AI-агентов в нём есть неожиданное преимущество: он очень информационно плотный.
По одному объявлению типа агент сразу видит:
- какие итераторы используются
- какие lifetime связаны между собой
- какие преобразования происходят
- какие типы проходят через Map, Take и FlatMap
- что возвращается на каждом уровне
Меньше необходимости постоянно искать определения по проекту, открывать другие файлы и восстанавливать контекст по кускам.
Для человека такой тип выглядит страшно.
Для coding-агента это почти готовая карта того, как работает структура.
Не нравится - просто закрой глаза и дай агенту прочитать Rust за тебя.
🦀 Кто-то скачал вообще все build.rs с crates.io и собрал инструмент для случайного просмотра скриптов.
Зачем: после свежей supply chain-атаки автор решил посмотреть, что build.rs реально делает в дикой природе.
Нашлось много интересного:
* прокидывание git commit hash в env
* cfg-алиасы
* linker directives
* codegen из protobuf/OpenAPI/Excel
* скачивание внешних артефактов, иногда без проверки хеша
Самая сильная часть - предложения для Cargo: стандартный VCS info, artifact-dependencies для фиксированных и проверяемых загрузок и отдельный режим для codegen-defined crates.
https://github.com/guineawheek/build-rs-gacha
#Cargo #SupplyChainSecurity #BuildSystems
Учебный проект на Rust дорос до Apache Top-Level Project 🦀
Apache Iggy 19 августа официально вышел из Apache Incubator и получил статус Top-Level Project.
История началась в марте 2023 года. Пётр Ганкевич хотел разобраться, как устроен message streaming изнутри, и заодно нормально выучить Rust.
Первоначальный план - сделать простой append-only log server примерно за три недели.
В итоге получилась полноценная streaming-платформа:
- Rust
- thread-per-core архитектура
- io_uring для дискового и сетевого I/O
- Viewstamped Replication для consensus
- P99 latency в единицах миллисекунд
За время в Apache Incubator проект вырос до:
- 4500+ GitHub stars
- 120+ contributors
- около 3000 pull requests
- 500K+ загрузок
Отдельно интересна история с open source. Команда передала исходный код Apache Software Foundation, чтобы будущее проекта не зависело от одного человека или одной компании.
Дальше в планах - clustering через VSR и Kafka protocol gateway, чтобы существующие приложения могли переходить на Iggy без большого переписывания.
Название Iggy, кстати, происходит от Italian Greyhound - маленькой, но очень быстрой породы собак.
https://iggy.apache.org/blogs/2026/08/24/apache-iggy-top-level-project-tlp-graduation
#RustLang #OpenSource #DataEngineering #Streaming
@rust_code
🦀 Rust target-директории становятся заметно меньше
Cargo тестирует в nightly новый подход, который сокращает дублирование метаданных в build-артефактах.
По результатам тестов размер target удалось уменьшить до 33%.
Особенно полезно для больших проектов и CI, где артефакты сборки быстро разрастаются.
Подробнее:
https://blog.rust-lang.org/inside-rust/2026/08/18/reducing-target-dir-size-on-nightly/
Give me liberty or give me ArrayIndexOutOfBoundsException
Читать полностью…
Что произошло в Rust за неделю 🦀
Неделя получилась очень насыщенной.
Главное:
— В crates.io произошла серьёзная supply-chain атака: были скомпрометированы arrayref, internment и append-only-vec. Вредоносные релизы тянули typosquatted-зависимость, которая запускала payload прямо во время сборки.
— Meta в этом году написала больше Rust-кода, чем за предыдущие девять лет вместе взятые.
— Rust активно двигается в GPU: новый research-проект переносит ownership/type safety в GPU-программирование через rustc и LLVM, при этом производительность уже близка к CUDA/HIP.
— Zed добавил self-hosted Sweep Next Edit модели через OpenAI-compatible interface.
— Экспериментальный Rust backend для JVM уже проходит больше 99% официальных Rust-тестов и поддерживает async/await, потоки, сеть и Java interoperability.
— Появляется всё больше coding-agent проектов на Rust: Waku, Jcode, Rustwright, FEDERaiDE и другие.
— Canonical вместе с University of Bristol исследует автоматический перевод больших C-проектов в Rust с помощью LLM, program analysis, fuzzing и formal methods. В качестве кейсов — AppArmor и snap-confine.
Rust всё сильнее выходит за рамки «безопасного системного языка» и превращается в платформу для AI tooling, GPU, JVM и автоматической модернизации legacy-кода.
🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку
Окружение решает больше, чем кажется.
Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: /channel/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/books_englishhh
C++: t.me/cpluspluc
C#: t.me/csharp_1001_notes
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: /channel/gamedev
Haskell: t.me/haskell_tg
Собеседования и карьера:
DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview
Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: /channel/addlist/2Ls-snqEeytkMDgy
Папка Frontend: /channel/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: /channel/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: /channel/addlist/BkskQciUW_FhNjEy
Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg
Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
Участвуй во всероссийском ИТ-чемпионате МТС True Tech Champ 2026 c призовой фондом 10 250 000 рублей.
Если тебе нравятся алгоритмы, структуры данных и задачи на чистую логику — участвуй в алгоритмическом треке с индивидуальным зачетом.
Решай задачи разного уровня сложности: от базовых до тех, что проверяют скорость мышления и умение оптимизировать решения за ограниченное время.
В финале лучшие 120 участников алгоритмического трека сразятся в лайв-кодинге за шесть призовых мест и 2 750 000 рублей. Всех финалистов ждут:
— Лимитированный мерч;
— Сертификаты об участии;
— Масштабное мероприятие с выступлениями хэдлайнеров и фестивальными активностями.
Успей зарегистрироваться и пройти отборочный этап до 27 сентября.
Erid: 2VSb5xSd2i6
🔥 LeetCode прямо в терминале, без браузераleetrs — TUI-клиент для LeetCode, в котором можно искать задачи, открывать их, писать решения, запускать тесты и отправлять код на проверку прямо из терминала.
Есть fuzzy search, интеграция с Neovim, запуск тест-кейсов и submit на LeetCode.
Проект написан на Rust и использует ratatui.
GitHub: github.com/shadowmkj/leetrs
⚡️ Одинаковый async/await - разное поведение программы
Исследователи Brown University сравнили семь реализаций асинхронности: JavaScript, C#, Swift, Tokio, Smol, Asyncio и Trio. Ни одна пара не показала полностью одинаковую семантику.
В простом 12-строчном примере функция запускает фоновую запись в лог и завершает работу. Результат зависит от среды:
* JavaScript: AC
* C#: C
* Tokio: ACB
* Swift: AC
* Trio: ABC
Авторы выделили девять параметров, влияющих на выполнение: ленивость, гарантии приостановки, время жизни задачи, сила ссылок, уничтожение, передача исключений, обработка отмены, её направление и сохранение задачи.
Особенности Rust:
* вызов async fn только создаёт Future - выполнение начинается после опроса через runtime
* задача не получает внутренний сигнал отмены, как в Swift или Python с Trio
Одинаковый синтаксис скрывает разные правила запуска, отмены и завершения задач.
http://cel.cs.brown.edu/blog/design-space-async-await
Rust-компилятор случайно замедлил WebAssembly-интерпретатор на 50% - и поиск этой причины стал главным ускорением Wasmi 2.0.
Wasmi 2.0 вышел сегодня и теперь работает примерно в 2,2 раза быстрее версии 1.0. Его используют Typst, Zellij, Stellar Soroban и Ripple.
Во время бенчмарков разработчик заметил, что другой интерпретатор, Stitch, потерял около 30% скорости между Rust 1.91 и 1.92.
Причина оказалась в MIR-оптимизации, которую Rust 1.92 включил по умолчанию. Она объединила два отдельных пути dispatch в одну точку ветвления.
Обычно такая оптимизация полезна. Но здесь она сломала предсказание переходов CPU: вместо двух веток с понятной историей процессор получил одну с перемешанным поведением.
После исправления Stitch вернул скорость. Потом ту же проблему нашли и в Wasmi.
Результат: CoreMark вырос примерно с 2800 до более 4200.
Что ещё появилось в Wasmi 2.0:
- accumulator registers, чтобы чаще держать операнды прямо в регистрах CPU
- lock-free карта функций без лишних lookup при вызовах
- SIMD без прежнего штрафа в 5-10% просто за факт включения
Очень показательный случай, когда «оптимизация» компилятора делает код медленнее, а реальная причина лежит уже на уровне branch predictor процессора.
http://wasmi-labs.github.io/blog/posts/wasmi-v2.0
🦀 Rust для game hacking: внешний ESP и overlay-интерфейсы
Вышла 5-я глава курса по Rust Game Hacking.
Разбирают:
- прозрачные overlay-окна поверх игры
- модульный UI через closures
- асинхронное отслеживание положения и размера окна
- архитектуру внешнего ESP без внедрения интерфейса прямо в игровой процесс
Полезный материал для тех, кто изучает Rust, low-level UI и работу с окнами в реальном времени.
https://guidedhacking.com/threads/rust-external-esp-rgh105.21347/
⚡️ Интерактивные flowcharts прямо в терминалеrataflow — open source-библиотека на Rust для создания node-based интерфейсов прямо в TUI.
Поддерживает:
— перетаскивание нод
— соединения между блоками
— pan и zoom
— автоматические layouts
— интерактивное управление
Проект построен поверх Ratatui, так что полноценный визуальный редактор может работать вообще без браузера и GUI.
Live demo: https://rataflow.furkankly.dev
GitHub: https://github.com/furkankly/rataflow
🦀 Анонс rustup 1.29.1
Главное:
- rustup update теперь проверяет обновления параллельно
- несколько компонентов через rustup component add устанавливаются одновременно
- rustup doc --serve поднимает локальный HTTP-сервер с документацией
- добавлена официальная поддержка aarch64-pc-windows-gnullvm
- исправлены проблемы установки на Windows
- отменённые установки больше не оставляют неожиданные файлы на диске
- термин target triple заменили на target tuple
Обновиться:rustup self update
или обычным:rustup update
https://blog.rust-lang.org/2026/09/01/Rustup-1.29.1/
⚡️ MongrelDB-V - клиент для MongrelDB на языке V.
Сам MongrelDB - open-source колоночная база на Rust с довольно необычным набором возможностей:
- SQL через DataFusion
- vector search и ANN
- full-text search
- MVCC
- WAL
- replication и CDC
- шифрование AES-256-GCM
- bitmap, MinHash, learned-range и другие индексы
- встроенный и серверный режимы
MongrelDB-V позволяет работать с этой базой из V через HTTP-клиент. Устанавливается обычной командой v install.
Интересный проект для тех, кто хочет попробовать V не только для небольших CLI-утилит, но и для работы с SQL, поиском и AI-native retrieval.
https://github.com/visorcraft/MongrelDB-V
🦀 Маленькая команда из Нидерландов сейчас меняет сам Rust изнутри.
Hexcat публикует ежемесячные отчёты о работе над Rust compiler и фактически занимается развитием ядра языка вместе с официальным сообществом.
В последних обновлениях команда работает над тем, что редко попадает в новости, но напрямую влияет на будущее Rust:
⚡ новый trait solver, который должен улучшить обработку типов и приблизить стабилизацию новых возможностей;
⚡ переработка системы lifetime и region constraints;
⚡ развитие const generics;
⚡ улучшения rustc, документации и инфраструктуры вокруг компилятора.
Самое интересное - Hexcat не просто пишет библиотеки. Их инженеры работают с самим компилятором, системой типов и стандартной библиотекой Rust. Среди их клиентов и спонсоров - крупные технологические компании, включая Amazon и Google.
Пока весь мир обсуждает новые языки для AI, команды вроде Hexcat делают фундамент: быстрее компиляция, мощнее типовая система и более надёжный Rust для системного программирования будущего.
Маленькая команда. Огромное влияние на один из самых важных языков современности. 🦀
https://hexcat.nl/updates/
🦀 Rust: всегда ли нужен async?
Интересный разбор MCP-сервера для rust-analyzer, который сделали вообще без Tokio.
Вместо async runtime:
- обычный stdio для 1:1 взаимодействия
- всего 3 системных потока
- холодный старт меньше 2 мс
- предсказуемое завершение без сложного async shutdown
Хороший пример того, что async в Rust нужен не везде. Для локального MCP-сервера с простым вводом-выводом обычные потоки могут быть проще, быстрее и надёжнее.
https://developerlife.com/2026/08/22/to-async-or-not-to-async-rust-mcp-server/
🦀 Один TUI, чтобы управлять всем локальным web-стеком.
Reeve - менеджер localhost-окружения для разработки, который собирает привычные dev-инструменты в одном терминальном интерфейсе.
Что умеет:
- переключать версии PHP;
- управлять Caddy, Apache и nginx;
- работать с базами данных;
- настраивать локальный SSL и DNS;
- управлять parked sites;
- смотреть live traffic;
- держать весь локальный стек под рукой без десятка отдельных команд.
Проект написан на Rust и использует Ratatui для интерфейса.
Для тех, кто устал вручную переключаться между nginx, PHP, базой, hosts и сертификатами — выглядит очень удобно.
GitHub:
https://github.com/yetidevworks/reeve
#Rust #DevTools #TUI #WebDevelopment #OpenSource
Rust, который наконец становится понятным 🦀
Давно хочешь выучить Rust, но ownership, borrowing и lifetimes выглядят как отдельный вид боли?
Этот курс проведёт тебя с самого начала до уровня, где ты уже пишешь реальные системные и сетевые программы.
Ты разберёшь:
Ownership → Borrowing → ошибки → коллекции → Generics → Traits → модули → тесты → сетевой код
Никакого бесконечного чтения документации. После каждого урока ты сразу пишешь код, проходишь тесты и решаешь задачу с автопроверкой.
🔥 Rust с нуля
🔥 5–6 часов в неделю
🔥 Практика после каждого урока
🔥 Подойдёт после Python, JavaScript, Java и других языков
🔥 Можно начать сразу
В конце у тебя будет понимание Rust, с которым уже можно писать быстрые backend-сервисы, сетевые приложения и системные утилиты, а не смотреть на borrow checker как на врага.
Пора добавить Rust в свой стек. Начинай курс и пиши первый код уже сегодня: https://stepik.org/a/294885/
Автор `uv` пришёл в OpenAI и сразу ускорил запуск Codex CLI примерно в 25 раз
Астрэл-гуру Rust, стоящий за одним из самых быстрых Python-инструментов uv, после присоединения к OpenAI взялся за производительность Codex CLI.
Результат - время холодного старта сократилось примерно в 25 раз.
На практике разница ощущается сразу: Codex теперь открывается практически мгновенно и субъективно стартует даже быстрее Pi и Claude Code.
Если CLI запускается десятки раз в день, даже несколько сотен миллисекунд быстро превращаются в раздражение.
https://x.com/Machinelearrn/status/2091103150014935526
@rust_code
Вышел Rust 1.98. Но больше релиза сегодня обсуждают взлом популярного crate
Rust 1.98 уже доступен в stable. Среди заметных изменений - новые algebraic_* методы для f32/f64, которые разрешают более агрессивные оптимизации вычислений, и быстрый format_into для форматирования целых чисел без лишних аллокаций.
Но параллельно в экосистеме произошёл серьёзный supply-chain инцидент.
Были скомпрометированы arrayref 0.3.10 и append-only-vec 0.1.9. В них добавили зависимость proc-macro1, которая во время сборки скачивала и запускала удалённый бинарник на машине разработчика. То есть для заражения было достаточно просто собрать проект с вредоносной версией зависимости.
Особенно неприятен масштаб: arrayref имеет около 245 млн загрузок за всё время, а пострадавшая версия успела попасть в одну из самых популярных цепочек зависимостей Rust. Вредоносные версии уже удалены с crates.io.
Если сегодня собирали Rust-проекты, стоит проверить Cargo.lock: опасна именно arrayref 0.3.10, тогда как 0.3.9 и более ранние версии считаются чистыми.
Подробнее: https://opennet.ru/66108/