Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-09-21 | Add the {active, boolean()} Websocket command | Loïc Hoguin | |
This command is currently not documented. It allows disabling the reading of incoming data from the socket, and can be used as a poor man's flow control. | |||
2018-09-12 | Do not send a 101 after a final response in switch_protocol | Loïc Hoguin | |
2018-09-11 | Add a commands-based interface to Websocket handlers | Loïc Hoguin | |
This feature is currently experimental. It will become the preferred way to use Websocket handlers once it becomes documented. A commands-based interface enables adding commands without having to change the interface much. It mirrors the interface of stream handlers or gen_statem. It will enable adding commands that have been needed for some time but were not implemented for fear of making the interface too complex. | |||
2018-09-07 | Add cowboy_req:read_and_match_urlencoded_body/2,3 | Loïc Hoguin | |
2018-08-13 | Improve errors for when the ProvideCallback is missing | Loïc Hoguin | |
2018-08-13 | Update Ranch to 1.6.1 | Loïc Hoguin | |
2018-08-13 | Fix cancelling undefined settings timer | Bing Han | |
when settings_timeout is infinity | |||
2018-08-06 | Add missing log command to the commands() type | Loïc Hoguin | |
2018-07-09 | Add missing logger spec for cowboy_http2 opts | Loïc Hoguin | |
2018-06-28 | Introduce undocumented option logger | Loïc Hoguin | |
This commit reworks the logging that Cowboy does via error_logger to make the module that will do the actual logging configurable. The logger module interface must be the same as logger and lager: a separate function per log level with the same log levels they support. The default behavior remains to call error_logger, although some messages were downgraded to warnings instead of errors. Since error_logger only supports three different log levels, some messages may get downgraded/upgraded depending on what the original log level was to make them compatible with error_logger. The {log, Level, Format, Args} command was also added to stream handlers. Stream handlers should use this command to log messages because it allows writing a stream handler to intercept some of those messages and extract information or block them as necessary. The logger option only applies to Cowboy itself, not to the messages Ranch logs, so more work remains to be done in that area. | |||
2018-06-27 | Make sure cowboy_stream_h calls subsequent stream handlers | Loïc Hoguin | |
2018-06-27 | Disable warnings for erlang:get_stacktrace/0 in OTP-21+ | Loïc Hoguin | |
2018-06-26 | Add missing frame types to websocket_handle specs/docs | Loïc Hoguin | |
Thanks Artem. | |||
2018-06-25 | Add an undocumented stream_events function | Loïc Hoguin | |
I will test it on a private project before settling on it. | |||
2018-06-25 | Add streaming without chunking for HTTP/1.1 | Eric Meadows-Jönsson | |
If content-length is set in the response headers we can skip chunked transfer-encoding. | |||
2018-05-18 | Remove the trailer header from HTTP/1.1 response if no TE | Loïc Hoguin | |
2018-05-18 | Don't send transfer-encoding when streaming 204 responses | Loïc Hoguin | |
2018-05-18 | Do not process HTTP/1.1 requests coming in after the last | Loïc Hoguin | |
2018-05-18 | Add more validation of absolute-form request targets | Loïc Hoguin | |
2018-05-17 | Move a router test from old_http_SUITE to cowboy_router | Loïc Hoguin | |
2018-05-16 | Add option linger_timeout to cowboy_http | Loïc Hoguin | |
2018-05-16 | Wrap the sendfile call in a try/catch for HTTP | Loïc Hoguin | |
This should reduce the amount of noise in RabbitMQ. | |||
2018-05-16 | Honor the SETTINGS_ENABLE_PUSH from clients | Loïc Hoguin | |
This fixes curl when fetching resources that use push. | |||
2018-05-16 | Use default port when not given in :authority | Loïc Hoguin | |
2018-05-07 | Move cowboy_iolists to Cowlib as cow_iolists | Loïc Hoguin | |
Depend on Cowlib master for the moment. | |||
2018-04-30 | Remove a bunch of todos2.4.0 | Loïc Hoguin | |
2018-04-30 | Reject HTTP/2 requests with a body size different than content-length | Loïc Hoguin | |
2018-04-29 | Receive and ignore HTTP/2 request trailers if any | Loïc Hoguin | |
This is a first step toward properly supporting request trailers. | |||
2018-04-28 | Add SETTINGS ack timeout and option settings_timeout | Loïc Hoguin | |
2018-04-27 | Reject WINDOW_UPDATE frames sent after an RST_STREAM | Loïc Hoguin | |
2018-04-27 | Add options controlling maximum h2 frame sizes | Loïc Hoguin | |
2018-04-26 | Add options controlling initial control flow windows | Loïc Hoguin | |
2018-04-25 | Add the max_concurrent_streams h2 option | Loïc Hoguin | |
2018-04-25 | Add options to control h2's SETTINGS_HEADER_TABLE_SIZE | Loïc Hoguin | |
2018-04-23 | HTTP/2 informational responses don't end the stream | Loïc Hoguin | |
2018-04-23 | Add missing enable_connect_protocol in typespecs | Loïc Hoguin | |
2018-04-04 | Fix Dialyzer warnings | Loïc Hoguin | |
2018-04-04 | Add initial implementation of Websocket over HTTP/2 | Loïc Hoguin | |
Using the current draft: https://tools.ietf.org/html/draft-ietf-httpbis-h2-websockets-01 | |||
2018-03-28 | Add max_frame_size option for websocket handlers | Kirill Kinduk | |
Option allows to limit a frame by size before decoding its payload. LH: I have added a test for when the limit is reached on a nofin fragmented frame (the last commit addressed that case but it had no test). I have fixed formatting and other, and changed the default value to infinity since it might otherwise be incompatible with existing code. I also added documentation and a bunch of other minor changes. | |||
2018-03-26 | Fix the flushing of messages when switching to Websocket | Loïc Hoguin | |
We now flush messages that are specific to cowboy_http only. Stream handlers should also flush their own specific messages if necessary, although timeouts will be flushed regardless of where they originate from. Also renames the http_SUITE to old_http_SUITE to distinguish new tests from old tests. Most old tests need to be removed or converted eventually as they're legacy tests from Cowboy 1.0. | |||
2018-03-23 | Add initial support for system messages in cowboy_loop | Loïc Hoguin | |
2018-03-23 | Merge the two separate receive loops in cowboy_websocket | Loïc Hoguin | |
Also rename a bunch of functions to make the code easier to read. | |||
2018-03-14 | Fix a Dialyzer warning | Loïc Hoguin | |
2018-03-14 | Add case for handling infinity for idle/request_timeout | Bartek Walkowicz | |
Currently cowboy assumes that idle_timeout or request_timeout is a number and always starts timers. Similar situation takes place in case of preface_timeout for http2. This commit adds case for handling infinity as a timeout, allowing to not start mentioned timers. | |||
2018-03-13 | Handle system messages in cowboy_websocket | Loïc Hoguin | |
2018-03-13 | Handle supervisor calls properly everywhere | Loïc Hoguin | |
2018-02-28 | Fix crash in cowboy_http2 when content-length is invalid | Loïc Hoguin | |
2018-01-24 | Fix sending HTTP/2 bodies as iolists out of order | Loïc Hoguin | |
2018-01-23 | Fix an unused variable warning | Loïc Hoguin | |
2018-01-23 | Fix a miscount of output flow control window for HTTP/2 | Loïc Hoguin | |
The miscount occurred because of a faulty iolist split function. The bug should now be corrected, a PropEr test has been added and a regression test has also been added. |