🦀 Кто-то скачал вообще все
Зачем: после свежей supply chain-атаки автор решил посмотреть, что
Нашлось много интересного:
* прокидывание git commit hash в env
* cfg-алиасы
* linker directives
* codegen из protobuf/OpenAPI/Excel
* скачивание внешних артефактов, иногда без проверки хеша
Самая сильная часть - предложения для Cargo: стандартный VCS info,
https://github.com/guineawheek/build-rs-gacha
#Cargo #SupplyChainSecurity #BuildSystems
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
👍16❤2🔥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 не только для небольших CLI-утилит, но и для работы с SQL, поиском и AI-native retrieval.
https://github.com/visorcraft/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
❤6🔥5🥴2👍1
Этот Rust-код может выглядеть как издевательство над глазами.
Но для AI-агентов в нём есть неожиданное преимущество: он очень информационно плотный.
По одному объявлению типа агент сразу видит:
- какие итераторы используются
- какие lifetime связаны между собой
- какие преобразования происходят
- какие типы проходят через
- что возвращается на каждом уровне
Меньше необходимости постоянно искать определения по проекту, открывать другие файлы и восстанавливать контекст по кускам.
Для человека такой тип выглядит страшно.
Для coding-агента это почти готовая карта того, как работает структура.
Не нравится - просто закрой глаза и дай агенту прочитать Rust за тебя.
Но для AI-агентов в нём есть неожиданное преимущество: он очень информационно плотный.
По одному объявлению типа агент сразу видит:
- какие итераторы используются
- какие lifetime связаны между собой
- какие преобразования происходят
- какие типы проходят через
Map, Take и FlatMap- что возвращается на каждом уровне
Меньше необходимости постоянно искать определения по проекту, открывать другие файлы и восстанавливать контекст по кускам.
Для человека такой тип выглядит страшно.
Для coding-агента это почти готовая карта того, как работает структура.
Не нравится - просто закрой глаза и дай агенту прочитать Rust за тебя.
🙈31😁14❤9👍8🥰3😢3😐3🖕1
🦀 Анонс rustup 1.29.1
Главное:
-
- несколько компонентов через
-
- добавлена официальная поддержка
- исправлены проблемы установки на Windows
- отменённые установки больше не оставляют неожиданные файлы на диске
- термин
Обновиться:
или обычным:
https://blog.rust-lang.org/2026/09/01/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 updatehttps://blog.rust-lang.org/2026/09/01/Rustup-1.29.1/
❤14👍6🔥5
Rust 1.98.1 вышел всего с одним исправлением, но довольно неприятным.
В Rust 1.98.0 нашли ошибку компилятора при генерации vtable для trait objects.
В некоторых случаях
Если уже обновились до Rust 1.98.0, лучше сразу поставить 1.98.1:
Новых возможностей в релизе нет - это именно срочный point release с исправлением miscompilation.
https://blog.rust-lang.org/2026/09/03/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
Новых возможностей в релизе нет - это именно срочный point release с исправлением miscompilation.
https://blog.rust-lang.org/2026/09/03/Rust-1.98.1/
👍26🔥9🤪6❤3😡2🤔1
rataflow — open source-библиотека на Rust для создания node-based интерфейсов прямо в TUI.Поддерживает:
— перетаскивание нод
— соединения между блоками
— pan и zoom
— автоматические layouts
— интерактивное управление
Проект построен поверх
Ratatui, так что полноценный визуальный редактор может работать вообще без браузера и GUI.Live demo: https://rataflow.furkankly.dev
GitHub: https://github.com/furkankly/rataflow
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤2🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
🌀 upmd превращает обычный Markdown в исполняемый workflow
Можно держать инструкции, команды, зависимости и вывод терминала прямо в одном `.md`-файле, а code blocks запускать как связанные между собой задачи.
Получается что-то между документацией, task runner и живым dev-ноутбуком без отдельного YAML-конфига.
Проект написан на Rust и построен на Ratatui.
⭐ GitHub: https://github.com/rezigned/upmd
Можно держать инструкции, команды, зависимости и вывод терминала прямо в одном `.md`-файле, а code blocks запускать как связанные между собой задачи.
Получается что-то между документацией, task runner и живым dev-ноутбуком без отдельного YAML-конфига.
Проект написан на Rust и построен на Ratatui.
⭐ GitHub: https://github.com/rezigned/upmd
👍18❤10🔥7💘1
🦀 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/
Вышла 5-я глава курса по Rust Game Hacking.
Разбирают:
- прозрачные overlay-окна поверх игры
- модульный UI через closures
- асинхронное отслеживание положения и размера окна
- архитектуру внешнего ESP без внедрения интерфейса прямо в игровой процесс
Полезный материал для тех, кто изучает Rust, low-level UI и работу с окнами в реальном времени.
https://guidedhacking.com/threads/rust-external-esp-rgh105.21347/
🔥25❤7👍6
Компания обеспечила ему полноценную поддержку: от инструментов для программистов до проверок безопасности и выпуска готового ПО.
Для Rust также подготовили общий с C++ механизм генерации машинного кода в Windows. Это позволяет использовать возможности MSVC для оптимизации, отладки и защиты программ на обоих языках.
С новой системой уже собираются более 100 репозиториев Microsoft. Сам Rust применяется в драйверах, ядре, микросервисах и приложениях.
https://rustfoundation.org/media/guest-post-rust-is-tier-1-language-at-microsoft/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤32🔥17👍9
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
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
Wasmi Labs
Wasmi 2.0 - Engineering of the Fastest Wasm Interpreters
The optimizations behind Wasmi 2.0, and how they compare to Wasm3 and Stitch.
❤29😱9👍7🥰2
🔥 Хочешь расти в 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: https://t.me/+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: https://t.me/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: https://t.me/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://t.me/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
Подпишись и сохрани, здесь регулярно появляются новые подборки, инструменты и материалы, которые реально помогают расти быстрее.
Можно годами смотреть курсы, читать документацию и всё равно топтаться на месте.
А можно попасть в правильное окружение, где каждый день обсуждают новые инструменты, вакансии, реальные кейсы, ошибки и то, что уже завтра станет стандартом.
Здесь собраны папки и каналы по разным направлениям IT, чтобы ты быстрее находил нужных людей, идеи и полезный контент - без бесконечного поиска.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: https://t.me/+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: https://t.me/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: https://t.me/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://t.me/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
Подпишись и сохрани, здесь регулярно появляются новые подборки, инструменты и материалы, которые реально помогают расти быстрее.
❤6🥱4🤣3👍2🔥2🤪1
⚡️ Одинаковый
Исследователи Brown University сравнили семь реализаций асинхронности: JavaScript, C#, Swift, Tokio, Smol, Asyncio и Trio. Ни одна пара не показала полностью одинаковую семантику.
В простом 12-строчном примере функция запускает фоновую запись в лог и завершает работу. Результат зависит от среды:
* JavaScript:
* C#:
* Tokio:
* Swift:
* Trio:
Авторы выделили девять параметров, влияющих на выполнение: ленивость, гарантии приостановки, время жизни задачи, сила ссылок, уничтожение, передача исключений, обработка отмены, её направление и сохранение задачи.
Особенности Rust:
* вызов
* задача не получает внутренний сигнал отмены, как в Swift или Python с Trio
Одинаковый синтаксис скрывает разные правила запуска, отмены и завершения задач.
http://cel.cs.brown.edu/blog/design-space-async-await
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
❤5🔥4
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/
В пакетной базе дистрибутива 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/
🔥51🎉16👍8💊6🤣3🏆3❤2
🔥 LeetCode прямо в терминале, без браузера
Есть fuzzy search, интеграция с Neovim, запуск тест-кейсов и submit на LeetCode.
Проект написан на Rust и использует
GitHub:
leetrs — TUI-клиент для LeetCode, в котором можно искать задачи, открывать их, писать решения, запускать тесты и отправлять код на проверку прямо из терминала.Есть fuzzy search, интеграция с Neovim, запуск тест-кейсов и submit на LeetCode.
Проект написан на Rust и использует
ratatui.GitHub:
github.com/shadowmkj/leetrs💘20🔥16👍3