Version 276:
Version 275:
Version 274:
Version 273:
Version 272:
Version 271:
Version 270:
Version 269:
Version 268:
Version 267:
Version 266:
Version 265:
Version 264:
basic_dynamic_body
basic_fields
impl/static_string.hpp
multi_buffer
Version 263:
Version 262:
Version 261:
websocket::read_size_hint
definitionVersion 260:
beast::iequals
in basic_parser.ippVersion 259:
static_string
from http::fields
static_string
in websocketasio::coroutine
in flat_stream
test::stream
char_buffer
into a separate filehttp::string_to_verb
net::coroutine
with asio::coroutine
net::spawn
with asio::spawn
beast::read_size
in detail::read
Version 258:
yield_to
in parser testsVersion 257:
if
statement in basic_stream::transfer_opVersion 256:
buffers
functionstatic_string
allocator_traits::construct
is used for user-defined typesbuffers_cat
buffers_cat
iterator testsVersion 255:
Version 254:
Version 253:
Version 252:
Version 251:
Version 250:
Version 249:
Version 248:
Version 247:
Version 246:
Version 245:
Version 244:
Version 243:
Version 242:
Version 241:
Version 240:
Version 239:
Version 238:
Version 237:
Version 236:
Version 235:
Version 234:
Version 233:
Version 232:
Version 231:
Version 230:
Version 229:
API Changes:
Actions Required:
handler_ptr
with stable_async_base
and allocate_stable
.Version 228:
Version 227:
Version 226:
Version 225:
Actions Required:
Version 224:
Version 223:
Version 222:
Version 221:
Actions Required:
Version 220:
Version 219:
Version 218:
Version 217:
Version 216:
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.
Fix compilation errors required by Asio changes
Version 215:
Version 214:
Version 213:
Version 212:
Version 211:
Version 210:
API Changes:
is_file
is now in file_base.hppActions Required:
Version 209:
Version 208:
Version 207
API Changes:
Actions Required:
Version 206
Version 205
Version 204
Version 203
Version 202
Version 201
Version 200
API Changes:
Actions Required:
Replace buffers_adapter.hpp with buffers_adaptor.hpp, and replace buffers_adapter with buffers_adaptor. Or, define BOOST_BEAST_ALLOW_DEPRECATED
Replace call sites to use make_printable instead of buffers, and also include make_printable.hpp instead of ostream.hpp.
Replace file_mode::append_new with file_mode::append or file_mode::append_existing instead of file_mode::append_new
Version 199:
Version 198:
API Changes:
Actions Required:
Callers checking for errc::invalid_argument from calls to file APIs should check for errc::bad_file_descriptor instead.
Replace calls to flat_static_buffer::reset with flat_static_buffer::clear
Version 197:
API Changes:
Actions Required:
Version 196:
Version 195:
Version 194:
Version 193:
Version 192:
Version 191:
Version 190:
Version 189-hf1:
Version 189:
Version 188:
Version 187:
Version 186:
Version 185:
Version 183:
Version 182:
Version 181:
Version 180:
Version 179:
Version 178:
Version 177:
Version 176:
Version 175:
Version 174:
Version 173:
Version 172:
Version 171:
Version 170:
Version 169:
Version 168:
Version 167:
Version 166:
Version 165:
Version 164:
Version 163:
Version 162:
Version 161:
Version 160:
Version 159:
Version 158:
API Changes:
Actions required:
typename get_lowest_layer<T>::type
with get_lowest_layer<T>
.Version 157:
Version 156:
Version 155:
Version 154:
Version 153:
Version 152:
WebSocket:
API Changes:
Actions Required:
Code which explicitly compares error_code values against the
constant websocket::error::handshake_failed
should compare
against websocket::condition::handshake_failed
instead.
Code which explicitly compares error_code values against the
constant websocket::error::failed
should compare
against websocket::condition::protocol_violation
instead.
Version 151:
WebSocket:
API Changes:
Version 150:
API Changes:
Actions Required:
Version 149:
API Changes:
Actions Required:
Version 148:
Version 147:
HTTP:
WebSocket:
Version 146:
API Changes:
Version 145:
Version 144-hf1:
Version 144:
Version 143:
Version 142:
Version 141:
Version 140:
Version 139:
Version 138:
Version 137:
Version 136:
Version 135:
Version 134:
Version 133:
Version 132:
API Changes:
Actions Required:
Version 131:
Version 130:
Version 129:
Version 128:
HTTP:
WebSocket:
API Changes:
Actions Required:
Version 127:
Version 126:
Version 125:
API Changes:
Actions Required:
Version 124:
API Changes:
Actions Required:
message::keep_alive()
would return false
.Version 123:
Version 122:
Version 121:
Version 120:
Version 119:
Version 118:
HTTP:
Version 117:
API Changes:
Actions Required:
Version 116:
API Changes:
Actions Required:
Call member function message::body instead of accessing the data member at call sites.
Call member function message::version instead of accessing the version member at call sites.
Version 115:
Version 114:
(No changes)
Version 113:
Version 112:
API Changes:
WebSocket writes return the bytes transferred
HTTP reads and writes return bytes transferred
Actions Required:
Modify websocket write completion handlers to receive the extra std::size_t bytes_transferred parameter.
Modify HTTP read and/or write completion handlers to receive the extra std::size_t bytes_transferred parameter.
Version 111:
WebSocket:
Version 110:
Version 109:
WebSocket:
API Changes:
Actions Required:
Version 108:
Version 107:
WebSocket
Version 106:
HTTP:
WebSocket:
Version 105:
Version 104:
WebSocket:
Version 103:
Version 102:
Version 101:
Version 100:
WebSocket:
API Changes:
Calls to stream::close and stream::async_close will automatically perform the required read operations
drain_buffer is removed
role_type replaces teardown_tag
Actions Required:
Remove calling code which drains the connection after calling stream::close or stream::async_close
Replace code which uses drain_buffer. For websocket::stream, it is no longer necessary to manually drain the connection after closing.
Modify signatures of teardown and async_teardown to use role_type instead of teardown_tag
Change calls to teardown and async_teardown to pass the correct role_type, client or server, depending on context.
Version 99:
Version 98:
Version 97:
Version 96:
Version 95:
Version 94:
Version 93:
Version 92:
Version 91:
WebSocket:
API Changes
Actions Required:
Version 90:
Version 89:
Version 88:
WebSocket:
Version 87:
Version 86:
API Changes:
Actions Required:
Version 85:
Version 84:
WebSocket:
API Changes:
Actions Required:
Version 83:
WebSocket
API Changes:
Actions Required:
Version 82:
HTTP
WebSocket
API Changes:
Actions Required:
Version 81:
API Changes:
Actions Required:
Adjust signatures for required members of user-defined subclasses of basic_parser
Use the new basic_parser chunk callbacks for accessing chunk extensions and chunk bodies.
Version 80:
HTTP
API Changes:
Actions Required:
Version 79:
Version 78:
HTTP:
API Changes:
Actions Required:
Change user defined implementations of Fields and FieldsReader to meet the new requirements.
Use span_body instead of string_view_body
Version 77:
Version 76:
API Changes:
Actions Required:
Use serializer::keep_alive instead of serializer::close and take the logical NOT of the return value.
Modify instances of user-defined BodyReader and BodyWriter types to perform two-phase initialization, as per the updated documented type requirements.
Version 75:
Version 74:
Version 73:
HTTP:
API Changes:
Actions Required:
Evaluate each message constructor call site and adjust the constructor argument list as needed.
Use serializer::next instead of serializer::get at call sites
Version 72:
HTTP:
WebSocket:
Version 71:
WebSockets:
API Changes:
std::size_t
from Body::writer::put
Actions Required:
Body::writer::put
functions.Version 70:
API Changes:
Actions Required:
Change calls to message::header_part() with message::base()
Call body_limit and/or header_limit as needed to adjust the limits to suitable values if the defaults are insufficient.
Version 69:
Version 68:
API Changes:
Actions Required:
Change user defined instances of BodyReader and BodyWriter to meet the new requirements.
Replace references to http::error::bad_path with http::error::bad_target
Version 67:
API Changes:
Actions Required:
Change calls to websocket::stream::ping_callback to use websocket::stream::control_callback
Change user defined ping callbacks to have the new signature and adjust the callback definition appropriately.
Version 66:
Version 65:
Version 64:
API Changes:
Actions Required:
Version 63:
Version 62:
API Changes:
Actions Required:
Callers using parser
with Fields types other than basic_fields
will need to create their own subclass of basic_parser to work
with their custom fields type.
Implement chunked() and keep_alive() for user defined FieldsReader types.
Change calls to msg.prepare to msg.prepare_payload. For messages with a user-defined Fields, provide the function prepare_payload_impl in the fields type according to the Fields requirements.
Version 61:
API Changes:
Version 60:
Version 59:
API Changes:
Actions Required:
value_type const&
and modify the function definition
accordingly.Version 58:
std::string
in websocketAPI Changes:
basic_fields::set
renamed from basic_fields::replace
Actions Required:
basic_fields::replace
to basic_fields::set
Version 57:
Version 56:
Version 55:
Version 54:
API Changes:
Version 53:
Version 52:
API Changes:
auto_fragment
is a member of stream
binary
, text
are members of stream
stream
stream
write_buffer_size
is a member of stream
ping_callback
is a member of streamopcode
from read
, async_read
read_frame
returns bool
finopcode
is privateActions Required:
Change call sites which use auto_fragment
with set_option
to call stream::auto_fragment
instead.
Change call sites which use message_type with set_option
to call stream::binary
or stream::text
instead.
Change call sites which use read_buffer_size
with set_option
to
call stream::read_buffer_size
instead.
Change call sites which use read_message_max
with set_option
to
call stream::read_message_max
instead.
Change call sites which use write_buffer_size
with set_option
to
call stream::write_buffer_size
instead.
Change call sites which use ping_callback1 with
set_optionto
call
stream::ping_callback` instead.
Remove the opcode
reference parameter from calls to synchronous
and asynchronous read functions, replace the logic with calls to
stream::got_binary
and stream::got_text
instead.
Remove the frame_info
parameter from all read frame call sites
Check the return value 'fin' for calls to read_frame
Change ReadHandlers passed to async_read_frame
to have
the signature void(error_code, bool fin)
, use the bool
to indicate if the frame is the last frame.
Remove all occurrences of the opcode
enum at call sites
Version 51
API Changes:
Actions Required:
Version 50
API Changes:
Version 49
HTTP:
API Changes:
Version 48
API Changes:
Version 47
API Changes:
Version 46
API Changes:
Version 45
Version 44
Version 43
Version 42
Version 41
WebSocket
API Changes
Version 40
Version 39
Beast versions are now identified by a single integer which is incremented on each merge. The macro BEAST_VERSION identifies the version number, currently at 39. A version setting commit will always be at the tip of the master and develop branches.
HTTP
WebSocket:
API Changes:
1.0.0-b38
API Changes:
1.0.0-b37
WebSocket:
API Changes:
1.0.0-b36
1.0.0-b35
API Changes:
1.0.0-b34
1.0.0-b33
HTTP
WebSocket
1.0.0-b32
API Changes:
1.0.0-b31
WebSocket
1.0.0-b30
WebSocket
1.0.0-b29
HTTP
WebSocket
1.0.0-b28
1.0.0-b27
API Changes:
1.0.0-b26
1.0.0-b25
API Changes:
1.0.0-b24
1.0.0-b23
1.0.0-b22
1.0.0-b21
1.0.0-b20
ZLib
API Changes:
1.0.0-b19
HTTP
WebSocket
API Changes:
1.0.0-b18
HTTP
WebSocket
Core
Extras
1.0.0-b17
API Changes:
1.0.0-b16
API Changes:
The message class hierarchy is refactored (breaking change):
New classes basic_request and basic_response model messages without the body.
Error resolution: Callers should use message, request, and response instead of message_v1, request_v1, and response_v1 respectively.
1.0.0-b15
1.0.0-b14
1.0.0-b13
1.0.0-b12
1.0.0-b11
1.0.0-b10
1.0.0-b9
1.0.0-b8
1.0.0-b7
1.0.0-b6
API Changes:
ci_equal is moved to beast::http namespace, in rfc7230.hpp
"DynamicBuffer","dynabuf" renamed from "Streambuf", "streambuf". See: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4478.html#requirements.dynamic_buffers
basic_parser_v1 adheres to rfc7230 as strictly as possible