Skip to content

Conversation

@vtnerd
Copy link
Owner

@vtnerd vtnerd commented Dec 13, 2025

This includes changes in the #3 lookahead PR.

This transitions the http client to boost::beast such that the REST calls run asynchronously in a boost::asio event loop. The objective is to introduce a "push" (websocket) interface from the server, such that polling is no longer needed on the frontend. This should reduce server overload, but add some complexity on both ends. The code will automatically fall back onto a polling scheme if the server doesn't support the new websocket mode.

I'm leaving this as draft until the lookahead patch gets finalized; fcmp++ spending is a higher priority.

@vtnerd vtnerd closed this Jan 7, 2026
@vtnerd vtnerd reopened this Jan 7, 2026
@vtnerd
Copy link
Owner Author

vtnerd commented Jan 7, 2026

Force pushed missing files and a rebase so that merge conflicts were resolved.

@vtnerd
Copy link
Owner Author

vtnerd commented Jan 25, 2026

Force pushed a rebase with some tweaks to the design to make it more robust.

@vtnerd vtnerd force-pushed the update/beast branch 5 times, most recently from 72eeeb8 to 5364569 Compare January 25, 2026 19:20
@vtnerd
Copy link
Owner Author

vtnerd commented Jan 25, 2026

Force pushed a change to Asia handling - the previous version had potential memory leaks.

@vtnerd vtnerd force-pushed the update/beast branch 8 times, most recently from a536921 to c139377 Compare January 26, 2026 04:17
@vtnerd
Copy link
Owner Author

vtnerd commented Jan 26, 2026

Force pushed new unit tests for the boost::beast based http client. This caught two bugs, so it was worth the effort.

The ci has also been updated to run sanitizers against the unit tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants