Commit Graph
221 Commits
Author SHA1 Message Date
Vinnie Falco 0647c902ac role_type is in boost/beast/core/role.hpp (API Change):
This enumeration is now part of the library core and
not specific to websocket.
2019-02-26 07:20:46 -08:00
Vinnie Falco 81f33a0f89 Rename to async_base, stable_async_base 2019-02-26 07:20:08 -08:00
Vinnie Falco d9400ce618 Refactor docs 2019-02-24 18:46:27 -08:00
Vinnie Falco 59bda5d9c6 basic_parser is abstract, not CRTP (API Change):
* `basic_parser` now uses pure virtual member functions instead
  of the curiously recurring template pattern.

Actions Required:

* Change uses of the `basic_parser` type to omit the `Derived`
  template parameter

* Classes derived from `basic_parser` no longer need to friend
  the base.

* Virtual functions in the derived class may be marked `override`.
2019-02-23 11:15:59 -08:00
Vinnie Falco d4dddec1c0 Reduce template instantiations 2019-02-23 08:56:57 -08:00
Vinnie Falco 46eb006757 Tidy up docs 2019-02-22 19:46:29 -08:00
Vinnie Falco 955354b9dd Enable split Beast compilation for tests 2019-02-22 17:27:27 -08:00
Vinnie Falco c5af2e7fcc Fixes to some CI targets 2019-02-22 15:39:34 -08:00
Vinnie Falco 90b783cb62 detect_ssl, async_detect_ssl are public interfaces 2019-02-22 15:39:34 -08:00
Vinnie Falco ee13bfad70 Fast prng is pcg 2019-02-21 13:19:23 -08:00
Vinnie Falco 6ada618c12 Check BOOST_NO_CXX11_THREAD_LOCAL 2019-02-21 11:09:02 -08:00
Vinnie Falco d08cc82e15 Use async_initiate 2019-02-21 06:39:35 -08:00
Vinnie Falco e2d3f741b8 Fix compile errors 2019-02-20 22:37:00 -08:00
Vinnie Falco eea3929b26 Concept check tidying 2019-02-20 19:19:59 -08:00
Vinnie Falco 2b92189b65 Doc tidying 2019-02-20 19:09:21 -08:00
Vinnie Falco 51994d133f Release notes 2019-02-20 18:58:59 -08:00
Vinnie Falco fd4b080a4a RatePolicy documentation 2019-02-20 15:30:03 -08:00
Vinnie Falco 093f966f69 Disable bind_continuation 2019-02-20 15:30:02 -08:00
Vinnie Falco a5adc328e4 basic_stream uses async_initiate 2019-02-19 16:27:27 -08:00
Vinnie Falco c5b655c954 basic_stream connects are members 2019-02-19 16:27:27 -08:00
Vinnie Falco 0ad7390e94 Use async_initiate in basic_stream 2019-02-19 16:27:26 -08:00
Vinnie Falco 23a7bcc67e Add RatePolicy to basic_stream 2019-02-19 16:23:30 -08:00
Vinnie Falco 6baa607295 Fixes to support Asio changes (API Change):
This adjusts Beast's interfaces and implementation to match
the changes in Boost.Asio.
2019-02-19 16:23:30 -08:00
Vinnie Falco ac24e58fb3 Add make_strand 2019-02-19 16:23:30 -08:00
Vinnie Falco 3f50efa138 WebSocket Decorator is a socket option (API Change):
This changes the interface used to apply a decorator to the HTTP
request or response messages used to perform the WebSocket handshake
as follows:

* Add the `stream_base::decorator` option object

* Add `stream::set_option` overload to set the decorator from
  the option

* The decorator applies to all client and server handshakes
  performed on the stream after the option is set.

* Overloads of the following functions which accept a Decorator
  are deprecated:
  - accept, accept_ex
  - handshake, handshake_ex
  - async_accept, async_accept_ex
  - async_handshake, async_handshake_ex

Actions Required:

