Как стать автором
Обновить

Комментарии 15

А почему diesel, а не sea_orm?

Ну и warp, а не axum?

Мне кажется это более в тренде сейчас.

Как минимум странно упомянуть сихронный diesel и асинхронный warp рядом. Их точно имеет смысл использовать вместе?

Существует diesel_async. Sqlx тоже подошёл бы. А вот sea_orm - ну это для тех кто еще не прошел через ORM стадию.

Axum, действительно, предпочтительнее.

согласен c axum, я бы тогда сюда reqwest(можно ещё вспомнить всякие вспомогательные типа chrono)

Для чего вводить новый термин (крейт) для тех же сущностей (библиотека/пакет/зависимость)?

Потому что термины library, package, module заняты в расте. К примеру, крейт вообще не обязан быть библиотекой.

https://doc.rust-lang.org/book/ch07-01-packages-and-crates.html

Это скорее набор файлов, который может быть скомпилирован в единую сущность. Причем это сущность может быть как библиотекой, так и исполняемым файлом. Пакетов в рамках языка называется набор крейтов. Получается они захотели дать одно название и для библиотек и для исполняемых файлов, да вообще для любых файлов которые могут быть распростронены в рамках экосистемы. Например так они реализовали воозможность установки "приложений" и расширений в рамках cargo: cargo install и cargo-expand

Потому что фактически - оно единица трансляции компилятора, а не библиотека/пакет/зависимость.

И как минимум стоило упомянуть thiserror, anyhow, chrono, tracing

Я бы еще derive_more упомянул, сильно уменьшает boilerplate код. А для базы по мне sqlx лучше, генерация sql это неоднозначное решение.

structopt в кучу

clap уже умеет из коробки

и анализ кода

syn и quote не анализируют код. Они занимаются обработкой синтаксиса

Раз уж зашла тема про Токио, стоило упомянуть еще мега удобный асинхронный рантайм под no_std, как embassy.

Добавлю itertools - библиотека расширяющая итераторы множеством полезных методов

Зарегистрируйтесь на Хабре, чтобы оставить комментарий