Состояние асинхронности в Rust

Асинхронная экосистема Rust претерпела большую эволюцию с течением времени, поэтому может быть трудно понять, какие инструменты использовать, в какие библиотеки инвестировать, или какую документацию читать. Однако типаж Future внутри стандартной библиотеке и async/await в языке последнее время стабилизировалась. Таким образом, экосистема в целом находится в процессе миграции к недавно стабилизированному API, после чего точка оттока будет значительно уменьшена.

Тем не менее, сейчас экосистема всё ещё находится в стадии активной разработки и асинхронный опыт в Rust не отполирован. Многие библиотеки до сих пор используют пакет futures версии 0.1, а это значит, что для взаимодействия с ними разработчикам часто требуется функциональность compat из пакета futures версии 0.3. async/await до сих пор новы. Важное расширение синтаксиса, как async fn, для методов типажей до сих пор не реализовано, и текущие сообщения компилятора об ошибках могут быть сложны для восприятия.

Это говорит о том, что Rust на пути к более эффективной и эргономичной поддержке асинхронного программирования и если вы не боитесь изменений, наслаждайтесь погружением в мир асинхронного программирования в Rust!