🚨Фейковый Rust-пакет скачали более 7 000 раз до удаления
Он маскировался под инструмент для Ethereum, но внутри выполнял вредоносный код на Windows, macOS и Linux.
Что важно:
- Пакеты выдавали себя за обычные утилиты, но при установке начинали выполнять вредоносный код — искать приватные ключи, данные браузеров и другие чувствительные файлы.
- После обнаружения оба пакета —
- Этот случай - напоминание, что цепочки поставок (supply chain) остаются одной из главных уязвимостей: даже доверенные библиотеки могут скрывать вред.
Если ты используешь Rust и зависимости из crates.io - обязательно проверяй репутацию пакетов перед установкой. Не доверяй репозитория просто из-за названия или количества скачиваний.
https://thehackernews.com/2025/12/malicious-rust-crate-delivers-os.html
#Rust #Security #SupplyChain #DevSecOps
Он маскировался под инструмент для Ethereum, но внутри выполнял вредоносный код на Windows, macOS и Linux.
Что важно:
- Пакеты выдавали себя за обычные утилиты, но при установке начинали выполнять вредоносный код — искать приватные ключи, данные браузеров и другие чувствительные файлы.
- После обнаружения оба пакета —
faster_log и async_println — были удалены из реестра, а злоумышленники заблокированы. - Этот случай - напоминание, что цепочки поставок (supply chain) остаются одной из главных уязвимостей: даже доверенные библиотеки могут скрывать вред.
Если ты используешь Rust и зависимости из crates.io - обязательно проверяй репутацию пакетов перед установкой. Не доверяй репозитория просто из-за названия или количества скачиваний.
https://thehackernews.com/2025/12/malicious-rust-crate-delivers-os.html
#Rust #Security #SupplyChain #DevSecOps
👍20❤4🙉3🥰2🔥1🎉1🫡1
⚡️ Rust vs Python - как найти баланс между скоростью и простотой
JetBrains выпустили подробный разбор, где сравнивают Python и Rust без фанатизма — по скорости, синтаксису, памяти, экосистеме, конкурентности и даже по карьерным сценариям.
Главный вывод: Python нужен там, где важна скорость разработки и богатая экосистема, Rust, когда критична производительность, безопасность и масштабируемость. Всё чаще их используют вместе: Python для логики, Rust для самых горячих участков.
Ключевые моменты
Рост и популярность
- Python уверенно расширяет аудиторию: быстрый вход, огромная экосистема, удобство для ML, веба и автоматизации.
- Rust годами остаётся самым любимым языком разработчиков — благодаря безопасности памяти, скорости и надёжности.
Типы и управление памятью
- Python — динамическая типизация и удобный GC: легко начать, но ошибки всплывают в рантайме.
- Rust — строгая типизация, система владения и заимствований, отсутствие GC: ошибки ловятся на этапе компиляции, производительность предсказуема.
Производительность и конкурентность
- Python ограничен GIL: хорош для I/O, но CPU-параллелизм требует multiprocessing или расширений.
- Rust не имеет GIL — настоящая параллельность, «бесстрашная» конкурентность и контроль безопасности компилятором.
Экосистема
- Python — PyPI, Jupyter, зрелые фреймворки для DS/ML, веба, автоматизации.
- Rust — Cargo и crates.io, сильная база для CLI, системного софта, WebAssembly.
Комбинация Python + Rust
- Тренд — ускорять Python-проекты Rust-модулями.
- Библиотеки типа pydantic-core или Ruff показывают огромный прирост скорости.
- PyO3 делает интеграцию очень простой: Rust-код можно вызывать как обычный Python-модуль.
Карьера
- Python - широкие вакансии, огромный спрос в данных и ML.
- Rust - меньше позиций, но выше специализация в инфраструктуре, системной разработке и высоконагруженных сервисах.
Как выбирать
- Нужна скорость разработки и гибкость — Python.
- Нужна производительность и надёжность — Rust.
- Нужны и то, и другое — гибридный подход Python + Rust.
Подробный разбор - в блоге JetBrains:
https://blog.jetbrains.com/rust/2025/11/10/rust-vs-python-finding-the-right-balance-between-speed-and-simplicity/
#Rust #Python #Programming #Backend #Performance
JetBrains выпустили подробный разбор, где сравнивают Python и Rust без фанатизма — по скорости, синтаксису, памяти, экосистеме, конкурентности и даже по карьерным сценариям.
Главный вывод: Python нужен там, где важна скорость разработки и богатая экосистема, Rust, когда критична производительность, безопасность и масштабируемость. Всё чаще их используют вместе: Python для логики, Rust для самых горячих участков.
Ключевые моменты
Рост и популярность
- Python уверенно расширяет аудиторию: быстрый вход, огромная экосистема, удобство для ML, веба и автоматизации.
- Rust годами остаётся самым любимым языком разработчиков — благодаря безопасности памяти, скорости и надёжности.
Типы и управление памятью
- Python — динамическая типизация и удобный GC: легко начать, но ошибки всплывают в рантайме.
- Rust — строгая типизация, система владения и заимствований, отсутствие GC: ошибки ловятся на этапе компиляции, производительность предсказуема.
Производительность и конкурентность
- Python ограничен GIL: хорош для I/O, но CPU-параллелизм требует multiprocessing или расширений.
- Rust не имеет GIL — настоящая параллельность, «бесстрашная» конкурентность и контроль безопасности компилятором.
Экосистема
- Python — PyPI, Jupyter, зрелые фреймворки для DS/ML, веба, автоматизации.
- Rust — Cargo и crates.io, сильная база для CLI, системного софта, WebAssembly.
Комбинация Python + Rust
- Тренд — ускорять Python-проекты Rust-модулями.
- Библиотеки типа pydantic-core или Ruff показывают огромный прирост скорости.
- PyO3 делает интеграцию очень простой: Rust-код можно вызывать как обычный Python-модуль.
Карьера
- Python - широкие вакансии, огромный спрос в данных и ML.
- Rust - меньше позиций, но выше специализация в инфраструктуре, системной разработке и высоконагруженных сервисах.
Как выбирать
- Нужна скорость разработки и гибкость — Python.
- Нужна производительность и надёжность — Rust.
- Нужны и то, и другое — гибридный подход Python + Rust.
Подробный разбор - в блоге JetBrains:
https://blog.jetbrains.com/rust/2025/11/10/rust-vs-python-finding-the-right-balance-between-speed-and-simplicity/
#Rust #Python #Programming #Backend #Performance
💊36❤11👍6🥴3🥰1🗿1
🚀 Интеллектуальный маршрутизатор для AI-провайдеров
Claude Code Mux — это легкий прокси на Rust, который обеспечивает интеллектуальную маршрутизацию между несколькими AI-провайдерами. Он автоматически переключается на резервные модели, поддерживает стриминг и совместим с API Anthropic.
🚀 Основные моменты:
- Многофункциональная поддержка более 18 AI-провайдеров
- Автоматическое переключение на резервные провайдеры
- Поддержка стриминга для получения ответов в реальном времени
- Современный интерфейс управления с авто-сохранением
- Высокая производительность с минимальными накладными расходами
📌 GitHub: https://github.com/9j/claude-code-mux
#rust
Claude Code Mux — это легкий прокси на Rust, который обеспечивает интеллектуальную маршрутизацию между несколькими AI-провайдерами. Он автоматически переключается на резервные модели, поддерживает стриминг и совместим с API Anthropic.
🚀 Основные моменты:
- Многофункциональная поддержка более 18 AI-провайдеров
- Автоматическое переключение на резервные провайдеры
- Поддержка стриминга для получения ответов в реальном времени
- Современный интерфейс управления с авто-сохранением
- Высокая производительность с минимальными накладными расходами
📌 GitHub: https://github.com/9j/claude-code-mux
#rust
🔥9👍5❤4🥰1😁1🖕1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥️🚀 Moss: современный Unix-подобный ядро на Rust
Moss — это ядро, совместимое с Linux, написанное на Rust и Aarch64 ассемблере. Оно предлагает асинхронное ядро, модульную архитектуру и бинарную совместимость с приложениями Linux, поддерживая большинство команд BusyBox.
🚀Основные моменты:
- Полная поддержка архитектуры aarch64.
- Асинхронные системные вызовы для предотвращения блокировок.
- Поддержка 49 системных вызовов Linux.
- Виртуальная файловая система с асинхронными абстракциями.
- Активная разработка с планами по улучшению совместимости и сети.
📌 GitHub: https://github.com/hexagonal-sun/moss
#rust
Moss — это ядро, совместимое с Linux, написанное на Rust и Aarch64 ассемблере. Оно предлагает асинхронное ядро, модульную архитектуру и бинарную совместимость с приложениями Linux, поддерживая большинство команд BusyBox.
🚀Основные моменты:
- Полная поддержка архитектуры aarch64.
- Асинхронные системные вызовы для предотвращения блокировок.
- Поддержка 49 системных вызовов Linux.
- Виртуальная файловая система с асинхронными абстракциями.
- Активная разработка с планами по улучшению совместимости и сети.
📌 GitHub: https://github.com/hexagonal-sun/moss
#rust
🔥26❤12🥰2😱1🤗1
Код на скриншоте показывает, что каждая функция добавляет свой контекст, и в итоге при падении мы видим полную цепочку причин, а не просто финальную ошибку.
Что происходит:
hello0 выбрасывает ошибку с текстом "!!!!!".
hello1 вызывает hello0 и добавляет свой контекст "world".
hello2 вызывает hello1 и добавляет контекст "hello".
main вызывает hello2 и при ошибке печатает весь стек причин.
Что такое цепочка причин:
Это последовательность контекстов, которые добавлялись на каждом уровне вызовов.
Благодаря этому видно не только то, что сломалось, но и где именно.
Каждый уровень в стеке — это подсказка:
какая функция работала,
какой контекст она добавила,
и что пошло не так в конечном итоге.
Вывод при запуске:
hello
Caused by:
0: world
1: !!!!!
Как это читать:
Сверху -контекст "hello".
Под ним - контекст другой функции "world".
А внизу - исходная причина ошибки "!!!!!".
Такой подход делает отладку проще:
видно весь маршрут ошибки — от места падения до верхнего уровня.
#rust #junior
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28❤8🥰3😢1
🌟 Stelliberty: Кроссплатформенный клиент Clash на Flutter и Rust
Stelliberty предлагает современный интерфейс с уникальным дизайном MD3M. Приложение поддерживает управление подписками и мониторинг трафика, обеспечивая высокую производительность благодаря Rust. Поддержка нескольких языков и интеграция с Windows делают его удобным для пользователей.
🚀Основные моменты:
- 🎨 Уникальный дизайн на основе Material Design 3
- 🦀 Высокопроизводительный бэкенд на Rust
- 🌐 Многоязычная поддержка
- 🔧 Полное управление подписками
- 📊 Реальное время мониторинга трафика
📌 GitHub: https://github.com/Kindness-Kismet/Stelliberty
#rust
Stelliberty предлагает современный интерфейс с уникальным дизайном MD3M. Приложение поддерживает управление подписками и мониторинг трафика, обеспечивая высокую производительность благодаря Rust. Поддержка нескольких языков и интеграция с Windows делают его удобным для пользователей.
🚀Основные моменты:
- 🎨 Уникальный дизайн на основе Material Design 3
- 🦀 Высокопроизводительный бэкенд на Rust
- 🌐 Многоязычная поддержка
- 🔧 Полное управление подписками
- 📊 Реальное время мониторинга трафика
📌 GitHub: https://github.com/Kindness-Kismet/Stelliberty
#rust
GitHub
GitHub - Kindness-Kismet/Stelliberty: A modern client built with Flutter and Rust, powered by Mihomo
A modern client built with Flutter and Rust, powered by Mihomo - Kindness-Kismet/Stelliberty
🔥5❤2👍2🥰1
⚡️ Microsoft хочет убрать весь C и C++ к 2030 году - и заменить их Rust
В Microsoft поставили амбициозную цель: к 2030 году устранить каждую строку C и C++ из своих кодовых баз.
Чем заменить?
Ответ ожидаемый —-Rust.
Причем переписывать код собираются не «по старинке», а с помощью ИИ.
По словам Galen Hunt, Distinguished Engineer в Microsoft Research, ставка делается на комбинацию:
- AI
- алгоритмов автоматического рефакторинга
Их «North Star»-метрика звучит почти фантастически:
- 1 инженер
- 1 месяц
- 1 миллион строк кода
Да, миллион строк кода на человека в месяц.
Что вызывает вопросы
- Переписываются огромные, battle-tested кодовые базы
- Пользователь не получает очевидной новой ценности
- Скорость переписывания агрессивная, а риски — системные
- Новый код навязывается другим командам до полноценной стабилизации
- При этом часто подразумевается вера, что Rust «по определению» безопаснее и почти не содержит багов
Критики называют это классическим примером инженерного переоценивания языка:
- язык =/= архитектура
- безопасность памяти ≠ отсутствие логических ошибок
- массовый rewrite — один из самых рискованных типов изменений
Почему это все же важно
- Microsoft действительно страдает от уязвимостей в C/C++
- Rust уже показал ценность в low-level системных компонентах
- AI-переписывание кода в таком масштабе — новый прецедент для индустрии
Вопрос в том, можно ли безопасно и разумно переписать десятки миллионов строк зрелого кода с помощью ИИ - и не заплатить за это стабильностью.
#Microsoft #Rust
В Microsoft поставили амбициозную цель: к 2030 году устранить каждую строку C и C++ из своих кодовых баз.
Чем заменить?
Ответ ожидаемый —-Rust.
Причем переписывать код собираются не «по старинке», а с помощью ИИ.
По словам Galen Hunt, Distinguished Engineer в Microsoft Research, ставка делается на комбинацию:
- AI
- алгоритмов автоматического рефакторинга
Их «North Star»-метрика звучит почти фантастически:
- 1 инженер
- 1 месяц
- 1 миллион строк кода
Да, миллион строк кода на человека в месяц.
Что вызывает вопросы
- Переписываются огромные, battle-tested кодовые базы
- Пользователь не получает очевидной новой ценности
- Скорость переписывания агрессивная, а риски — системные
- Новый код навязывается другим командам до полноценной стабилизации
- При этом часто подразумевается вера, что Rust «по определению» безопаснее и почти не содержит багов
Критики называют это классическим примером инженерного переоценивания языка:
- язык =/= архитектура
- безопасность памяти ≠ отсутствие логических ошибок
- массовый rewrite — один из самых рискованных типов изменений
Почему это все же важно
- Microsoft действительно страдает от уязвимостей в C/C++
- Rust уже показал ценность в low-level системных компонентах
- AI-переписывание кода в таком масштабе — новый прецедент для индустрии
Вопрос в том, можно ли безопасно и разумно переписать десятки миллионов строк зрелого кода с помощью ИИ - и не заплатить за это стабильностью.
#Microsoft #Rust
🤣67❤18👍12💊6🔥5🥰2
🎨 Snap Your Pixels to Perfection!
Pixel Snapper — инструмент для упорядочивания пикселей в идеальную сетку. Он помогает исправить неаккуратные и несогласованные элементы пиксельного искусства, созданного ИИ. Подходит для 2D-игровых активов и процедурного искусства, требующего точной сетки.
🚀Основные моменты:
- ✅ Упорядочивает пиксели по сетке.
- ✅ Поддерживает масштабирование разрешения.
- ✅ Привязывает цвета к строгой палитре.
- 🌐 Доступен как CLI и веб-версия.
📌 GitHub: https://github.com/Hugo-Dz/spritefusion-pixel-snapper
#rust
Pixel Snapper — инструмент для упорядочивания пикселей в идеальную сетку. Он помогает исправить неаккуратные и несогласованные элементы пиксельного искусства, созданного ИИ. Подходит для 2D-игровых активов и процедурного искусства, требующего точной сетки.
🚀Основные моменты:
- ✅ Упорядочивает пиксели по сетке.
- ✅ Поддерживает масштабирование разрешения.
- ✅ Привязывает цвета к строгой палитре.
- 🌐 Доступен как CLI и веб-версия.
📌 GitHub: https://github.com/Hugo-Dz/spritefusion-pixel-snapper
#rust
🔥20❤3🥰2🤗1
🎯 Высокопроизводительная распределённая платформа для предсказательных рынков, построенная на микросервисной архитектуре.
Она позволяет пользователям создавать, торговать и закрывать рынки прогнозов с поддержкой. Построена на Rust, она обеспечивает масштабируемость и надежность.
📌 GitHub: https://github.com/CryptomSol/prediction-market
#rust
Она позволяет пользователям создавать, торговать и закрывать рынки прогнозов с поддержкой. Построена на Rust, она обеспечивает масштабируемость и надежность.
📌 GitHub: https://github.com/CryptomSol/prediction-market
#rust
👍20❤6🥰3🔥1👌1🤗1
🚀 Погружение в "небезопасный" Rust
Corroded предлагает альтернативный взгляд на Rust, позволяя использовать "небезопасные" паттерны для оптимизации кода. Этот репозиторий демонстрирует, как обойти ограничения компилятора, предоставляя инструменты для работы с указателями, памятью и многопоточностью без традиционных предостережений.
🚀 Основные моменты:
- Использование unsafe блоков для повышения производительности.
- Удаление ограничений на указатели и ссылки.
- Работа с неинициализированной памятью и "потерянными" указателями.
- Поддержка многопоточности без синхронизации.
📌 GitHub: https://github.com/buyukakyuz/corroded
#rust
Corroded предлагает альтернативный взгляд на Rust, позволяя использовать "небезопасные" паттерны для оптимизации кода. Этот репозиторий демонстрирует, как обойти ограничения компилятора, предоставляя инструменты для работы с указателями, памятью и многопоточностью без традиционных предостережений.
🚀 Основные моменты:
- Использование unsafe блоков для повышения производительности.
- Удаление ограничений на указатели и ссылки.
- Работа с неинициализированной памятью и "потерянными" указателями.
- Поддержка многопоточности без синхронизации.
📌 GitHub: https://github.com/buyukakyuz/corroded
#rust
❤9🔥6🥰2😱2🤪2🤯1💔1
🦀 Пишем блочные устройства в user space на Rust - теперь это реально
В Linux 6+ появился новый фреймворк ublk, который позволяет создавать виртуальные блочные устройства (block devices) прямо в user space, без написания драйвера в ядре.
То есть можно сделать свой “диск”:
- из файла
- из сети
- из кастомного storage
- с логикой кеширования/сжатия/шифрования
и всё это - обычным приложением, а не kernel-модулем.
Автор статьи показывает, как работает ublk на уровне ядра и интерфейсов, а затем демонстрирует использование на Rust - с PoC-проектом blkchnkr.
Почему это важно:
- меньше боли с kernel-разработкой
- проще отлаживать и тестировать
- Rust идеально подходит для таких системных задач: безопасность памяти + высокая производительность
Если ты интересуешься storage/OS-dev - это один из самых интересных новых API в Linux за последнее время.
https://jpospisil.com/posts/2026-01-13-creating-virtual-block-devices-with-ublk
#rust #rustlang #linux
В Linux 6+ появился новый фреймворк ublk, который позволяет создавать виртуальные блочные устройства (block devices) прямо в user space, без написания драйвера в ядре.
То есть можно сделать свой “диск”:
- из файла
- из сети
- из кастомного storage
- с логикой кеширования/сжатия/шифрования
и всё это - обычным приложением, а не kernel-модулем.
Автор статьи показывает, как работает ublk на уровне ядра и интерфейсов, а затем демонстрирует использование на Rust - с PoC-проектом blkchnkr.
Почему это важно:
- меньше боли с kernel-разработкой
- проще отлаживать и тестировать
- Rust идеально подходит для таких системных задач: безопасность памяти + высокая производительность
Если ты интересуешься storage/OS-dev - это один из самых интересных новых API в Linux за последнее время.
https://jpospisil.com/posts/2026-01-13-creating-virtual-block-devices-with-ublk
#rust #rustlang #linux
❤🔥20👍14❤9🥰1🤗1
Const generics позволяют передавать константы на этапе компиляции прямо в типы.
Это особенно полезно для работы с массивами и матрицами, где размеры должны быть строго фиксированы.
Пример - типобезопасная матрица:
struct Matrix<const ROWS: usize, const COLS: usize> {
data: [[f32; COLS]; ROWS],
}
let mat: Matrix<2, 2> = Matrix {
data: [[1.0, 2.0], [3.0, 4.0]],
};
let value = mat.data[1][0]; // 3.0
#rust #rustlang #junior #rusttip
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29🔥7❤4🥰1🤗1
🦀 Как устроен async «под капотом» в Rust — на пальцах и без магии
В статье разобрано, как написать микро async-runtime с нуля на macOS, используя
Что он реализует
Минимальный, но полноценный стек:
- event loop — сердце рантайма
- poller — ждёт события от ОС
- reactor — связывает I/O-события и задачи
- tasks — единицы работы (future’ы)
- wakers — механизм «разбудить задачу»
- executor — запускает и перепланирует задачи
Обычно мы используем готовые рантаймы вроде или, не задумываясь, как они работают.
Здесь же видно:
- как
- как future переходит из Pending в Ready
- как waker возвращает задачу в очередь
- как executor крутит цикл выполнения
После такого разборa
Статья: https://michaelhelvey.dev/posts/rust_async_runtime
michaelhelvey.dev/posts/rust_async_runtime
#rust #rustlang
В статье разобрано, как написать микро async-runtime с нуля на macOS, используя
kqueue. Отличный материал, чтобы наконец понять, что происходит под async/await.Что он реализует
Минимальный, но полноценный стек:
- event loop — сердце рантайма
- poller — ждёт события от ОС
- reactor — связывает I/O-события и задачи
- tasks — единицы работы (future’ы)
- wakers — механизм «разбудить задачу»
- executor — запускает и перепланирует задачи
Обычно мы используем готовые рантаймы вроде или, не задумываясь, как они работают.
Здесь же видно:
- как
kqueue сигналит о готовности сокета - как future переходит из Pending в Ready
- как waker возвращает задачу в очередь
- как executor крутит цикл выполнения
После такого разборa
async в Rust перестаёт быть «чёрной коробкой».Статья: https://michaelhelvey.dev/posts/rust_async_runtime
michaelhelvey.dev/posts/rust_async_runtime
#rust #rustlang
❤12👍7🥰5🤗2
🛠️ Claude's C Compiler — Компилятор C на Rust
Claude's C Compiler (CCC) — это компилятор C, написанный с нуля на Rust, который поддерживает архитектуры x86-64, i686, AArch64 и RISC-V 64. Он не требует внешних зависимостей и генерирует ELF-исполняемые файлы. CCC может служить заменой GCC и успешно компилирует реальные проекты, включая Linux kernel и популярные библиотеки.
🚀 Основные моменты:
- Полностью написан на Rust без внешних инструментов.
- Поддерживает несколько архитектур с одним кодом.
- Совместим с большинством флагов GCC.
- Успешно компилирует множество известных проектов.
- Необходима Linux-система для работы.
📌 GitHub: https://github.com/anthropics/claudes-c-compiler
#rust
Claude's C Compiler (CCC) — это компилятор C, написанный с нуля на Rust, который поддерживает архитектуры x86-64, i686, AArch64 и RISC-V 64. Он не требует внешних зависимостей и генерирует ELF-исполняемые файлы. CCC может служить заменой GCC и успешно компилирует реальные проекты, включая Linux kernel и популярные библиотеки.
🚀 Основные моменты:
- Полностью написан на Rust без внешних инструментов.
- Поддерживает несколько архитектур с одним кодом.
- Совместим с большинством флагов GCC.
- Успешно компилирует множество известных проектов.
- Необходима Linux-система для работы.
📌 GitHub: https://github.com/anthropics/claudes-c-compiler
#rust
GitHub
GitHub - anthropics/claudes-c-compiler: Claude Opus 4.6 wrote a dependency-free C compiler in Rust, with backends targeting x86…
Claude Opus 4.6 wrote a dependency-free C compiler in Rust, with backends targeting x86 (64- and 32-bit), ARM, and RISC-V, capable of compiling a booting Linux kernel. - anthropics/claudes-c-compiler
🖕43🔥17❤7🤬7💊5❤🔥3😐3🌚2🙉1
🦀 Google наконец выпустил официальный CLI на Rust для своих сервисов.
Теперь через один инструмент можно работать с Gmail, Drive, Sheets, Calendar, Admin, Keep, Meet и еще десятком сервисов Google.
#rust #rustlang #programming
https://github.com/googleworkspace/cli
Теперь через один инструмент можно работать с Gmail, Drive, Sheets, Calendar, Admin, Keep, Meet и еще десятком сервисов Google.
#rust #rustlang #programming
https://github.com/googleworkspace/cli
👍35🔥12❤10💊4☃1🌭1
🦀 Вышел Rust 1.94.0
В новом релизе появилось небольшое, но очень полезное изменение для разработчиков CLI-утилит.
Теперь переменная CARGO_BIN_EXE_<name> доступна не только во время сборки, но и во время выполнения программы.
Это позволяет напрямую получать путь к скомпилированному бинарнику и использовать его в тестах. Раньше для этого приходилось писать обходные решения или вручную искать путь к файлу.
Теперь Cargo сам предоставляет путь к бинарному файлу, что сильно упрощает интеграционное тестирование CLI-приложений.
Полный список изменений доступен в changelog релиза Rust 1.94.0.
https://github.com/rust-lang/rust/releases/tag/1.94.0
#rustlang #rust #cargo #release #testing #opensource
В новом релизе появилось небольшое, но очень полезное изменение для разработчиков CLI-утилит.
Теперь переменная CARGO_BIN_EXE_<name> доступна не только во время сборки, но и во время выполнения программы.
Это позволяет напрямую получать путь к скомпилированному бинарнику и использовать его в тестах. Раньше для этого приходилось писать обходные решения или вручную искать путь к файлу.
Теперь Cargo сам предоставляет путь к бинарному файлу, что сильно упрощает интеграционное тестирование CLI-приложений.
Полный список изменений доступен в changelog релиза Rust 1.94.0.
https://github.com/rust-lang/rust/releases/tag/1.94.0
#rustlang #rust #cargo #release #testing #opensource
👍31🔥17🎉6❤4😁2⚡1🥰1🤗1
🦀 Вышел rustup 1.29.0
Обновление получилось действительно полезным - без громких обещаний, зато с улучшениями, которые заметны в реальной работе.
Что нового:
-
- появилась официальная поддержка Solaris -
- rustup теперь автоматически настраивает
- если у вас уже есть свой
- к команде присоединился новый участник -
Особенно приятно видеть изменения не только для массовых сценариев, но и для более нишевых окружений и удобных dev-воркфлоу.
Небольшой релиз, но очень практичный.
#rust #rustlang #programming
https://blog.rust-lang.org/2026/03/12/Rustup-1.29.0/
Обновление получилось действительно полезным - без громких обещаний, зато с улучшениями, которые заметны в реальной работе.
Что нового:
-
rustup update стал быстрее благодаря параллельной загрузке и распаковке- появилась официальная поддержка Solaris -
sparcv9 и x86_64- rustup теперь автоматически настраивает
PATH для tcsh и xonsh- если у вас уже есть свой
rust-analyzer в PATH, rustup будет использовать именно его - удобно для Neovim и Helix- к команде присоединился новый участник -
@FranciscoTGouveiaОсобенно приятно видеть изменения не только для массовых сценариев, но и для более нишевых окружений и удобных dev-воркфлоу.
Небольшой релиз, но очень практичный.
#rust #rustlang #programming
https://blog.rust-lang.org/2026/03/12/Rustup-1.29.0/
👍28🔥10❤6🤗2⚡1🥰1
Rust-совет недели 🦀
Можно встроить статический текст прямо в бинарник с помощью
Этот макрос читает файл во время компиляции и встраивает его содержимое прямо в программу. Никакого чтения файлов во время выполнения.
Это удобно для:
- шаблонов конфигурации
- встроенных скриптов
- статических ресурсов
- тестовых данных
Пример:
Во время компиляции Rust читает файл и помещает его содержимое прямо в исполняемый файл.
Просто, быстро и без runtime IO.
#rust #junior #rustlang
Можно встроить статический текст прямо в бинарник с помощью
include_str!.Этот макрос читает файл во время компиляции и встраивает его содержимое прямо в программу. Никакого чтения файлов во время выполнения.
Это удобно для:
- шаблонов конфигурации
- встроенных скриптов
- статических ресурсов
- тестовых данных
Пример:
fn main() {
const TEXT: &str = include_str!("static-data.txt");
let program = include_str!("main.rs");
}
Во время компиляции Rust читает файл и помещает его содержимое прямо в исполняемый файл.
Просто, быстро и без runtime IO.
#rust #junior #rustlang
❤25🔥18👍10🤔2🥰1🤗1
🌐 IRBox: Удобный и безопасный прокси-клиент
IRBox предлагает многофункциональную поддержку протоколов и продвинутые инструменты управления для обеспечения безопасного и стабильного интернет-соединения. Идеален для пользователей, заботящихся о конфиденциальности.
🚀 Основные моменты:
- Поддержка множества протоколов (VLESS, VMess, Shadowsocks и др.)
- Расширенные функции управления (правила маршрутизации, автообновление подписок)
- Интуитивно понятный интерфейс с темами и тестированием задержки серверов
📌 GitHub: https://github.com/frank-vpl/IRBox
#rust
IRBox предлагает многофункциональную поддержку протоколов и продвинутые инструменты управления для обеспечения безопасного и стабильного интернет-соединения. Идеален для пользователей, заботящихся о конфиденциальности.
🚀 Основные моменты:
- Поддержка множества протоколов (VLESS, VMess, Shadowsocks и др.)
- Расширенные функции управления (правила маршрутизации, автообновление подписок)
- Интуитивно понятный интерфейс с темами и тестированием задержки серверов
📌 GitHub: https://github.com/frank-vpl/IRBox
#rust
👍17❤8🥰3😐2🤗1