2018-10-07 13:11:57 +08:00
|
|
|
[](https://travis-ci.org/warmcat/libwebsockets) [](https://ci.appveyor.com/project/lws-team/libwebsockets) [](https://scan.coverity.com/projects/3576) [](https://bestpractices.coreinfrastructure.org/projects/2266)
|
2014-12-01 01:21:10 +01:00
|
|
|
|
2018-07-30 15:22:33 +08:00
|
|
|

|
2014-12-01 01:21:10 +01:00
|
|
|
|
2017-03-16 10:46:31 +08:00
|
|
|
News
|
|
|
|
----
|
|
|
|
|
2018-09-02 14:35:37 +08:00
|
|
|
## v3.0.1 released
|
|
|
|
|
|
|
|
See the git log for the list of fixes.
|
|
|
|
|
2018-05-07 13:38:53 +08:00
|
|
|
## v3.0.0 released
|
|
|
|
|
2018-06-11 14:29:07 +08:00
|
|
|
See the changelog for info https://libwebsockets.org/git/libwebsockets/tree/changelog?h=v3.0-stable
|
2018-05-07 13:38:53 +08:00
|
|
|
|
2018-04-20 10:33:23 +08:00
|
|
|
## Major CI improvements for QA
|
|
|
|
|
|
|
|
The Travis build of lws done on every commit now runs
|
|
|
|
|
|
|
|
Tests|Count|Explanation
|
|
|
|
---|---|---
|
2018-05-01 12:41:42 +08:00
|
|
|
Build / Linux / gcc|14|-Wall -Werror cmake config variants
|
|
|
|
Build / Mac / Clang|14|-Wall -Werror cmake config variants
|
2018-04-20 10:33:23 +08:00
|
|
|
Build / Windows / MSVC|7|default
|
2018-05-01 12:41:42 +08:00
|
|
|
Selftests|openssl:33, mbedtls:33|minimal examples built and run against each other and remote server
|
2018-04-20 10:33:23 +08:00
|
|
|
attack.sh|225|Correctness, robustness and security tests for http parser
|
|
|
|
Autobahn Server|480|Testing lws ws client, including permessage-deflate
|
|
|
|
Autobahn Client|480|Testing lws ws server, including permaessage-deflate
|
2018-05-01 12:41:42 +08:00
|
|
|
h2spec|openssl:146, mbedtls:146|Http/2 server compliance suite (in strict mode)
|
|
|
|
h2load|openssl:6, mbedtls:6|Http/2 server load tool (checks 10K / 100K in h1 and h2, at 1, 10, 100 concurrency)
|
2018-04-27 13:09:15 +08:00
|
|
|
h2load SMP|6|Http/2 and http/1.1 server load checks on SMP server build
|
2018-04-20 10:33:23 +08:00
|
|
|
|
2018-05-01 12:41:42 +08:00
|
|
|
The over 1,500 tests run on every commit take most of an hour to complete.
|
2018-04-20 10:33:23 +08:00
|
|
|
If any problems are found, it breaks the travis build, generating an email.
|
|
|
|
|
|
|
|
Current master passes all the tests and these new CI arrangements will help
|
|
|
|
keep it that way.
|
|
|
|
|
2018-03-11 11:26:06 +08:00
|
|
|
## Lws has the first official ws-over-h2 server support
|
|
|
|
|
2018-08-14 19:09:23 +08:00
|
|
|

|
2018-03-22 07:44:02 +08:00
|
|
|
|
2018-03-20 13:28:25 +08:00
|
|
|
There's a new standard on the RFC track that enables multiplexing ws connections
|
2018-03-11 11:26:06 +08:00
|
|
|
over an http/2 link. Compared to making individual tcp and tls connections for
|
|
|
|
each ws link back to the same server, this makes your site start up radically
|
2018-03-20 13:28:25 +08:00
|
|
|
faster, and since all the connections are in one tls tunnel, with considerable memory
|
2018-03-11 11:26:06 +08:00
|
|
|
reduction serverside.
|
|
|
|
|
|
|
|
To enable it on master you just need -DLWS_WITH_HTTP2=1 at cmake. No changes to
|
|
|
|
existing code are necessary for either http/2 (if you use the official header creation
|
|
|
|
apis if you return your own headers, as shown in the test apps for several versions)
|
|
|
|
or to take advantage of ws-over-h2. When built with http/2 support, it automatically
|
|
|
|
falls back to http/1 and traditional ws upgrade if that's all the client can handle.
|
|
|
|
|
2018-03-20 13:28:25 +08:00
|
|
|
Currently only Chrome Canary v67 supports this ws-over-h2 encapsulation (chrome
|
|
|
|
must be started with `--enable-websocket-over-http2` switch to enable it currently)
|
|
|
|
but the other browsers will catch up soon.
|
2018-03-11 11:26:06 +08:00
|
|
|
|
2018-03-08 12:04:13 +08:00
|
|
|
## New "minimal examples"
|
|
|
|
|
2018-06-11 14:29:07 +08:00
|
|
|
https://libwebsockets.org/git/libwebsockets/tree/minimal-examples
|
2018-03-08 12:04:13 +08:00
|
|
|
|
2018-07-30 15:22:33 +08:00
|
|
|
These are like the test apps, but focus on doing one thing, the best way, with the
|
|
|
|
minimum amount of code. For example the minimal-http-server serves the cwd on
|
|
|
|
http/1 or http/2 in 50 LOC. Same thing with tls is just three more lines.
|
2018-03-08 12:04:13 +08:00
|
|
|
|
2018-03-20 13:28:25 +08:00
|
|
|
They build standalone, so it's easier to copy them directly to start your own project; they
|
2018-03-08 12:04:13 +08:00
|
|
|
are CC0 licensed (public domain) to facilitate that.
|
|
|
|
|
|
|
|
## Windows binary builds
|
|
|
|
|
2018-07-30 15:22:33 +08:00
|
|
|
32- and 64-bit Windows binary builds are available via Appveyor. Visit
|
|
|
|
[lws on Appveyor](https://ci.appveyor.com/project/lws-team/libwebsockets),
|
2017-10-26 07:24:45 +08:00
|
|
|
click on a build, the ARTIFACTS, and unzip the zip file at `C:\Program Files (x86)/libwebsockets`.
|
|
|
|
|
2018-03-08 12:04:13 +08:00
|
|
|
## ESP32 is supported
|
2017-07-28 14:13:42 +08:00
|
|
|
|
2017-03-16 10:46:31 +08:00
|
|
|
ESP32 is now supported in lws! Download the
|
|
|
|
|
2018-06-11 14:29:07 +08:00
|
|
|
- factory https://warmcat.com/git/lws-esp32-factory/ and
|
|
|
|
- test server app https://warmcat.com/git/lws-esp32-test-server-demos
|
2017-03-16 10:46:31 +08:00
|
|
|
|
2018-03-08 12:04:13 +08:00
|
|
|
The ESP32 stuff has my dynamic mbedtls buffer allocation patches applied,
|
|
|
|
which reduce allocation for small payload TLS links by around 26KiB per connection.
|
|
|
|
|
|
|
|
## Support
|
2016-08-07 08:33:08 +08:00
|
|
|
|
2013-02-06 16:07:27 +09:00
|
|
|
This is the libwebsockets C library for lightweight websocket clients and
|
|
|
|
servers. For support, visit
|
|
|
|
|
2016-02-21 10:42:46 +08:00
|
|
|
https://libwebsockets.org
|
2013-02-06 16:07:27 +09:00
|
|
|
|
|
|
|
and consider joining the project mailing list at
|
|
|
|
|
2016-02-21 10:42:46 +08:00
|
|
|
https://libwebsockets.org/mailman/listinfo/libwebsockets
|
2013-02-06 16:07:27 +09:00
|
|
|
|
2016-02-21 10:42:46 +08:00
|
|
|
You can get the latest version of the library from git:
|
2013-02-06 16:07:27 +09:00
|
|
|
|
2016-02-21 10:42:46 +08:00
|
|
|
- https://libwebsockets.org/git
|
2013-02-06 16:07:27 +09:00
|
|
|
|
2016-06-20 17:05:31 +08:00
|
|
|
Doxygen API docs for master: https://libwebsockets.org/lws-api-doc-master/html/index.html
|
2013-02-06 16:07:27 +09:00
|
|
|
|