aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2013-06-07Don't overwrite stacktrace in `cowboy_rest:error_terminate/2`Sergey Urbanovich
This stacktrace is very useful in the `onresponse` hook. For example: ```erlang internal_error_hook(500, Headers, <<>>, Req) -> StackTrace = erlang:get_stacktrace(), Headers0 = [{N, V} || {N, V} <- Headers, N =/= <<"content-length">>], Body = io_lib:format("~p", [StackTrace]), {ok, Req0} = cowboy_req:reply(500, Headers0, Body, Req), Req0; internal_error_hook(Status, Headers, Body, Req) -> {ok, Req0} = cowboy_req:reply(Status, Headers, Body, Req), Req0. ```
2013-06-07Merge branch 'types' of git://github.com/lavrin/cowboyLoïc Hoguin
2013-06-07Merge branch 'spdy-zero-length-header-names' of git://github.com/bgentry/cowboyLoïc Hoguin
2013-06-07Use read_file_info/2 with {time, universal} optionSergey Rublev
2013-06-05Fix a couple control_frame clauses that were too largeLoïc Hoguin
2013-06-03Add sendfile support to SPDY, enabling cowboy_static useLoïc Hoguin
2013-06-02Fix cowboy:start_http/https/spdy typespecsRadosław Szymczyszyn
2013-05-31zero-length header names MUST issue a stream errorBlake Gentry
2013-05-31Don't crash on empty Cookie headerLoïc Hoguin
It's not allowed, however a heavily deployed client (Flash player) can send such an empty header, therefore we make a special condition for it and return an empty list when it happens.
2013-05-31In content-types, the charset parameter is converted to lowercaseLoïc Hoguin
We know this specific parameter is case insensitive so we automatically lowercase it to make things simpler to the developer.
2013-05-31Merge branch 'rest_method' of git://github.com/dvv/cowboyLoïc Hoguin
2013-05-30Add experimental and incomplete SPDY supportLoïc Hoguin
The SPDY connection processes are also supervisors. Missing: * sendfile support * request body reading support
2013-05-24Update Cowboy to 0.8.50.8.5Loïc Hoguin
2013-05-16Use the ranch_ssl:opts() type in cowboy:start_https/4 specLoïc Hoguin
2013-05-16Use the ranch_tcp:opts() type in cowboy:start_http/4 specLoïc Hoguin
2013-05-16Use the type ranch:ref() instead of any() where applicableLoïc Hoguin
2013-05-16Add cowboy_protocol:opts() typeLoïc Hoguin
Should improve the detection of wrong protocol options.
2013-05-16The charset iso-8859-1 is added only if not explicitely mentionedLoïc Hoguin
It was added all the time when * was missing, the RFC specifies it should only be added if it wasn't already present, though.
2013-05-16charsets_provided/2 returns a list of charsetsLoïc Hoguin
It incorrectly returned a tuple containing the charset and an associated quality which wasn't being used.
2013-05-16Move cowboy_protocol:onresponse_fun() to cowboy:onresponse_fun()Loïc Hoguin
2013-05-16Move cowboy_protocol:onrequest_fun() to cowboy:onrequest_fun()Loïc Hoguin
2013-05-16Move cowboy_http:status() to cowboy:http_status()Loïc Hoguin
2013-05-16Move cowboy_http:headers() to cowboy:http_headers()Loïc Hoguin
2013-05-16Move cowboy_http:version() to cowboy:http_version()Loïc Hoguin
2013-05-16Improve the specs for cowboy_req:init_stream/4Loïc Hoguin
2013-05-16Make the return value of AcceptResource callback consistentLoïc Hoguin
2013-05-16Make the HTTP version type more practicalLoïc Hoguin
Now instead of {1, 1} we have 'HTTP/1.1', and instead of {1, 0} we have 'HTTP/1.0'. This is more efficient, easier to read in crash logs, and clearer in the code.
2013-05-15Remove cowboy_req:fragment/1Loïc Hoguin
Clients do not send it. We skip the value if we receive it now, as it shouldn't happen, and won't for all the mainstream clients.
2013-05-15Fix the cowboy_websocket:frame/0 typeLoïc Hoguin
It accepts iodata() and not binary() for the payload.
2013-05-15Fix two incorrect comments in cowboy_reqLoïc Hoguin
2013-05-15The cookie value can only be binary()Loïc Hoguin
2013-05-15The return value of cowboy_req:peer/1 is never undefinedLoïc Hoguin
2013-05-15Fix incorrect spec for the middleware callbackLoïc Hoguin
2013-05-15Add two missing terminate reasons to http/loop handlers specsLoïc Hoguin
2013-05-15Change some module calls to local function callsLoïc Hoguin
2013-04-30Empty methods list allowedVladimir Dronnikov
2013-04-29Fix a bug in REST when allowed_methods is defined when method is OPTIONSLoïc Hoguin
2013-04-26Add chunked response body funJames Fish
Adds a new type of streaming response fun. It can be set in a similar way to a streaming body fun with known length: Req2 = cowboy_req:set_resp_body_fun(chunked, StreamFun, Req) The fun, StreamFun, should accept a fun as its single argument. This fun, ChunkFun, is used to send chunks of iodata: ok = ChunkFun(IoData) ChunkFun should not be called with an empty binary or iolist as this will cause HTTP 1.1 clients to believe the stream is over. The final (0 length) chunk will be sent automatically - even if it has already been sent - assuming no exception is raised. Also note that the connection will close after the last chunk for HTTP 1.0 clients.
2013-04-26Update to 0.8.4Loïc Hoguin
2013-04-26Merge branch 'range_header' of git://github.com/Egobrain/cowboyLoïc Hoguin
2013-04-26Added range header parserEgobrain
2013-04-26Merge branch 'remove_asserts' of git://github.com/Egobrain/cowboyLoïc Hoguin
2013-04-26Removed asserts from unit testsEgobrain
2013-04-26Merge branch 'pr-381-fix' of git://github.com/seletskiy/cowboyLoïc Hoguin
2013-04-26Fix indenting issues in `cowboy_rest.erl`Seletskiy Stanislav
2013-04-26Add default CTP: "text/html" maps to `to_html`Seletskiy Stanislav
2013-04-25Cookie names are case sensitiveLoïc Hoguin
This should be more in line with what browsers are doing, and will prevent errors due to failed expectations.
2013-04-22Fix an outdated commentLoïc Hoguin
2013-04-20REST is no longer experimentalLoïc Hoguin
2013-04-20Fix POST behavior in RESTLoïc Hoguin
The resource accept callback can trigger the following responses: * returns true, new resource, location header set: 201 * returns true, otherwise: 200, 204 or 300 (depends on body) * returns false: 422 * returns URL, new resource: 201 * returns URL, otherwise: 303