Rust
Kanalga Telegram’da o‘tish
Rust programming language По всем вопросам- @textfaster #VRHSZ
Ko'proq ko'rsatish8 437
Obunachilar
-424 soatlar
+347 kunlar
+30930 kunlar
Ma'lumot yuklanmoqda...
O'xshash kanallar
Taglar buluti
Kirish va chiqish esdaliklari
---
---
---
---
---
---
Obunachilarni jalb qilish
Iyun '26
Iyun '26
+22
0 kanalda
May '26
+433
4 kanalda
Get PRO
Aprel '26
+180
0 kanalda
Get PRO
Mart '26
+374
26 kanalda
Get PRO
Fevral '26
+458
47 kanalda
Get PRO
Yanvar '26
+268
109 kanalda
Get PRO
Dekabr '25
+202
5 kanalda
Get PRO
Noyabr '25
+274
42 kanalda
Get PRO
Oktabr '25
+344
13 kanalda
Get PRO
Sentabr '25
+239
41 kanalda
Get PRO
Avgust '25
+190
9 kanalda
Get PRO
Iyul '25
+408
73 kanalda
Get PRO
Iyun '25
+225
61 kanalda
Get PRO
May '25
+166
2 kanalda
Get PRO
Aprel '25
+167
26 kanalda
Get PRO
Mart '25
+118
2 kanalda
Get PRO
Fevral '25
+224
41 kanalda
Get PRO
Yanvar '25
+232
44 kanalda
Get PRO
Dekabr '24
+243
39 kanalda
Get PRO
Noyabr '24
+192
54 kanalda
Get PRO
Oktabr '24
+248
54 kanalda
Get PRO
Sentabr '24
+294
182 kanalda
Get PRO
Avgust '24
+219
40 kanalda
Get PRO
Iyul '24
+266
53 kanalda
Get PRO
Iyun '24
+283
55 kanalda
Get PRO
May '24
+285
37 kanalda
Get PRO
Aprel '24
+322
46 kanalda
Get PRO
Mart '24
+234
19 kanalda
Get PRO
Fevral '24
+301
1 kanalda
Get PRO
Yanvar '24
+766
43 kanalda
Get PRO
Dekabr '23
+164
39 kanalda
Get PRO
Noyabr '23
+114
32 kanalda
Get PRO
Oktabr '23
+97
1 kanalda
Get PRO
Sentabr '23
+236
0 kanalda
Get PRO
Avgust '23
+1 307
0 kanalda
Get PRO
Iyul '23
+239
0 kanalda
Get PRO
Iyun '23
+400
0 kanalda
Get PRO
May '23
+52
0 kanalda
Get PRO
Aprel '23
+89
0 kanalda
Get PRO
Mart '23
+622
0 kanalda
Get PRO
Fevral '23
+67
0 kanalda
Get PRO
Yanvar '23
+63
0 kanalda
Get PRO
Dekabr '22
+50
0 kanalda
Get PRO
Noyabr '22
+562
0 kanalda
Get PRO
Oktabr '22
+633
0 kanalda
Get PRO
Sentabr '22
+127
0 kanalda
Get PRO
Avgust '22
+840
0 kanalda
Get PRO
Iyul '22
+42
0 kanalda
Get PRO
Iyun '22
+68
0 kanalda
Get PRO
May '22
+243
0 kanalda
Get PRO
Aprel '22
+1 058
0 kanalda
| Sana | Obunachilarni jalb qilish | Esdaliklar | Kanallar | |
| 03 Iyun | +6 | |||
| 02 Iyun | +2 | |||
| 01 Iyun | +14 |
Kanal postlari
⚡️ Microsoft открыла Coreutils для Windows - знакомые Unix-команды теперь ставятся одной командой
Microsoft выпустила первый релиз Coreutils for Windows. Это набор привычных *nix-инструментов для Windows, написанных на Rust.
Внутри:
- Rust-версия GNU Coreutils
- реализация FindUtils
- свежая реализация Grep
- shim для совместимости с DOS
sort и find
- PowerShell-обёртка для glob-паттернов как в Unix
Установка через winget:
winget install Microsoft.Coreutils
Интересный момент: GNU grep тоже переписали на Rust и уже выкатили первый релиз с тестами, бенчмарками и ранними контрибуциями.
Пока это не финальная замена старым инструментам - в первом релизе ожидают баги и ещё есть работа по производительности. Но сам вектор понятен: Microsoft всё активнее тащит Unix-like tooling в Windows, а Rust становится нормальным языком для системных утилит.
https://github.com/microsoft/coreutils| 2 | Rust Coreutils 0.9.0 вышел с важным обновлением: закрыли 44 уязвимости, но формальная совместимость с GNU Coreutils просела до 90,58%.
Звучит как откат, но причина в другом. Тестовый набор обновили до GNU Coreutils 9.11, туда добавили 25 новых проверок. После этого uutils прошёл 625 тестов, а 56 завалил. В прошлой версии было 630 успешных и 21 неуспешный тест, отсюда падение с 94,74%.
Самая важная часть релиза - безопасность. После аудита Zellic исправили 44 уязвимости. Много проблем было связано с расхождением поведения относительно GNU Coreutils и гонками файловой системы. Типичный сценарий: программа проверяет файл, а между проверкой и действием его успевают заменить на симлинк.
Для обычного запуска это неприятно. Для cp, chmod или mv от root это уже критично: можно добиться копирования, изменения прав или перезаписи чужого файла. Для защиты усилили безопасное копирование через uucore::safe_copy.
Параллельно продолжается техническая чистка:
- id, tr, timeout, sort, wc, tail, cp, who, factor переводят на rustix
- сокращают количество unsafe
- в cat, wc, head, tail, yes, cp, tee, unexpand используют splice(), tee() и pipe() для работы без лишнего копирования данных
- подтянули совместимость numfmt, date, tr, cksum, factor, head, stat, sort
- для ln, dd, mktemp, tty добавили сборку под WebAssembly/WASI
Хороший релиз именно для системного Rust. Здесь видно, что переписать coreutils на Rust - это не только «убрать C ради безопасности». Нужно годами догонять поведение GNU, ловить тонкие файловые гонки, вычищать unsafe и сохранять производительность на низком уровне.
Совместимость временно просела, но проект стал безопаснее и технически чище.
https://github.com/uutils/coreutils/releases/tag/0.9.0 | 1 935 |
| 3 | 👣 В Rust нашли интересный способ ускорить pretty printer - штуку, которая красиво форматирует код, JSON, Lisp и другие структуры.
Обычно есть два подхода.
Первый - собрать всё дерево документа целиком. Так делают Wadler-style pretty printers. Это выразительно, но в Rust быстро упирается в память, аллокации и указатели.
Второй - стримить вывод по кускам. Так работает Oppen-style подход. Он легче по памяти, но часто принимает локально хорошие решения и не всегда находит глобально лучший layout.
Автор предлагает третий вариант: не хранить документ как рекурсивный enum, а описывать его через trait Doc.
То есть Text, Concat, Group, Nest и другие элементы становятся отдельными типами, которые умеют сами себя рендерить через layout().
Звучит как мелкая архитектурная правка, но эффект большой: меньше лишних аллокаций, меньше прыжков по памяти, гибче управление Box, Rc и другими стратегиями хранения.
В proof-of-concept реализации pye автор получил до 60x ускорения по сравнению с прямой Rust-реализацией алгоритма из paper “A Pretty Expressive Printer”. А в обновлённых тестах вариант с таким дизайном и greedy-алгоритмом местами обгонял pretty и arena-версию больше чем в 10 раз.
В Rust производительность часто ломается не только на алгоритме, но и на форме данных.
Иногда enum выглядит красиво, но trait-based дизайн лучше ложится на память, ownership и реальные оптимизации компилятора.
blog.wybxc.cc/blog/pretty-printer-pye/
#Rust #RustLang #Compilers #OpenSource #SystemsProgramming | 2 796 |
| 4 | 🦀 Rust 1.96 вышел: новые range-типы, удобные assert-матчи и важное изменение для WebAssembly
Rust 1.96.0 выглядит как минорный релиз, но внутри есть несколько вещей, которые реально стоит заметить.
Главное изменение - новые core::range::Range* типы. Старые Range из core::ops напрямую реализуют Iterator, поэтому их нельзя нормально сделать Copy без неприятных ловушек. Новые range-типы идут другим путём: они реализуют IntoIterator, а значит могут быть Copy.
Теперь можно хранить диапазоны в Copy`-структурах без костылей вроде раздельных `start и end.
use core::range::Range;
#[derive(Clone, Copy)]
pub struct Span(Range<usize>);
Ещё одно приятное обновление - assert_matches! и debug_assert_matches!.
Это как assert!(matches!(...)), только при падении выводится значение через Debug, а значит тесты и отладка становятся заметно понятнее. Макросы не добавили в prelude, их нужно импортировать вручную из core или std.
Для WebAssembly есть изменение построже: undefined symbols теперь становятся ошибкой линковки, а не молча превращаются в импорты из "env". Это может сломать часть старых сборок, зато такие проблемы теперь ловятся раньше, а не всплывают странным поведением на рантайме.
Из важного по безопасности: в Rust 1.96 исправлены две уязвимости Cargo для пользователей сторонних registry. Пользователей crates.io они не затрагивают.
Обновление стандартное:
rustup update stable
Релиз без фейерверков, но полезный: меньше footgun'ов с range, удобнее проверки в тестах, строже WebAssembly-сборки и пара закрытых дыр в Cargo.
https://blog.rust-lang.org/2026/05/28/Rust-1.96.0/ | 2 422 |
| 5 | 🌐 Умный DNS-резолвер Numa
Numa - это портативный DNS-резолвер, который работает из одного бинарного файла. Он блокирует рекламу, позволяет настраивать локальные сервисы и шифрует запросы с помощью ODoH, обеспечивая вашу конфиденциальность. Все функции встроены, без необходимости в облачных сервисах.
🚀 Основные моменты:
- Портативный, работает на любом устройстве.
- Блокировка рекламы и кэширование по умолчанию.
- Поддержка DNSSEC и DNS-over-TLS для шифрования.
- Автоматическое обнаружение устройств в локальной сети.
- Легкий в использовании интерфейс и настройка.
📌 GitHub: https://github.com/razvandimescu/numa | 2 677 |
| 6 | ✔️ Run Llama выкатили LiteParse - open-source инструмент для быстрого локального парсинга документов.
Если задача - быстро достать текст, координаты, структуру страниц и скриншоты, это можно делать локально.
Что умеет LiteParse:
- парсит PDF через PDFium
- сохраняет bounding boxes для текста
- умеет OCR через встроенный Tesseract
- поддерживает внешние OCR-серверы вроде EasyOCR или PaddleOCR
- генерирует скриншоты страниц для LLM-агентов
- отдаёт результат в JSON или обычный текст
- работает из Rust, Python, Node.js/TypeScript и WASM
- запускается на Linux, macOS и Windows
Авторы прямо разделяют сценарии: LiteParse для быстрых локальных задач, LlamaParse - для тяжёлых случаев с таблицами, сложной версткой, графиками, рукописным текстом и сканами.
https://github.com/run-llama/liteparse | 2 584 |
| 7 | 👣 Rust 1.96 почти готов: релиз уже на финальном тестировании
Команда Rust выложила pre-release версии 1.96.0. Это не финальный релиз, а последняя проверка перед публикацией stable, которая запланирована на 28 мая.
Разработчиков просят прогнать новую версию на реальных проектах и заранее поймать регрессии, пока релиз ещё можно поправить.
Из заметного в 1.96:
- стабилизировали assert_matches! и debug_assert_matches!
- добавили поддержку итерации по диапазонам `NonZero`-чисел
- Cargo теперь позволяет зависимости указывать одновременно git-репозиторий и альтернативный registry
- добавили target.'cfg(..)'.rustdocflags в конфигурации Cargo
- Rustdoc получил более аккуратный рендер deprecated-документации
- есть несколько compatibility notes, которые могут затронуть редкие edge cases
Отдельный сигнал: Rust Team обсуждает изменения в самом pre-release процессе и просит фидбек от сообщества. То есть речь не только про конкретную версию, но и про то, как Rust будет тестировать релизы дальше.
Проверить pre-release можно через rustup:
RUSTUP_DIST_SERVER=https://dev-static.rust-lang.org rustup update stable
https://blog.rust-lang.org/inside-rust/2026/05/26/1.96.0-prerelease/ | 2 444 |
| 8 | 🚀 Логическая аналитика с LynxDB
LynxDB — это легковесная система для анализа логов, работающая в одном бинарном файле без зависимостей. Она использует язык запросов Lynx Flow, позволяющий легко обрабатывать данные в виде конвейера.
🚀 Основные моменты:
- Пайплайн-запросы для обработки данных
- Полнотекстовый поиск и колоночное хранилище
- Поддержка кластерного режима и материализованных представлений
- Никакой конфигурации — разумные настройки по умолчанию
- Активная разработка, обратная связь приветствуется
📌 GitHub: https://github.com/lynxbase/lynxdb
#rust | 885 |
| 9 | ⚙️ ASMLings - подробный гайд на русском
ASMLings - это набор из ~32 коротких упражнений на ассемблере Intel 8086, выстроенных по возрастанию сложности: от mov ax, 0x1337 до 32-битного сложения через carry flag, циклов, подпрограмм, работы с памятью и стеком.
Полный русскоязычный гайд по asmlings - интерактивной песочнице для изучения ассемблера Intel 8086, в которой 16-битный x86-эмулятор написан на Rust.
Внутри: что это, как устроено под капотом, как установить, как читать и решать упражнения, разборы реальных задач из репозитория, готовые примеры в examples/ и шпаргалки.
https://github.com/justxor/-ASMLingsru/ | 3 481 |
| 10 | Rust-приложение, которое превращает скучный терминал в живой dashboard
Splashboard - это splash screen для терминала, написанный на Rust. Открываешь новый shell - и вместо пустого экрана видишь контекст по проекту.
Он может показывать Git-статус, состояние CI, открытые PR, contribution heatmap и даже фазу Луны. Да, зачем-то это тоже есть.
Главная фишка в DX: репозиторий сам может описать свой dashboard через один dashboard.toml. Заходишь в папку проекта через cd - и терминал сразу подхватывает нужный контекст без флагов, ручной настройки и лишней возни.
Под капотом Rust и ratatui, работает кроссплатформенно, пакет доступен на crates.io.
Вот так выглядит нормальный zero-overhead DX: не ещё одна тяжёлая панель в браузере, а быстрый TUI прямо там, где разработчик и так живёт - в терминале.
🔗 http://github.com/unhappychoice/splashboard
#Rust #RustLang #CLI #TerminalTools #OpenSource #DeveloperTools #TUI #Ratatui #Rustacean | 3 604 |
| 11 | 👣 Rust Interview Deep Dive
Репозиторий для системной подготовки к собеседованиям по Rust на позиции middle, senior и staff.
Внутри 100 реальных вопросов с собеседований в продуктовых и инфраструктурных компаниях, подробные разборы с примерами кода и сценарии задач, которые встречаются в продакшене. Не «угадай вывод программы», а механика, на которой строятся настоящие сервисы.
Здесь lock-free структуры, self-referential типы в async, FFI с тензорными библиотеками, корректный Send на гардах через await, memory ordering под loom, soundness кастомных коллекций. И при этом все начинается с базы. Владение, заимствование, лайфтаймы. Кто хочет, может зайти и с нуля, и с уровня staff
https://github.com/Develp10/rustinterviewquiestions | 3 322 |
| 12 | 👣 Rust + Kubernetes: практичный стек для controller-разработки
Если нужно написать Kubernetes controller, стоит посмотреть на kube-rs.
• типизированные Kubernetes API
• описание состояний через enum и sum types
• явную обработку ошибок
• меньше runtime-сюрпризов
• отсутствие `nil`-крашей
• более строгую модель для reconciliation-логики
Rust помогает перенести часть проверок в компилятор и сделать поведение контроллера более предсказуемым.
GitHub: https://github.com/kube-rs/kube | 3 410 |
| 13 | 👣 Rust Interview Deep Dive
Репозиторий для системной подготовки к собеседованиям по Rust на позиции middle, senior и staff.
Внутри 100 реальных вопросов с собеседований в продуктовых и инфраструктурных компаниях, подробные разборы с примерами кода и сценарии задач, которые встречаются в продакшене. Не «угадай вывод программы», а механика, на которой строятся настоящие сервисы.
Здесь lock-free структуры, self-referential типы в async, FFI с тензорными библиотеками, корректный Send на гардах через await, memory ordering под loom, soundness кастомных коллекций. И при этом все начинается с базы. Владение, заимствование, лайфтаймы. Кто хочет, может зайти и с нуля, и с уровня staff
https://github.com/Develp10/rustinterviewquiestions | 3 755 |
| 14 | Вышел RustRover 2026.1.2.
Главное исправление - IDE теперь корректно разбирает комментарии, которые начинаются с ////.
Да, тот самый случай, когда валидный Rust-код мог подсвечиваться как ошибочный просто из-за лишнего слеша в комментарии. Код нормальный, компилятор не ругается, а IDE показывает false positive и заставляет искать проблему там, где её нет.
В обновлении также поправили:
- несколько других ложных ошибок
- вывод типов
- стабильность IDE
Обновление небольшое, но полезное.
Скачать:
https://jetbrains.com/rust/download/ | 3 271 |
| 15 | Copy vs Clone в Rust: почему использование одногр почти не ест ресурсы а другое может стоить вам дорого
В Rust Copy и `Clone` часто воспринимают как одно и то же: «ну, просто сделать копию».
Но разница принципиальная.
Copy - это когда значение можно безопасно продублировать как набор байтов. Без вызова кода, без выделения памяти, без скрытой логики. Поэтому u32, bool, char, f64 и другие простые типы спокойно копируются автоматически.
Вы передали u32 в функцию - старое значение осталось доступно. Rust просто скопировал число.
С Clone другая история.
Clone означает: «создай новое значение такого же типа». А как именно это сделать, решает сам тип. Иногда это тоже дешево. Но иногда clone() запускает полноценную работу: выделяет память, копирует данные, пересобирает внутреннюю структуру.
Самый понятный пример - String.
Если бы Rust просто скопировал байты самой структуры String, мы получили бы два владельца одного и того же буфера в памяти. Это сломало бы модель владения.
Поэтому String::clone() создает новый буфер и копирует туда текст. Это уже не бесплатная операция.
Главная мысль простая:
Copy - для типов, которые можно безопасно копировать как байты.
Clone - для типов, которым может понадобиться настоящая работа, чтобы создать независимую копию.
Поэтому в Rust clone() в коде стоит замечать. Не паниковать, но понимать: здесь может быть цена. | 3 289 |
| 16 | 👣 На Stepik обновили курс «Rust: полный курс разработчика. С нуля до профи»
Представьте: через три месяца вы открываете чужой Rust-код и читаете его как книгу.
Arc<Mutex<T>> не вызывает панику. impl Future не пугает. Вы точно знаете, почему компилятор ругается и как это починить за 10 секунд.
Это не фантазия. Это результат 50 уроков, в которых каждая концепция объясняется через код и закрепляется практикой.
Ownership, traits, generics, async, unsafe - всё, что казалось магией, станет рабочим инструментом.
А бонусом - портфолио проектов: от CLI-утилит до REST API и WebAssembly.
Вы и так знаете, что Rust - ваш следующий язык. Этот курс просто сделает это реальностью.
Сегодня - 55% процентов от цены, торопись: https://stepik.org/a/269250/ | 3 346 |
| 17 | 👣 Я заставил LLM писать Rust полгода. Вот что они стабильно ломают
Полгода я использовал Claude, GPT и Cursor как основной инструмент для написания Rust-кода в проде. Не как «помощник для бойлерплейта», а как полноценного второго разработчика на монолите примерно в 80 тысяч строк (бэкенд обработки потоковых данных, tokio, sqlx, немного unsafe в hot path).
Доля сгенерированного кода в коммитах последних шести месяцев около 40%, остальное это правки, рефакторинг и места, куда модель я не пускаю.
За это время накопилась коллекция ошибок, которые модели делают с пугающей регулярностью, и которые проходят cargo build, проходят cargo test, иногда даже проходят cargo clippy, и при этом являются либо UB, либо логически некорректным кодом, либо тем самым «работает на моей машине».
Я не буду писать, какая модель лучше. К моменту публикации статьи рейтинг устареет. Я расскажу про категории ошибок, которые воспроизводятся у всех топовых моделей весной 2026 года, и которые упираются не в качество обучающих данных, а в фундаментальные слепые пятна архитектуры трансформеров применительно к системе типов Rust.
Цифры, которые буду приводить дальше, получены так: я завёл бенчмарк из 50 типовых задач (написать функцию, отрефакторить, добавить фичу), прогонял каждую через четыре модели в течение полугода, и руками классифицировал ошибки. Это не academic-level статистика, но порядки величин показывает.
https://uproger.com/ya-zastavil-llm-pisat-rust-polgoda-vot-chto-oni-stabilno-lomayut/ | 9 101 |
| 18 | Rust сегодня исполняется 11 лет 🦀🎉
С версии 1.0 многое изменилось, но история языка всё ещё пишется.
От первого стабильного релиза до сегодняшнего дня Rust вырос в топовые язык, сформированный, аккуратным дизайном и крутым сообществом, которое постоянно поднимает планку качества в разработке ПО.
А когда вы начали работать с Rust?
🎁 Пишите в комментариях.
@rust_code | 4 550 |
| 19 | X выложили обновленный алгоритм For You на GitHub
Можно посмотреть, как X собирает и ранжирует ленту рекомендаций.
В репозитории xai-org/x-algorithm опубликован код системы, которая питает For You feed: от подбора кандидатов на показ до финального ранжирования постов. Внутри два основных источника контента:
- посты от аккаунтов, на которые вы подписаны
- посты из глобального корпуса, найденные через ML-retrieval
Дальше всё прогоняется через Phoenix - transformer-модель на базе архитектуры Grok. Она оценивает вероятности действий пользователя: лайк, реплай, репост, клик и другие сигналы. После этого система собирает итоговый score и решает, что именно попадёт в ленту.
Можно посмотреть, какие сигналы действительно влияют на рекомендации, как устроен ranking pipeline и где платформа фильтрует контент перед показом.
GitHub: https://github.com/xai-org/x-algorithm
@ai_machinelearning_big_data | 3 177 |
| 20 | AI-агенты уже переписывают не пет-проекты, а инфраструктуру уровня Bun
История с Bun выглядит как новый уровень вайбкодинга: не лендинг, не CRUD и не маленький сервис, а почти миллион строк системного кода.
Bun изначально был написан на Zig. После покупки Anthropic проект стал ещё важнее: на нём завязана инфраструктура Claude Code, поэтому любые проблемы runtime напрямую бьют по продукту.
И вот Джарред Самнер начал эксперимент с переносом Bun на Rust при помощи Claude. Сначала это звучало как черновой ресёрч, который легко могут выбросить.
Но через несколько дней Rust-ветка уже проходила около 99.8% тестов на Linux x64 glibc, а в обсуждениях всплыл масштаб порядка 960 тысяч строк портированного кода.
Сама цифра важнее хайпа. AI-агенты впервые выглядят не как помощники для дописывания функций, а как инструмент для радикальных миграций: язык, runtime, архитектура, огромная кодовая база.
Да, качество такого порта ещё будут долго разбирать. Да, миллион строк от агента - это не автоматически production-ready. Но сам факт уже меняет планку.
Раньше переписывание большого проекта на другой язык было историей на месяцы или годы.
Теперь это может начинаться как эксперимент на неделю.
https://github.com/oven-sh/bun/pull/30412 | 3 470 |
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
