Kerrigan
собери дохулиард звездочек
Kerrigan
надо кстати свой доделать
Anton
Я звездочки собирать на гуй либу буду
Kerrigan
из готового
Anton
А тут хочу готовенькое
Kerrigan
вкрутить туда маппер регэкспов
Alexander
Много чего не надо: роутер, статик-файлы, сжатие или хотя бы возможность впилить. + Куки, аплоады.
Kerrigan
и кекать на тем как оно память постоянно аллоцирует
Маjко
Неужели нет готового?
Маjко
Мы сейчас микрофреймворк вокруг концепции миддлвари юзаем для гипера, мб опенсорснем, там и статика есть и роутер (стыдный)
Маjко
Проблема основная с этими всеми штуками на гипере в том, что там всё очень хуево с композицией. То есть если ты хочешь зачейнить пару сервисов, то надо их либо прям в их коде вызывать следующий сервис, либо строить свою абстракцию типа миддлвейров (которые без ущерба производительности удобно сделать тяжело)
Маjко
В итоге любая попытка сделать гипер удобным вырастает в очередной микрофреймворк, который никому не нужен потому что несовместим со всем остальным, а доделывать его до полноценного фреймворка никому не уперлось
Max
+ писать на голом хипере что-то большее, чем 15 строк очень сложно и выглядит как говно
Filipp
а в айроне миддлварь тоже неоптимально композится?
Filipp
и че страдать с гипером как вы?
Max
Маjко
Да, у нас хотя бы всё асинхронное
Маjко
cargo tree и чекай чтобы не было двух гиперов
Cuno
Версии не сходятся.
Max
да, это я уже поправил (там была ошибка не в разных версиях хипера, как ни странно)
Max
(лайфтаймы)
Marat
Гипер уже перевели с tokio-core на tokio?
Max
И кстати, я чтонибуть потеряю, если буду юзать не type Future = Box<Future<Item = Self::Response, Error = Self::Error>> а type Future = FutureResult<Self::Response, Self::Error> Прост этот Box::new(Response::new()) заебал
Маjко
Да)
Маjко
Ты не можешь разные фьючи возвращать из функции
Max
(кроме анальной девственности)
Маjко
Marat
Чтобы только на найтли работало
Max
Ок
Маjко
Возвращай impl Future
Разные фьючи он все равно не вернет
Маjко
Either есть для этого.
Вместо бокса, обработка either
Маjко
Ну хз, так себе альтернативна
Маjко
Бокс упрощает жизнь, если не нужно суперспида
Max
Ну оно всё равно не работает (даже если вручную Future расписать)
Loo
Асинк авэйт
Loo
Финк абаут ит
Anton
Кстати
Anton
почему нет новости
Anton
о создании самой полезной программ
Anton
на расте?
Anton
https://github.com/svenstaro/genact
Anton
Вообще охуели
Kerrigan
было уже
Kerrigan
на жс тоже работает
Sergey
https://github.com/svenstaro/genact
давно пользуюсь уже
Маjко
Маjко
Эээ
Маjко
Слыш
Sergey
😄
Sergey
в коде с миддлварями хуй разберешься че там
Маjко
Да наоборот же
Маjко
Все как раз становится удобным и реюзабельным
Sergey
ну хз
Sergey
а че за две точки?
Sergey
типа вмешать оставшиеся свойства из default?
Alex
или из другого инстанса
Sergey
воу
Sergey
не видел такого синтаксиса
Alex
https://doc.rust-lang.org/book/second-edition/ch05-01-defining-structs.html#creating-instances-from-other-instances-with-struct-update-syntax
Sergey
спасибо
Sergey
а это что?
Sergey
присваивание в скобках
Sergey
можно присвоить значение внутрь результата функции?
Sergey
или это внутрь указателя?
պլհկ
Это бороу чекер обманули вангую
Sergey
https://github.com/marad/hyper-router/blob/376147e8361ed9e2102b80417b2b93315e8bd3e4/src/handlers.rs#L5
պլհկ
Убери скобки и посмотри что будет
Sergey
IDEA начала дико медленно работать с растом
Sergey
чет не въеду как в hyper забрать body из post
Max
body.concat2() .map_err(GraphQLServiceError::Hyper) .and_then(|body| serde_json::from_slice(&body).map_err(GraphQLServiceError::Serde))
Sergey
а если файл?