Vinnie Falco
7b8149cfd4
Move benchmarks to a separate project
2017-07-20 08:15:27 -07:00
Vinnie Falco
9c4b3ed2a7
Only build and run tests in variant=coverage
2017-07-20 08:15:27 -07:00
Vinnie Falco
5613ce7e97
Add http::is_fields trait
...
fix #515
2017-07-20 08:15:27 -07:00
Vinnie Falco
56a561da9a
message::prepare_payload replaces message::prepare (API Change):
...
Actions Required:
* 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.
2017-07-20 08:15:27 -07:00
Vinnie Falco
f9f6e1e0cc
Refine FieldsReader concept (API Change)
...
* FieldsReader now requires chunked() and keep_alive()
* serializer logic calls into the reader to calculate
the message metadata
* Removed some of the previous requirements of FieldsReader
Actions Required:
* Implement chunked() and keep_alive() for user defined FieldsReader types.
2017-07-20 08:15:27 -07:00
Vinnie Falco
50902c3938
parser requires basic_fields (API Change):
...
* `parser` is now templated on Allocator
* `parser` only produces messages using `basic_fields<Allocator>`
as the Fields type.
* message-oriented read and async_read only work on messages
using basic_fields as the Fields type.
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.
2017-07-20 08:15:27 -07:00
Vinnie Falco
4d393f4c2a
Clear the error faster
2017-07-20 08:15:27 -07:00
Vinnie Falco
d5f15976e7
Tidy up test build scripts and projects
2017-07-20 08:15:27 -07:00
Vinnie Falco
8f627b0748
Fix shadowing warnings
...
fix #510
2017-07-20 08:15:27 -07:00
Vinnie Falco
c8b8439ebc
Tidy up names in error categories
2017-07-20 08:15:27 -07:00
Vinnie Falco
fd9a13b11f
New server-framework, full featured server example:
...
A new server framework is introduced, allowing users to
quickly get off the ground. Example servers are refactored
to use the common framework.
2017-07-20 08:15:26 -07:00
Vinnie Falco
b5306a5712
String comparisons are public interfaces
2017-07-20 08:15:26 -07:00
Sacha
0a2a03acfa
Integrated Beast interface.
2017-07-20 08:15:26 -07:00
Vinnie Falco
dba4be01ab
Fix parsing chunk size with leading zeroes
...
fix #496
2017-07-20 08:15:26 -07:00
Vinnie Falco
f64109d79a
Fix basic_fields insert ordering
2017-07-20 08:15:26 -07:00
Vinnie Falco
eb7e971c7a
Renamed to basic_fields::set (API Change):
...
* `replace` is renamed to `set`
Actions Required:
* Rename calls to `basic_fields::replace` to `basic_fields::set`
2017-07-20 08:15:26 -07:00
Vinnie Falco
510092d34b
Reorganize examples:
...
* The examples/ directory is renamed to example/
* Each program is in its own directory with its own build scripts
2017-07-20 08:15:26 -07:00
Vinnie Falco
2eeedb8a41
Fix warning in basic_parser.cpp
2017-07-20 08:12:20 -07:00
Vinnie Falco
82d76e4882
Convert buffer in range loops
...
fix #485
2017-07-20 08:12:20 -07:00
Vinnie Falco
9939320c83
More basic_parser tests
2017-07-20 08:12:20 -07:00
Vinnie Falco
ca109693fb
Reset error codes
...
fix #478
2017-07-20 08:12:20 -07:00
Vinnie Falco
7d92048c5c
Test error code handling
...
fix #478
2017-07-20 08:12:20 -07:00
Vinnie Falco
7712ca09b2
Add string_view_body
2017-07-20 08:12:20 -07:00
Vinnie Falco
0f54bc72a4
Add provisional IANA header field names
...
fix #473
2017-07-20 08:12:20 -07:00
Vinnie Falco
4d21f8d2cf
Revert "Add a Beast CMake interface target:"
...
This reverts commit 906db45bec .
2017-07-20 08:12:20 -07:00
Vinnie Falco
a49c096042
read_size replaces read_size_helper:
...
* detail::read_size_helper is removed
* public function read_size helps determine the optimum
size for calls to a DynamicBuffer's prepare function.
* special case for Asio types which don't conform to
the concept but have their own helper function.
2017-07-20 08:12:20 -07:00
Sacha
3c453209fe
Add a Beast CMake interface target:
...
fix #461
This target allows other CMake projects to acquire
the Beast headers and link libraries easily.
2017-07-20 08:12:19 -07:00
Vinnie Falco
d529d6a16f
Documentation work
2017-07-20 08:12:19 -07:00
Vinnie Falco
8c4136bb73
basic_fields refactor (API Change):
...
* Container interface more closely matches std::vector
* While preserving the invariant that duplicate fields
with the same case-insensitive name have their order
preserved.
2017-07-20 08:12:19 -07:00
Vinnie Falco
49a2b33b82
basic_fields members and coverage
2017-07-20 08:12:19 -07:00
Vinnie Falco
44995bf071
Documentation work
2017-07-20 08:12:19 -07:00
Vinnie Falco
b49b23ee83
finish(error_code&) is a BodyReader requirement (API Change)
2017-07-20 08:12:19 -07:00
Vinnie Falco
04522398e0
Fix infinite loop in basic_parser
...
fix #452
2017-07-20 08:12:19 -07:00
Vinnie Falco
cff5be3837
Documentation work
2017-07-20 08:12:19 -07:00
Vinnie Falco
6203074c92
Fix chunk header parsing
...
fix #431 , fix #430
2017-07-20 08:12:18 -07:00
Vinnie Falco
7d89fdc46f
Remove obsolete serializer allocator (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
aa752e4dce
Remove message free functions (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
3340666ad3
Remove message connection settings (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
943830f6ed
Fields concept work
2017-07-20 08:12:18 -07:00
Vinnie Falco
fb2f777b4d
Use field in basic_parser
2017-07-20 08:12:18 -07:00
Vinnie Falco
ca25eee0dd
Use field in basic_fields and call sites
2017-07-20 08:12:18 -07:00
Vinnie Falco
ace99bd6c0
Protect basic_fields special members (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
67df48daa6
Documentation work
2017-07-20 08:12:18 -07:00
Vinnie Falco
2df6783468
Refactor prepare (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
2af19481a9
Derive header from Fields (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
5f2e7560b6
Use allocator more in basic_fields
...
Fix #392
2017-07-20 08:12:18 -07:00
Vinnie Falco
ff216a89a8
Add verb to on_request for parsers (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
1c063f5bf6
Add field enumeration
2017-07-20 08:12:18 -07:00
Vinnie Falco
9f7abcbe2d
Remove header_parser (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
fa28cba515
parser is constructible from other body types
2017-07-20 08:12:18 -07:00