* Use beast exclusive valgrind feature.
* Make the library modular usable.
* Switch to library requirements instead of source. As source puts extra source in install targets.
* Add Beast root dir for includes. As some tests refer to files relative to that.
* Replace relative docca refs with project based.
* Avoid mtuliple openssl configurations.
* Always declare openssl. If it's empty and duplicate it will be ignored.
* Add missing import-search for cconfig/predef checks.
* Add requires-b2 check to top-level build file.
* Bump B2 require to 5.2
* Update copyright dates.
* Move inter-lib dependencies to a project variable and into the build targets.
* Update build deps.
* Update build deps.
* The http/client/body example uses the source header from json instead of the linked library.
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>
This example HTTP client application uses the `system_executor` to show
how to use it with the I/O objects in ASIO and Beast.
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>