Project

General

Profile

Task #4972

Migrate WebSocket face to Boost.Beast

Added by Davide Pesavento 28 days ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Faces
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

websocketpp, the 3rd party library we're currently using for WebSocket support in NFD, seems to be unmaintained. There have been no commits to the upstream repo for the whole past year. The latest code is incompatible with Boost >= 1.70, but so far no fix has been merged upstream, even though an issue was filed in February and a PR submitted in April. It is only a matter of time before more breakage occurs.

My suggestion is to switch to the Boost.Beast library. The fact that it's part of Boost ensures a minimal level of maintenance even if in the future the primary author disappears. One potential issue is that it's only available since Boost 1.66, so for older platforms we'll have to either keep the websocketpp-based code alongside the new Beast-based code, or bundle a copy of Beast (it's header-only).

Also available in: Atom PDF