Size: a a a

Rust — русскоговорящее сообществo

2020 April 20

Э

Эрик in Rust — русскоговорящее сообществo
Ну, типы функций да. Но кложуры с захватом без бокса вообще не работают. А где ты последний раз видел кложуру без захвата окружения? Ну, кроме микрофункций.
источник

K

Kitsu in Rust — русскоговорящее сообществo
Pavel Kvasnikov
Подскажите есть какие-нибудь либы для работы с аргументами командной строки? Чтобы можно было как-то декларативно описать какие могут быть параметры, как у них допустимые значения и ошибки
Если нужно декларативно, то structopt самое оно
источник

В

Вафель in Rust — русскоговорящее сообществo
Эрик
Ну, типы функций да. Но кложуры с захватом без бокса вообще не работают. А где ты последний раз видел кложуру без захвата окружения? Ну, кроме микрофункций.
Постоянно вижу кложуры без захвата окружения в методах вроде .map.

> Но кложуры с захватом без бокса вообще не работают

define работают; Я отлично развлекался с функциями без всяких боксов
источник

PK

Pavel Kvasnikov in Rust — русскоговорящее сообществo
Kitsu
Если нужно декларативно, то structopt самое оно
У меня предполагается что будут ирерахические опции
источник

K

Kitsu in Rust — русскоговорящее сообществo
Pavel Kvasnikov
У меня предполагается что будут ирерахические опции
там это все есть через енамы
источник

K

Kitsu in Rust — русскоговорящее сообществo
источник

PK

Pavel Kvasnikov in Rust — русскоговорящее сообществo
Это покрасивиее, спасибо
источник

МЛ

Михаил Лёсин in Rust — русскоговорящее сообществo
Я хочу написать интеграционные тесты для своего модуля, но т.к. он работает с файловой структурой, мне надо уметь все за ним подчищать после каждого теста, даже если там жопа жопская случилась. Есть какие-то подходы наиболее правильные для этого? Где про это почитать?
я нагуглил вот такое: https://medium.com/@ericdreichert/test-setup-and-teardown-in-rust-without-a-framework-ba32d97aa5ab
но тут обрабатываются только unwind panic, а если вдруг будет просто завершение, все обломится. может есть какой-то фреймворк который тест запускает в отдельном потоке, чтобы ловить все паники?
источник

Э

Эрик in Rust — русскоговорящее сообществo
Михаил Лёсин
Я хочу написать интеграционные тесты для своего модуля, но т.к. он работает с файловой структурой, мне надо уметь все за ним подчищать после каждого теста, даже если там жопа жопская случилась. Есть какие-то подходы наиболее правильные для этого? Где про это почитать?
я нагуглил вот такое: https://medium.com/@ericdreichert/test-setup-and-teardown-in-rust-without-a-framework-ba32d97aa5ab
но тут обрабатываются только unwind panic, а если вдруг будет просто завершение, все обломится. может есть какой-то фреймворк который тест запускает в отдельном потоке, чтобы ловить все паники?
Просто Drop сделай для TempFolder и удаляй папку когда дропается, нет?
источник

Э

Эрик in Rust — русскоговорящее сообществo
А если залипнет, так руками удаляй, явно что-то не так пошло.
источник

ЕХ

Евгений Худоба in Rust — русскоговорящее сообществo
Можно чистить на старте теста. Так и разбираться в ошибке будет проще.
источник

Э

Эрик in Rust — русскоговорящее сообществo
Есть ещё вариант сделать
struct Bomb;
impl Drop for Bomb {
fn drop(&mut self) {}
}

fn main() {
 let bomb = Bomb::new();
 maybe_panic_function();
 mem::forget(bomb);
}
источник

ML

Mike Lubinets in Rust — русскоговорящее сообществo
Михаил Лёсин
Я хочу написать интеграционные тесты для своего модуля, но т.к. он работает с файловой структурой, мне надо уметь все за ним подчищать после каждого теста, даже если там жопа жопская случилась. Есть какие-то подходы наиболее правильные для этого? Где про это почитать?
я нагуглил вот такое: https://medium.com/@ericdreichert/test-setup-and-teardown-in-rust-without-a-framework-ba32d97aa5ab
но тут обрабатываются только unwind panic, а если вдруг будет просто завершение, все обломится. может есть какой-то фреймворк который тест запускает в отдельном потоке, чтобы ловить все паники?
Крейт tempdir
источник

МЛ

Михаил Лёсин in Rust — русскоговорящее сообществo
Mike Lubinets
Крейт tempdir
Спасибо,ща гляну
источник

Э

Эрик in Rust — русскоговорящее сообществo
Но там надо аккуратно с тем, чтобы всякие аллокации не утекали, то есть в Bomb<'a, T: 'a>(T) надо хранить что-то, что не потечёт.
источник

V

Vetro in Rust — русскоговорящее сообществo
Какой есть простенький бенч для веб сервера? wrk2 вроде назывался, оно?
источник

G

Gymmasssorla in Rust — русскоговорящее сообществo
wrk мегапростой
источник

e

egoarka in Rust — русскоговорящее сообществo
wrk с исходников долго собирается (бинарником не шарят)
так проще ab от апача поставить
источник

AT

Alexander Tchitchigin in Rust — русскоговорящее сообществo
Vetro
Какой есть простенький бенч для веб сервера? wrk2 вроде назывался, оно?
tcpkali 😊
источник

AT

Alexander Tchitchigin in Rust — русскоговорящее сообществo
Yandex Tank ещё есть + куча других...
источник