mirror of
https://github.com/boostorg/beast.git
synced 2025-08-03 14:54:32 +02:00
Add release notes to documentation
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
Version 156:
|
||||
|
||||
* Don't use typeid
|
||||
* Add release notes to documentation
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
|
@@ -28,6 +28,7 @@
|
||||
|
||||
[template source_file[path] '''<ulink url="../../'''[path]'''">'''[path]'''</ulink>''']
|
||||
[template include_file[path][^<'''<ulink url="../../../../'''[path]'''">'''[path]'''</ulink>'''>]]
|
||||
[template issue[n] '''(<ulink url="https://github.com/boostorg/beast/issues/'''[n]'''">#'''[n]'''</ulink>)''']
|
||||
|
||||
[def __N3747__ [@http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3747.pdf [*N3747]]]
|
||||
[def __NetTS__ [@http://cplusplus.github.io/networking-ts/draft.pdf [*Networking.TS]]]
|
||||
@@ -111,6 +112,7 @@
|
||||
[include 06_websocket.qbk]
|
||||
[include 07_concepts.qbk]
|
||||
[include 08_design.qbk]
|
||||
[include 09_releases.qbk]
|
||||
|
||||
[section:quickref Reference]
|
||||
[xinclude quickref.xml]
|
||||
|
160
doc/qbk/09_releases.qbk
Normal file
160
doc/qbk/09_releases.qbk
Normal file
@@ -0,0 +1,160 @@
|
||||
[/
|
||||
Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
|
||||
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
Official repository: https://github.com/boostorg/beast
|
||||
]
|
||||
|
||||
[section Release Notes]
|
||||
|
||||
[heading Boost 1.67]
|
||||
|
||||
This version fixes significant defects in
|
||||
[link beast.ref.boost__beast__websocket__stream `websocket::stream`]
|
||||
which can lead to asserts or undefined behavior. Users are encouraged
|
||||
to update to the latest Boost release.
|
||||
|
||||
[*New Features]
|
||||
|
||||
* Move-only completion handlers are supported throughout the library
|
||||
|
||||
* [issue 899] Advanced server examples support idle websocket pings and timeouts
|
||||
|
||||
* [issue 849] WebSocket permessage-deflate support is now a compile-time
|
||||
feature. This adds an additional `bool` template parameter to
|
||||
[link beast.ref.boost__beast__websocket__stream `websocket::stream`]
|
||||
When `deflateSupported` is `true`, the stream will be capable of
|
||||
negotiating the permessage-deflate websocket extension per the
|
||||
configured run-time settings.
|
||||
When `deflateSupported` is `false`, the stream will never negotiate
|
||||
the permessage-deflate websocket extension. Furthermore, all of the
|
||||
code necessary for implementing the permessage-deflate extension
|
||||
will be excluded from function instantiations. Programs which set
|
||||
`deflateSupported` to `false` when instantiating streams will be smaller.
|
||||
|
||||
* [issue 949] WebSocket error codes are revised. New
|
||||
[link beast.ref.boost__beast__websocket__error error codes]
|
||||
are added for more fine-grained failure outcomes. Messages for error
|
||||
codes are more verbose to help pinpoint the problem. Error codes are
|
||||
now also mapped to newly added
|
||||
[link beast.ref.boost__beast__websocket__condition error conditions]
|
||||
to simplify comparisons. The error codes `websocket::error::failed`
|
||||
and `websocket::error::handshake_failed` are removed.
|
||||
Actions required:
|
||||
Code which explicitly compares `error_code` values against
|
||||
the constant `websocket::error::handshake_failed` should compare
|
||||
against
|
||||
[link beast.ref.boost__beast__websocket__condition `websocket::condition::handshake_failed`]
|
||||
instead.
|
||||
Code which explicitly compares error_code values against the
|
||||
constant `websocket::error::failed` should compare
|
||||
against
|
||||
[link beast.ref.boost__beast__websocket__condition `websocket::condition::protocol_violation`]
|
||||
instead.
|
||||
|
||||
[*Improvements]
|
||||
|
||||
* [issue 857]
|
||||
[link beast.ref.boost__beast__http__basic_fields `http::basic_fields`]
|
||||
uses less storage
|
||||
|
||||
* [issue 894]
|
||||
[link beast.ref.boost__beast__http__basic_fields `http::basic_fields`]
|
||||
exception specifiers are provided
|
||||
|
||||
* Implementation no longer uses deprecated `asio::null_buffers`
|
||||
|
||||
* Add [include_file boost/beast/websocket/stream_fwd.hpp]
|
||||
|
||||
* [issue 955] The asynchronous SSL detector example uses a stackless coroutine
|
||||
|
||||
* [link beast.ref.boost__beast__bind_handler `bind_handler`]
|
||||
works with boost placeholders
|
||||
|
||||
|
||||
[*Fixes]
|
||||
|
||||
* Fix "warning: ‘const’ type qualifier on return type has no effect"
|
||||
|
||||
* [issue 916] Tidy up `ssl_stream` special members in
|
||||
[source_file example/common/ssl_stream.hpp]
|
||||
|
||||
* [issue 918] Calls to `<algorithm>` are protected from macros
|
||||
|
||||
* [issue 954] The control callback is invoked on the proper executor
|
||||
|
||||
* [issue 994] Fix iterator version of
|
||||
[link beast.ref.boost__beast__http__basic_fields.erase.overload1 `http::basic_fields::erase`]
|
||||
|
||||
* [issue 992] Fix use-after-move in example request handlers
|
||||
|
||||
* [issue 988] Type check completion handlers
|
||||
|
||||
* [issue 985] Tidy up
|
||||
[link beast.ref.boost__beast__bind_handler `bind_handler`]
|
||||
doc
|
||||
|
||||
* Fix memory leak in advanced server examples
|
||||
|
||||
* [issue 1000] Fix soft-mutex assert in websocket stream.
|
||||
This resolves the assert `"ws_.wr_block_ == tok_"`.
|
||||
|
||||
* [issue 1019] Fix fallthrough warnings
|
||||
|
||||
[*API Changes]
|
||||
|
||||
* [issue 1029] Remove unintended public members of
|
||||
[link beast.ref.boost__beast__handler_ptr `handler_ptr`].
|
||||
Actions required: don't call non-public members.
|
||||
|
||||
* [link beast.ref.boost__beast__handler_ptr `handler_ptr`]
|
||||
is a move-only type, with `unique_ptr` semantics.
|
||||
Actions required: user-defined composed operations using `handler_ptr`
|
||||
to manage state can only be moved, not copied.
|
||||
|
||||
* [link beast.ref.boost__beast__handler_ptr `handler_ptr`]
|
||||
gives the strong exception guarantee. The signature
|
||||
for managed objects constructed by `handler_ptr` now receives a
|
||||
`const` reference to the handler. Actions required: Change the
|
||||
constructor signature for state objects used with `handler_ptr`
|
||||
to receive a `const` reference to the handler.
|
||||
|
||||
* [issue 896]
|
||||
[link beast.ref.boost__beast__http__basic_fields `http::basic_fields`]
|
||||
does not support fancy pointers
|
||||
|
||||
* [link beast.ref.boost__beast__http__parser `http::parser`]
|
||||
is no longer [*MoveConstructible]
|
||||
|
||||
* [issue 930] `http::serializer::reader_impl` is deprecated and will
|
||||
be removed in the next release. Actions required: Call
|
||||
[link beast.ref.boost__beast__http__serializer.writer_impl `http::serializer::writer_impl`]
|
||||
instead of `serializer::reader_impl`.
|
||||
|
||||
* [issue 884] The __BodyReader__ and __BodyWriter__ concept constructor
|
||||
requirements have changed. They now require the header and body
|
||||
elements to be passed as distinct
|
||||
[link beast.ref.boost__beast__http__header `http::header`]
|
||||
and `value_type` objects. This enables the composition of body types.
|
||||
The previous single-argument constructors are deprecated and will be
|
||||
removed in the next version.
|
||||
Actions required: Change user-defined instances of __BodyReader__ or
|
||||
__BodyWriter__ constructor signatures to the two-argument form.
|
||||
Alternatively. define the macro `BOOST_BEAST_ALLOW_DEPRECATED` in
|
||||
the project (which will cause both the new and the deprecated
|
||||
signatures to be accepted).
|
||||
|
||||
* [link beast.ref.boost__beast__websocket__stream.control_callback `websocket::stream::control_callback`]
|
||||
now copies or moves the function object.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[heading Boost 1.66]
|
||||
|
||||
* Initial release
|
||||
|
||||
[endsect]
|
Reference in New Issue
Block a user