aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/guide
AgeCommit message (Collapse)Author
2018-03-28Tentatively update Cowboy to 2.3.02.3.0Loïc Hoguin
2018-03-28Add max_frame_size option for websocket handlersKirill 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-27Remove duplicate keys from map in inform docsGary Rennie
This is the equivalent way of doing the same thing using a single header.
2018-03-23Add RFC 8336 to the listLoïc Hoguin
2018-02-15Add a new relevant RFCLoïc Hoguin
2018-02-09Add link to the PROXY protocol to the specsLoïc Hoguin
It's very relevant even though I will probably not implement it.
2018-01-29Add an example with a Websocket close frameLoïc Hoguin
Thanks benbro!
2018-01-24Update Cowboy to 2.2.22.2.2Loïc Hoguin
2018-01-23Update Cowboy to 2.2.12.2.1Loïc Hoguin
2018-01-02Add RFC 8297 to the listLoïc Hoguin
2017-12-11Update Cowboy to 2.2.0Loïc Hoguin
2017-12-11Document trailers in the guideLoïc Hoguin
2017-12-11Document 2.2 changes and the new stream_trailers functionLoïc Hoguin
2017-11-09Add missing changes for 2.1 release2.1.0Loïc Hoguin
2017-11-08Update Cowboy to 2.1.0Loïc Hoguin
Also add OTP-20.1.4 to CI.
2017-11-01Add {switch_handler, Module} return value to cowboy_restLoïc Hoguin
Also {switch_handler, Module, Opts}. Allows switching to a different handler type. This is particularly useful for processing most of the request with cowboy_rest and then streaming the response body using cowboy_loop.
2017-10-29Add cowboy_req:inform/2,3Loïc Hoguin
User code can now send as many 1xx responses as necessary.
2017-10-23Add migration note concerning multiple headersLuke Bakken
2017-10-20Make the getting started use 2.0.0Loïc Hoguin
2017-10-13Small guide fixesLoïc Hoguin
2017-10-03Make a few link use https2.0.0Loïc Hoguin
2017-09-27Clarify a multipart exampleLoïc Hoguin
2017-09-15Add two new RFCs, remove one obsoleteLoïc Hoguin
2017-09-05Update naming in REST flowchartsLoïc Hoguin
2017-09-04Fix more documentation todosLoïc Hoguin
I have decided not to include a manual page for cowboy_stream_h at this point because it clashes with the cowboy_stream manual page. This decision will be revisited in the future.
2017-07-24Small tweak to the guideLoïc Hoguin
2017-07-23Write an initial draft of the streams chapterLoïc Hoguin
2017-07-23Remove yet another outdated todoLoïc Hoguin
2017-07-23Update the constraints chapterLoïc Hoguin
2017-07-23Update the flowchart chapterLoïc Hoguin
2017-07-20Add a related RFC for WebsocketLoïc Hoguin
This is important because it clarifies that sec-websocket-protocol is case sensitive when matching. Only the registry is case insensitive.
2017-07-20Remove cowboy_sub_protocol from the documentationLoïc Hoguin
This will be reintroduced in a future release once the interface stabilizes. For the time being it will be an internal module only.
2017-07-19Remove the old architecture chapterLoïc Hoguin
2017-07-19Remove the guide chapter about broken clientsLoïc Hoguin
None of these workarounds currently exist in Cowboy 2.0. We can resurrect the chapter later if it's still necessary, once we've added the workarounds back in some other form.
2017-07-19Fix the name of an option in the migration guideLoïc Hoguin
2017-07-19Remove hooks from the user guideLoïc Hoguin
They're gone!
2017-07-19Tweak the migration guideLoïc Hoguin
2017-07-19Add a guide appendix on migrating from Cowboy 1.0Loïc Hoguin
2017-07-12Remove any mention of the waiting_stream hackLoïc Hoguin
2017-06-28Add another RFC to the pileLoïc Hoguin
2017-06-14Fix a confusing code snippetLoïc Hoguin
Reported by Jordan Chaitin.
2017-06-09Make cowboy_req:read_part return multipart headers as mapLoïc Hoguin
2017-06-07Remove NumAcceptors argument from start_clear/tlsLoïc Hoguin
They are now cowboy:start_clear/3 and cowboy:start_tls/3. The NumAcceptors argument can be specified via the num_acceptor transport option. Ranch has been updated to 1.4.0 to that effect.
2017-05-20Add another RFC to the list of specsLoïc Hoguin
2017-04-18Update Websocket handler docs default timeoutGary Rennie
This was changed from infinity to 60s in a45813c60f0f983a24ea29d491b37f0590fdd087
2017-04-18Add more RFCs to the specs listLoïc Hoguin
2017-03-20Add a guide chapter linking to all specsLoïc Hoguin
2017-02-19Change the type of bindings from a list to a mapLoïc Hoguin
Maps make more sense because the keys are unique.
2017-02-19Change the order of set_resp_cookie argumentsLoïc Hoguin
The Opts value is put last, to be more consistent with the rest of the cowboy_req module. Additionally a test handler was fixed which reduced the number of errors in http_SUITE.
2017-02-18Allow passing options to sub protocolsLoïc Hoguin
Before this commit we had an issue where configuring a Websocket connection was simply not possible without doing magic, adding callbacks or extra return values. The init/2 function only allowed setting hibernate and timeout options. After this commit, when switching to a different type of handler you can either return {module, Req, State} or {module, Req, State, Opts} where Opts is any value (as far as the sub protocol interface is concerned) and is ultimately checked by the custom handlers. A large protocol like Websocket would accept only a map there, with many different options, while a small interface like loop handlers would allow passing hibernate and nothing else. For Websocket, hibernate must be set from the websocket_init/1 callback, because init/2 executes in a separate process. Sub protocols now have two callbacks: one with the Opts value, one without. The loop handler code was largely reworked and simplified. It does not need to manage a timeout or read from the socket anymore, it's the job of the protocol code. A lot of unnecessary stuff was therefore removed. Websocket compression must now be enabled from the handler options instead of per listener. This means that a project can have two separate Websocket handlers with different options. Compression is still disabled by default, and the idle_timeout value was changed from inifnity to 60000 (60 seconds), as that's safer and is also a good value for mobile devices.