* Code which passes decorator to any `websocket::stream` member
  function should call `stream::set_option` instead with a newly
  constructed `stream_base::decorator` object containing the
  decorator. Alternatively, the macro `BOOST_BEAST_ALLOW_DEPRECATED`
  may be defined to 1.
2019-02-19 16:23:30 -08:00
Vinnie Falco 79c777e776 Tidying and fixes 2019-02-18 12:18:27 -08:00
Vinnie Falco f21358186e Add websocket::stream timeouts 2019-02-18 12:18:27 -08:00
Vinnie Falco dfd08bf6ae Refactor websocket::stream operations 2019-02-18 12:18:27 -08:00
Vinnie Falco 2e62f25701 Use async_op_base::invoke 2019-02-16 15:09:34 -08:00
Vinnie Falco f41363c60c Add async_op_base::invoke 2019-02-16 15:09:33 -08:00
Vinnie Falco fdaf2ea7e1 Rename to async_op_base::invoke_now 2019-02-16 13:36:01 -08:00
Vinnie Falco 92add2afa6 bind_front_handler works with member functions 2019-02-14 16:16:04 -08:00
Vinnie Falco d410b429c0 Remove bind_back_handler 2019-02-14 16:11:14 -08:00
Vinnie Falco 5ed9f7712e basic_stream uses boost::shared_ptr 2019-02-14 12:54:32 -08:00
Vinnie Falco 65cbc158cf Tidy up example docs and some names
fix #1450
2019-02-14 07:53:38 -08:00
Vinnie Falco 96b2944f70 Add detail::bind_continuation 2019-02-13 12:59:24 -08:00
Vinnie Falco b6f215a00d handler binders use the associated allocator 2019-02-12 05:55:07 -08:00
Vinnie Falco 45d722874f Use tcp_stream, HTTP timeouts in advanced servers 2019-02-10 11:43:15 -08:00
Vinnie Falco 9b14774ada basic_stream subsumes stranded_stream:
* All functionality of stranded_stream is folded into basic_stream
* tcp_stream is an alias for basic_stream with tcp
* The tests are expanded to produce full coverage
* Timeout implementation is simplified
2019-02-10 11:42:01 -08:00
Vinnie Falco 0ce8ebbefd Fix posix_file::close handling of EINTR:
fix #1445

These changes optimize for Linux at the possible
expense of non-conforming platforms like HP-UX.
2019-02-10 05:52:12 -08:00
Vinnie Falco b8aa6be7fd stranded_socket tests and tidy 2019-02-08 10:58:23 -08:00
Vinnie Falco f15bbf10b4 flat_stream tests and tidy 2019-02-08 10:57:58 -08:00
Vinnie Falco 98834967c3 dynamic_buffer_ref tests and tidy 2019-02-08 10:57:41 -08:00
Vinnie Falco 55d319a9d9 multi_buffer::clear preserves capacity 2019-02-07 17:37:18 -08:00
Vinnie Falco c3125e8358 flat_buffer::clear preserves capacity 2019-02-07 17:37:18 -08:00
Vinnie Falco 27a6f57200 Add flat_stream:
flat_stream, previously in _experimental, is now a public API.
2019-02-07 17:37:18 -08:00
Vinnie Falco 3896f9aa9c Add stranded_stream 2019-02-07 17:37:18 -08:00
Benjamin Buch cdc6e76ab7 Remove extra semicolon
fix #1436
2019-02-07 08:38:06 -08:00
Vinnie Falco dc02f63050 close_socket is in stream_traits.hpp 2019-02-05 21:03:20 -08:00
Vinnie Falco adcd4bc0c9 is_completion_handler, type_traits.hpp are deprecated (API Change):
* is_completion_handler is deprecated
* type_traits.hpp is a deprecated include

These items will be removed in the next version

* Include the new header file for the types needed:
  - stream_traits.hpp
  - file_base.hpp
* Use std::is_invocable instead of is_completion_handler
2019-02-05 14:16:30 -08:00