Konstantin A. Olkhovskiy

Results 179 comments of Konstantin A. Olkhovskiy

XML world has a notion of Simple API for XML (SAX). SAX parsers are event-based, they parse the XML format and let the upper level know that we've encountered a...

Hm, if we have that already, why can't Yojson be built on top of `jsonm` codec? Atdgen could also leverage `jsonm` directly for performance reasons. This should satisfy perfectly valid...

> Yojson builds an AST, so by itself has no need for a streaming mode Yojson is pretty popular in the ecosystem, would be awesome to expose streaming mode and...

> Yes, but if you need streaming mode, why not just use `jsonm`? Makes sense overall. Folowing this logic atdgen should not use Yojson for parsing in streaming mode, but...

Hm, last build was using some weird environment. I've ran dune clean to get rid of old artifacts and rebuild from scratch. Backtrace changed a bit: ``` Program received signal...

Cool! For some reason I was trying to add tailcall annotation to pinned faraday repo clone on my laptop and make dune stop on this warning, without any results. Should've...

Just rebuilt with my fork of faraday and it does not segfault any more, although odd behavior with buffering of 3+GB in memory is still in place.

Excessive buffering was due to asynchronous write in example echo handler. Can be fixed like this: ```diff --- a/examples/lib/httpaf_examples.ml +++ b/examples/lib/httpaf_examples.ml @@ -39,8 +39,9 @@ module Server = struct let...

Looks like this issue is not Lwt specific though. Buffer gets pushed to `Httpaf.Server_connection.read`, which (probably) invokes `on_read` callback, passed to `Httpaf.Body.schedule_read`, but there is no way for `on_read` to...

After some time of looking at the code I'm still unable to find the relevant places for such a change :( So far I've worked around this by using Lwt_mutex...