API Changes:
`string_param`, which was previously the argument type when setting field values
has been replaced by `string_view`. Because of this, it is no longer possible to
set message field values directly as integrals.
Users are required to convert numeric arguments to a string type prior to calling
`fields::set` et. al.
Beast provides the non-allocating `to_static_string()` function for this purpose.
To set Content-Length field manually, call `message::content_length`.
fixes#1956
When using `beast::tcp_stream`, the user must make sure that async operations
are initiated from within the strand associated with the stream.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com>
`asio::spawn` is an extension, which is not part of
the Networking TS, so the `net` alias is not appropriate in this case.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com>
`asio::coroutine` is an extension, which is not part of
the Networking TS, so the `net` alias is not appropriate in this case.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com>
- Don't set the global link settings (`<link>`) to avoid dependency
ordering issues in the future.
- Allow the user to decide on the link settings for dependencies
(filesystem/coroutine).
- Make dependencies in examples explicit.
- Remove dependency of examples on Boost.Filesystem (was not used there).
- Deduplicate build settings.
- Speed up test compilation by avoiding rebuilding of main test file.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com>
close#1524
It is now possible to compile examples without OpenSSL. Examples that
do require OpenSSL will be omitted.
Signed-off-by: Damian Jarek <damian.jarek93@gmail.com>
fix#38
This improves the behavior when encountering a short read:
* Any stream error encountered during a read is converting into
`http::error::partial_message` if some data was received but
the message is incomplete.
* Examples squelch SSL short read errors from the logs.
fix#1435, fix#1438
* Example and test can be built on msvc v141 15.9.6
using /std:c++17 and BOOST_BEAST_USE_STD_STRING_VIEW.
* changed string_view.to_string() to std:string(string_view),
awaiting availability of Library Fundamentals TS here.
* Reactivated relevant tests to param_list. #ifdef 0 test
exhibited same assertion failed error in debug mode.
Now fixed in DEBUG on msvc v141 15.9.6 with
BOOST_BEAST_USE_STD_STRING_VIEW and /std:c++17.
* Looked up http paramters (transfer-encoding, etc.)
and changed tests as well as fixing comment to
match specs.
fix#1417
* New get_lowest_layer free function works for any object
* New lowest_layer_type trait works for any object
* New examples and documentation on layered streams
API Changes:
* The member function lowest_layer is removed from all
types provided by the library:
Actions Required:
* Call the free function get_lowest_layer instead of
member lowest_layer.