[Libwebsockets] Next lws release coming up

Roger Light roger at atchoo.org
Thu Apr 26 11:18:33 CEST 2018

Hi Andy,

I've not found anything broken in my tests on Linux so far. Is there
any chance you could update the ABI timeline to the compare 2.4.2 and
the current master?




On 25 April 2018 at 08:57, Andy Green <andy at warmcat.com> wrote:
> Hi -
> In the next days I plan to release a new stable version of lws.
> Since v2.4, I added a bunch of CI QA, currently 1.2K tests per push
> including all working autobahn client + server.  If any of those tests fail
> it breaks the travis build.
> Currently two sets of test are broken in autobahn itself:
> https://github.com/crossbario/autobahn-testsuite/issues/71
> since Aug 2017, ie, basically Autobahn is unmaintained.  Autobahn long ago
> decided to test for a couple of useless things not in RFC6455, 10 x pings
> spammed getting 10 x pong results pipelined, which is not what anybody
> actually uses ws ping for and is not in the ws spec at all.  So two
> individual tests related to that we do not perform.  Otherwise it is
> everything else, 480 tests each for client and server mode.
> attack.sh is also run on every commit, which tests hundreds of http parsing
> variants and if you did not yet notice, I added 32 x "minimal examples"
> https://github.com/warmcat/libwebsockets/tree/master/minimal-examples
> which largely replace the test apps and are build-tested plus 29 scenarios
> of those also runtime-tested each push.
> The CI improvements has enabled a giant cleanup and refactor of the code
> structure over the last weeks... some of the code is 8 years old and overdue
> for some sprucing up.  To prepare for the future, I introduced "roles",
> which encapsulate in the source the different domains lws covers, like h1,
> h2, ws, raw etc.
> These are now implemented though an ops-style structs that defines how a wsi
> that became bound to a particular role actually does thing.  For example,
> all roles have their user code send things by lws_write()... but now that
> boils down to a ->write_role_protocol() callback on the role struct the wsi
> is bound to.  The different roles do whatever their role requires to prepare
> the payload and send it... lws_write() itself is now just a few lines.
> Along with that the roles have become more controllable for build.  Even ws
> support, via LWS_ROLE_WS in cmake, is now optional.
> Your can read some docs about how to add new roles here
> https://github.com/warmcat/libwebsockets/tree/master/lib/roles
> It would be great if lws users confirm current master against their codebase
> and let me know about any problems.  That isn't what has happened in the
> past, people just want to find version x.0 is always perfect without them
> having to do anything.
> Please give even a little back by looking for problems with what will become
> the new release now, or even better actually contributing something.
> -Andy
> _______________________________________________
> Libwebsockets mailing list
> Libwebsockets at ml.libwebsockets.org
> https://libwebsockets.org/mailman/listinfo/libwebsockets

More information about the Libwebsockets mailing list