Skip to content

Mark vtnerd 2024-q3 Completed

The bulk of the time was making LWS HTTP client requests asynchronous - the scanner, exchange rates, and /login are no longer blocked by I/O.

LWS /get_random_outs is also now asynchronous, but this may need to be tweaked once Boost 1.87 is released. Making /get_random_outs asynchronous took a decent chunk of time because I spent time trying to use asio::coroutine for the endpoint, but it proved too difficult and I went with a stackful approach.

I updated the LWS ASIO usage to move away from deprecated features. Boost 1.87 removes lots of deprecated, so this makes LWS more "future-proof".

I also spent a good chunk of hours on updating monerod "span" code. The time was primarily spent on auditing the code + testing, as we can't have any bug regressions in this portion of the code.

I also spent ~5 hours looking into a Tor control connection implementation for monerod, but declined to go further after looking at some of the details.

I spent a few hours updating my TCP throttling performance fix. A functional_test is still not working, so I will spend some time fixing this (possibly before my next CCS).

I updated LMDB static_asserts for boost::uuids::uuid, updated LMDB try_write, updated byte_stream in release branch, fixed bug in byte_slice, fixed LMDB reader bug in LWS scanner, fixed another scanner bug in LWS, and fixed shutdown bug in LWS.

There was also a small amount of time spent reviewing other PRs in monerod.

I've probably missed a few things, this was a somewhat busy month of work.

Merge request reports

Loading