prepare for new release
This commit is contained in:
parent
c99a99e9b4
commit
1c08a96b47
3 changed files with 177 additions and 15 deletions
|
@ -135,13 +135,13 @@ project(libwebsockets C)
|
|||
|
||||
set(PACKAGE "libwebsockets")
|
||||
set(CPACK_PACKAGE_NAME "${PACKAGE}")
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR "2")
|
||||
set(CPACK_PACKAGE_VERSION_MINOR "4")
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR "3")
|
||||
set(CPACK_PACKAGE_VERSION_MINOR "0")
|
||||
set(CPACK_PACKAGE_VERSION_PATCH "0")
|
||||
set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
|
||||
set(CPACK_PACKAGE_VENDOR "andy@warmcat.com")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PACKAGE} ${PACKAGE_VERSION}")
|
||||
set(SOVERSION "12")
|
||||
set(SOVERSION "13")
|
||||
if(NOT CPACK_GENERATOR)
|
||||
if(UNIX)
|
||||
set(CPACK_GENERATOR "TGZ")
|
||||
|
|
169
changelog
169
changelog
|
@ -1,6 +1,175 @@
|
|||
Changelog
|
||||
---------
|
||||
|
||||
v3.0.0
|
||||
======
|
||||
|
||||
- CHANGE: Clients used to call LWS_CALLBACK_CLOSED same as servers...
|
||||
LWS_CALLBACK_CLIENT_CLOSED has been introduced and is called for clients
|
||||
now.
|
||||
|
||||
- CHANGE: LWS_CALLBACK_CLIENT_CONNECTION_ERROR used to only be directed at
|
||||
protocols[0]. However in many cases, the protocol to bind to was provided
|
||||
at client connection info time and the wsi bound accordingly. In those
|
||||
cases, CONNECTION_ERROR is directed at the bound protocol, not protcols[0]
|
||||
any more.
|
||||
|
||||
- CHANGE: CMAKE: the following cmake defaults have changed with this version:
|
||||
|
||||
- LWS_WITH_ZIP_FOPS: now defaults OFF
|
||||
- LWS_WITH_RANGES: now defaults OFF
|
||||
- LWS_WITH_ZLIB: now defaults OFF
|
||||
- LWS_WITHOUT_EXTENSIONS: now defaults ON
|
||||
|
||||
- CHANGE: REMOVED: lws_alloc_vfs_file() (read a file to malloc buffer)
|
||||
|
||||
- CHANGE: REMOVED: lws_read() (no longer useful outside of lws internals)
|
||||
|
||||
- CHANGE: REMOVED: ESP8266... ESP32 is now within the same price range and much
|
||||
more performant
|
||||
|
||||
- CHANGE: soname bump... don't forget to `ldconfig`
|
||||
|
||||
- NEW: all event libraries support "foreign" loop integration where lws itself
|
||||
if just a temporary user of the loop unrelated to the actual loop lifecycle.
|
||||
|
||||
See `minimal-http-server-eventlib-foreign` for example code demonstrating
|
||||
this for all the event libraries.
|
||||
|
||||
Internal loop in lws is also supported and demonstrated by
|
||||
`minimal-http-server-eventlib`.
|
||||
|
||||
- NEW: ws-over-h2 support. This is a new RFC-on-the-way supported by Chrome
|
||||
and shortly firefox that allows ws connections to be multiplexed back to the
|
||||
server on the same tcp + tls wrapper h2 connection that the html and scripts
|
||||
came in on. This is hugely faster that discrete connections.
|
||||
|
||||
- NEW: UDP socket adoption and related event callbacks
|
||||
|
||||
- NEW: Multi-client connection binding, queuing and pipelining support.
|
||||
|
||||
Lws detects multiple client connections to the same server and port, and
|
||||
optimizes how it handles them according to the server type and provided
|
||||
flags. For http/1.0, all occur with individual parallel connections. For
|
||||
http/1.1, you can enable keepalive pipelining, so the connections occur
|
||||
sequentially on a single network connection. For http/2, they all occur
|
||||
as parallel streams within a single h2 network connection.
|
||||
|
||||
See minimal-http-client-multi for example code.
|
||||
|
||||
- NEW: High resolution timer API for wsi, get a callback on your wsi with
|
||||
LWS_CALLBACK_TIMER, set and reset the timer with lws_set_timer_usecs(wsi, us)
|
||||
Actual resolution depends on event backend. Works with all backends, poll,
|
||||
libuv, libevent, and libev.
|
||||
|
||||
- NEW: Protocols can arrange vhost-protocol instance specific callbacks with
|
||||
second resolution using `lws_timed_callback_vh_protocol()`
|
||||
|
||||
- NEW: ACME client plugin for self-service TLS certificates
|
||||
|
||||
- NEW: RFC7517 JSON Web Keys RFC7638 JWK thumbprint, and RFC7515 JSON Web
|
||||
signatures support
|
||||
|
||||
- NEW: lws_cancel_service() now provides a generic way to synchronize events
|
||||
from other threads, which appear as a LWS_CALLBACK_EVENT_WAIT_CANCELLED
|
||||
callback on all protocols. This is compatible with all the event libraries.
|
||||
|
||||
- NEW: support BSD poll() where changes to the poll wait while waiting are
|
||||
undone.
|
||||
|
||||
- NEW: Introduce generic hash, hmac and RSA apis that operate the same
|
||||
regardless of OpenSSL or mbedTLS tls backend
|
||||
|
||||
- NEW: Introduce X509 element query api that works the same regardless of
|
||||
OpenSSL or mbedTLS tls backend
|
||||
|
||||
- NEW: Introduce over 30 "minimal examples" in ./minimal-examples... these
|
||||
replace most of the old test servers
|
||||
|
||||
- test-echo -> minimal-ws-server-echo and minimal-ws-client-echo
|
||||
|
||||
- test-server-libuv / -libevent / -libev ->
|
||||
minimal-https-server-eventlib / -eventlib-foreign / -eventlib-demos
|
||||
|
||||
- test-server-v2.0 -> folded into all the minimal servers
|
||||
|
||||
- test-server direct http serving -> minimal-http-server-dynamic
|
||||
|
||||
The minimal examples allow individual standalone build using their own
|
||||
small CMakeLists.txt.
|
||||
|
||||
- NEW: lws now detects any back-to-back writes that did not go through the
|
||||
event loop inbetween and reports them. This will flag any possibility of
|
||||
failure rather than wait until the problem happens.
|
||||
|
||||
- NEW: CMake has LWS_WITH_DISTRO_RECOMMENDED to select features that are
|
||||
appropriate for distros
|
||||
|
||||
- NEW: Optional vhost URL `error_document_404` if given causes a redirect there
|
||||
instead of serve the default 404 page.
|
||||
|
||||
- NEW: lws_strncpy() wrapper guarantees NUL in copied string even if it was
|
||||
truncated to fit.
|
||||
|
||||
- NEW: for client connections, local protocol binding name can be separated
|
||||
from the ws subprotocol name if needed, using .local_protocol_name
|
||||
|
||||
- NEW: Automatic detection of time discontiguities
|
||||
|
||||
- NEW: Applies TCP_USER_TIMEOUT for Linux tcp keepalive where available
|
||||
|
||||
- QA: 1600 tests run on each commit in Travis CI, including almost all
|
||||
Autobahn in client and server mode, various h2load tests, h2spec, attack.sh
|
||||
the minimal example selftests and others.
|
||||
|
||||
- QA: fix small warnings introduced on gcc8.x (eg, Fedora 28)
|
||||
|
||||
- QA: Add most of -Wextra on gcc (-Wsign-compare, -Wignored-qualifiers,
|
||||
-Wtype-limits, -Wuninitialized)
|
||||
|
||||
- QA: clean out warnings on windows
|
||||
|
||||
- QA: pass all 146 h2spec tests now on strict
|
||||
|
||||
- QA: introduce 35 selftests that operate different minimal examples against
|
||||
each other and confirm the results.
|
||||
|
||||
- QA: LWS_WITH_MINIMAL_EXAMPLES allows mass build of all relevant minimal-
|
||||
examples with the LWS build, for CI and to make all the example binaries
|
||||
available from the lws build dir ./bin
|
||||
|
||||
- REFACTOR: the lws source directory layout in ./lib has been radically
|
||||
improved, and there are now README.md files in selected subdirs with extra
|
||||
documentation of interest to people working on lws itself.
|
||||
|
||||
- REFACTOR: pipelined transactions return to the event loop before starting the
|
||||
next part.
|
||||
|
||||
- REFACTOR: TLS: replace all TLS library constants with generic LWS ones and
|
||||
adapt all the TLS library code to translate to these common ones.
|
||||
|
||||
Isolated all the tls-related private stuff in `./lib/tls/private.h`, and all
|
||||
the mbedTLS stuff in `./lib/tls/mbedtls` + openSSL stuff in
|
||||
`./lib/tls/openssl`
|
||||
|
||||
- REFACTOR: the various kinds of wsi possible with lws have been extracted
|
||||
from the main code and isolated into "roles" in `./lib/roles` which
|
||||
communicate with the core code via an ops struct. Everything related to
|
||||
ah is migrated to the http role.
|
||||
|
||||
wsi modes are eliminated and replaced by the ops pointer for the role the
|
||||
wsi is performing. Generic states for wsi are available to control the
|
||||
lifecycle using core code.
|
||||
|
||||
Adding new "roles" is now much easier with the changes and ops struct to
|
||||
plug into.
|
||||
|
||||
- REFACTOR: reduce four different kinds of buffer management in lws into a
|
||||
generic scatter-gather struct lws_buflist.
|
||||
|
||||
- REFACTOR: close notifications go through event loop
|
||||
|
||||
|
||||
v2.4.0
|
||||
======
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Name: libwebsockets
|
||||
Version: 2.4.0
|
||||
Version: 3.0.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Websocket Server and Client Library
|
||||
|
||||
|
@ -48,20 +48,10 @@ rm -rf $RPM_BUILD_ROOT
|
|||
%defattr(-,root,root,-)
|
||||
%attr(755,root,root)
|
||||
/usr/bin/libwebsockets-test-server
|
||||
/usr/bin/libwebsockets-test-server-extpoll
|
||||
/usr/bin/libwebsockets-test-client
|
||||
/usr/bin/libwebsockets-test-ping
|
||||
/usr/bin/libwebsockets-test-echo
|
||||
/usr/bin/libwebsockets-test-fraggle
|
||||
/usr/bin/libwebsockets-test-fuzxy
|
||||
/usr/bin/libwebsockets-test-lejp
|
||||
/usr/bin/libwebsockets-test-server-pthreads
|
||||
/usr/bin/libwebsockets-test-server-libev
|
||||
/usr/bin/libwebsockets-test-server-libuv
|
||||
/usr/bin/libwebsockets-test-server-v2.0
|
||||
/usr/bin/libwebsockets-test-sshd
|
||||
/usr/bin/lwsws
|
||||
/%{_libdir}/libwebsockets.so.12
|
||||
/%{_libdir}/libwebsockets.so.13
|
||||
/%{_libdir}/libwebsockets.so
|
||||
/%{_libdir}/cmake/libwebsockets/LibwebsocketsConfig.cmake
|
||||
/%{_libdir}/cmake/libwebsockets/LibwebsocketsConfigVersion.cmake
|
||||
|
@ -78,6 +68,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||
/%{_libdir}/pkgconfig/libwebsockets_static.pc
|
||||
|
||||
%changelog
|
||||
* Mon May 4 2018 Andy Green <andy@warmcat.com> 3.0.0-1
|
||||
- MAJOR SONAMEBUMP APICHANGES Upstream 3.0.0 release
|
||||
|
||||
* Mon Oct 16 2017 Andy Green <andy@warmcat.com> 2.4.0-1
|
||||
- MAJOR SONAMEBUMP APICHANGES Upstream 2.4.0 release
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue