Vinnie Falco
e90725267d
Clean up message docs
2016-10-30 18:55:10 -04:00
Vinnie Falco
1e3543f63e
Set version to 1.0.0-b17
2016-10-20 17:26:17 -04:00
Vinnie Falco
de97a69012
Trim unused code
2016-10-20 17:22:42 -04:00
Vinnie Falco
796b484bab
Doc fixes
2016-10-20 17:22:41 -04:00
Andrew Whatson
95c37e23f0
Fix unused parameter warnings and missing includes:
...
fix #127
* Added beast::detail::ignore_unused based on boost::ignore_unused
* Added -Wextra compilation flag when building with gcc
* Fixed all unused parameter warnings with ignore_unused
* Fixed all missing includes when building each .hpp separately
2016-10-20 17:22:40 -04:00
Miguel Portilla
8b0d2857b8
Refactor read_size_helper
2016-10-20 17:22:40 -04:00
Denis Andrejew
97a9dcb598
Improve websocket example in README.md
...
fix #138
* Refactoring for clarity
2016-10-20 17:22:40 -04:00
Vinnie Falco
236caef873
Engaged invokable is destructible:
...
fix #147
2016-10-20 17:22:39 -04:00
Vinnie Falco
d107ba1c1d
Add headers_parser:
...
This allows just the HTTP headers to be parsed, and
the choice of body to be deferred to a subsequent
call to parse.
2016-10-20 17:22:39 -04:00
Vinnie Falco
2f90627dd6
Fix handling of body_what::pause in basic_parser_v1
2016-10-20 17:22:38 -04:00
Vinnie Falco
9353d043b0
Add basic_parser_v1::reset
2016-10-20 17:22:38 -04:00
Vinnie Falco
658e03ca35
Add on_body_what parser callback (API Change):
...
These changes support parsing the headers separately from the body.
* on_headers now returns void
* on_body_what is a new required callback which returns body_what
2016-10-20 17:22:37 -04:00
Vinnie Falco
50bd4460cb
Fix parser traits detection (API Change):
...
basic_parser_v1 now requires that all callbacks appropriate
to the message are present and have the correct signatures.
Compile errors will result from compiling parsers which are
missing callbacks.
2016-10-20 17:22:37 -04:00
Vinnie Falco
df8d306909
Tidy up documentation:
...
fix #135
* Fix broken references
* Move doc debug headers to extras/
* Add rfc7230 utility classes to quick reference
2016-10-20 17:22:37 -04:00
Vinnie Falco
47105f8454
Tidy up basic_headers for documentation
2016-10-20 17:22:36 -04:00
Vinnie Falco
ada1f60e3e
Refine message class hierarchy:
...
Two new objects, request_headers and response_headers,
represent the portion of HTTP messages excluding the body.
2016-10-20 17:22:36 -04:00
Vinnie Falco
cf43f516d2
Rework HTTP concepts (API Change):
...
fix #139 , fix #140
* Writer uses write instead of operator()
* Refactor traits to use void_t
* Remove is_ReadableBody, is_WritableBody
* Add has_reader, has_writer, is_Reader, is_Writer
* More friendly compile errors on failed concept checks
2016-10-17 11:11:57 -04:00
Vinnie Falco
8a261ca923
HTTP Reader (API Change):
...
fix #114 , fix #117 , fix #136
* Added init() to Reader requirements
* Reader must be nothrow constructible
* Reader is now constructed right before reading the body
- The message passed on construction is filled in
2016-10-17 11:11:57 -04:00
Vinnie Falco
183055a74c
Parser callbacks may not throw (API Change)
2016-10-17 11:11:56 -04:00
Vinnie Falco
ebebe52612
Add basic_streambuf::alloc_size
...
fix #133
2016-10-17 11:11:56 -04:00
Vinnie Falco
c9cd171c19
Fix basic_streambuf::capacity
2016-10-17 11:11:56 -04:00
Vinnie Falco
0eb0e485c3
Tidying:
...
fix #85
* Remove unnecessary boost/system includes
* Remove unused headers_type from write_preparation
* Use braced-init style construction
* handler_alloc doc update
2016-10-17 11:11:51 -04:00
Evgeniy
c5c436d5a3
Change implicit_value to default_value
2016-10-17 11:11:33 -04:00
Vinnie Falco
01f939d68e
Set version to 1.0.0-b16
2016-10-14 16:14:05 -04:00
Vinnie Falco
206d0a9b65
Fix websocket failure tests
2016-10-14 16:13:59 -04:00
Vinnie Falco
6b4fb28cee
Fix Writer exemplar in docs
2016-10-14 15:03:58 -04:00
Vinnie Falco
4224a3a2db
Relax ForwardIterator requirements in FieldSequence
2016-10-14 15:03:58 -04:00
Vinnie Falco
14d7f8d362
Refactor base_parser_v1 callback traits:
...
When the derived class provides a member function with the
corresponding callback name, but the signature is different,
a compile error will be generated instead of silently ignoring
the member function.
2016-10-14 14:12:43 -04:00
Vinnie Falco
d81234435f
Add pause option to on_headers interface:
...
* on_headers returns enum body_what
* body_what::pause lets caller receive headers during the parse
2016-10-14 14:12:42 -04:00
Vinnie Falco
c59bd53f48
Improve first line serialization
2016-10-14 14:12:42 -04:00
Vinnie Falco
78ff20b005
Constrain parser_v1 constructor
2016-10-14 14:12:42 -04:00
Vinnie Falco
2765a67594
Refine Parser concept:
...
* Parser is not HTTP-specific
* parse algorithms are in their own header
* Update documentation
2016-10-14 14:12:41 -04:00
Vinnie Falco
c329d33c4b
Fix on_headers called twice from basic_parser_v1
2016-10-14 14:08:58 -04:00
Vinnie Falco
55c4c9361a
Put back missing Design section in docs
2016-10-14 14:08:58 -04:00
Vinnie Falco
90cec54524
Make auto_fragment a boolean option
2016-10-14 14:08:57 -04:00
Vinnie Falco
03642fb585
Rename to write_buffer_size
2016-10-14 14:08:57 -04:00
Vinnie Falco
0ca8964fe0
Frame processing routines are member functions
2016-10-14 14:08:57 -04:00
Vinnie Falco
d99dfb38de
Make value optional in param-list
2016-10-14 14:08:56 -04:00
Vinnie Falco
325f579a1d
Set version to 1.0.0-b15
2016-10-08 01:30:15 -04:00
Radoslaw Zarzynski
c54762ae1a
Fix handling empty HTTP headers in parser_v1.hpp
...
This patch rectifies flush() of beast::http::parser_v1
to properly handle the case when an HTTP header has
empty value.
Without the fix an empty-valued HTTP header is being
concatenated with the header directly following it.
This situation can be replicated using eg. curl:
curl <url> -H "X-First;" -H "X-Second: bla"
What Beast's client would see is a single header named
as "X-FirstX-Second".
2016-10-08 01:30:10 -04:00
Vinnie Falco
c39cc068ff
Regression test for empty headers
2016-10-08 01:30:10 -04:00
Vinnie Falco
60e637bd69
Tidy up error types:
...
* Restructure header material
* Clean up namespace type injections
* Remove extraneous 'success' constants
2016-10-08 01:30:10 -04:00
Vinnie Falco
d54d597f76
Tidy up DynamicBuffer requirements
2016-10-08 01:30:10 -04:00
Vinnie Falco
707fb5eb83
Fix doc reference section
2016-10-08 01:30:10 -04:00
Vinnie Falco
38af0f73d8
Fix message_v1 constructor
2016-10-08 01:30:10 -04:00
Vinnie Falco
027c4e8812
Add Secure WebSocket example
2016-10-08 01:30:10 -04:00
Vinnie Falco
5baaa49aee
Add HTTPS example
2016-10-08 01:30:10 -04:00
Vinnie Falco
076456bdcc
rfc7230 section 3.3.2 compliance
2016-10-08 01:30:10 -04:00
Vinnie Falco
a09a044df0
Use bin/sh
2016-10-08 01:30:10 -04:00
Vinnie Falco
1ff192db02
Update README.md for CppCon 2016 presentation
2016-10-07 23:30:01 -04:00