Closed danslapman closed 8 months ago
Thanks for the feedback! It's odd that I haven't seen bug reports yet, did you encounter any?
I'm also in need of an HTTP server for Kyo. Did you see the initial integration in the repo? It uses this monad definition from the sttp module but it also relies on Flat.unsafe
for error handling.
I'll take a look if it'd be possible to avoid the flat check for error handling (Tries.run
). It's a common operation and ends up making the check appear in several unexpected places.
Thanks @fwbrasil, I definitely missed that code 😅 I will try to adopt it. As for bugs - I didn't encounter something yet, I'll report back after minimal working rewrite
@danslapman I used Kyo for a performance benchmark challenge and finalized the initial version of the Tapir integration for it. I've submitted a few optimizations to Tapir as well. The documentation for the module is still missing but you can take a look at the usage here: https://github.com/fwbrasil/rinha-2024-q1/tree/main/src/main/scala/rinha
Closing in favor of https://github.com/getkyo/kyo/issues/219
Hi! Being pretty impressed with
kyo
's features i tried to migrate one of my application fromZIO
toKYO
. Since it is a tapir-based backend the first thing i needed was to implement some kind oftapir-kyo
integration module. Result of my attempt can be found here.sttp
's design relies onMonadError
, so, I decided to bound my effect withAborts
. Here came the first problem -Flat
's: it's impossible to add an extra bound to an arbitrary typeclass method. For the experiment I ended up withFlat.unsafe.unchecked
. On the next step I finally stuck with another problem -Tag
's, which again couldn't be provided.Am I mistaken in the way I designed my instances? While it's not entirely necessary - I agree we can get rid of
tapir
and build an application withoutcats
/scalaz
/whatever, I think it's good to have a way to live side-by-side.Anyway, thanks for the fantastic effort on KYO, Quill and all other brilliant libraries!