Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-11-07 | Fix reading the request body when Length < byte_size(Buffer) | Loïc Hoguin | |
2011-11-07 | Add 'Accept-Language' to cowboy_http_req:parse_header/2 | Loïc Hoguin | |
2011-11-05 | Remove the IS_DIGIT macro | Loïc Hoguin | |
2011-11-05 | Add 'If-Modified-Since' and 'If-Unmodified-Since' to parse_header/2 | Loïc Hoguin | |
Implementing the full HTTP-date type (RFC1123, RFC850, asctime). | |||
2011-11-04 | Merge branch 'parse_header-content-length' of https://github.com/nox/cowboy | Loïc Hoguin | |
Conflicts: src/cowboy_http.erl | |||
2011-11-04 | Support 'Content-Length' in parse_header/2 | Anthony Ramine | |
2011-11-04 | Remove unneeded whitespaces according to the HTTP spec | Loïc Hoguin | |
2011-11-04 | Rename cowboy_http:charset/2 to conneg/2 and use it for Accept-Encoding | Loïc Hoguin | |
Sorry I apparently used an outdated RFC when I was doing this. | |||
2011-11-01 | Merge branch 'chrome-15' of https://github.com/puzza007/cowboy | Loïc Hoguin | |
2011-11-01 | Set the cowboy_listener process priority to high | Loïc Hoguin | |
See comment added with it for more information. | |||
2011-10-30 | update record spec for version 13 | Paul Oliver | |
2011-10-30 | Merge branch 'chunk-spec' of https://github.com/puzza007/cowboy | Loïc Hoguin | |
2011-10-29 | Fix cowboy_http_req:chunk/2 spec | Paul Oliver | |
2011-10-28 | Merge branch 'supervisor-relup-fix' of https://github.com/smarkets/cowboy | Loïc Hoguin | |
2011-10-28 | fix supervisor spec for non dynamic modules | Steven Gravell | |
a release upgrade on a vm running cowboy where any other appup includes an {update, Mod, {advanced, Extra}} instruction will hang forever due to these child specs being wrong. The gen_servers should be [Mod] and the non gen_server needs to be [] since there is no callback to handle this. | |||
2011-10-26 | Add 'Accept-Charset' to cowboy_http_req:parse_header/2 | Loïc Hoguin | |
2011-10-26 | Rename private function quality/2 into qvalue/2 | Loïc Hoguin | |
2011-10-26 | cowboy_http:media_range/2 should expect to not have whitespace before it | Loïc Hoguin | |
2011-10-26 | Add 'Accept-Encoding' to cowboy_http_req:parse_header/2 | Loïc Hoguin | |
2011-10-26 | Add 'Accept' header parsing | Loïc Hoguin | |
Rework the cowboy_http_req:parse_header/2 function while I was at it. | |||
2011-10-25 | Rewrite list/tokens parsing with an added whitespace function | Loïc Hoguin | |
2011-10-24 | Merge pull request #79 from athoune/patch-1 | Loïc Hoguin | |
Update README.md | |||
2011-10-25 | Update README.md | Mathieu Lecarme | |
2011-10-24 | Make sure the correct callback name is displayed in websocket errors | Loïc Hoguin | |
2011-10-24 | Merge branch 'chrome-15' of https://github.com/puzza007/cowboy | Loïc Hoguin | |
2011-10-24 | Accept Sec-WebSocket-Version: 13 header on Chrome 15 through 17 | Paul Oliver | |
2011-10-24 | We don't need to retrieve the Origin header for hybi-7+ websocket drafts | Loïc Hoguin | |
2011-10-20 | Parse Connection header tokens in a case-insensitive manner | Loïc Hoguin | |
2011-10-20 | Add a cowboy_http_req:upgrade_reply/3 function and use it for websockets | Loïc Hoguin | |
This function doesn't try to add any additional header besides the Connection: Upgrade header. It also doesn't accept a body. It should be used for the intermediate reply to an upgrade process, before the real reply is sent (if any, for example when using TLS). | |||
2011-10-20 | "websocket" must be treated in a case insensitive manner for upgrades | Loïc Hoguin | |
Fixed according to the websocket draft specs. | |||
2011-10-20 | Make sure the hixie-76 websocket code works properly with proxies | Loïc Hoguin | |
2011-10-19 | Add a max_line_length to the HTTP protocol | Loïc Hoguin | |
Allows to limit the size of request and header lines, thus preventing Cowboy from infinitely reading from the socket and never finding an end of line. Defaults to 4096 bytes. | |||
2011-10-19 | Fix the init_shutdown test | Loïc Hoguin | |
2011-10-17 | Rewrite the token list parsing into separate, modulable functions | Loïc Hoguin | |
Introduce cowboy_http's list/2, nonempty_list/2, token/2 functions. | |||
2011-10-13 | Add shortcuts to reply functions | Loïc Hoguin | |
New functions are reply/2, reply/3, chunked_reply/2 in cowboy_http_req. | |||
2011-10-13 | Rename a variable from Code to Status | Loïc Hoguin | |
2011-10-11 | Fix a misnamed variable for {loop, ...} returns in init/3 | Loïc Hoguin | |
2011-10-11 | Bump quoted to version 1.2.0 | Loïc Hoguin | |
2011-10-11 | Fix specs after erlang:hibernate/3 calls were added | Loïc Hoguin | |
This however does not fix the related Dialyzer warnings. I have no idea what the warnings are about nor how to fix them, so feel free to work on it and submit a patch! | |||
2011-10-10 | Add support for loops in standard HTTP handlers | Loïc Hoguin | |
Now init/3 can return one of the following values to enable loops: - {loop, Req, State} - {loop, Req, State, hibernate} - {loop, Req, State, Timeout} - {loop, Req, State, Timeout, hibernate} Returning one of these tuples will activate looping in the HTTP handler. When looping, handle/2 is never called. Instead, Cowboy will listen for Erlang messages and forward them to the info/3 function of the handler. If a timeout is defined, Cowboy will also close the connection when no message has been received for Timeout milliseconds. The info/3 function is defined as info(Msg, Req, State). It can return either of the following tuples: - {ok, Req, State} - {loop, Req, State} - {loop, Req, State, hibernate} The first one ends the connection, calling terminate/2 before closing. The others continue the loop. Loops are useful when writing long-polling handlers that need to wait and don't expect to receive anything. Therefore it is recommended to set a timeout to close the connection if nothing arrives after a while and to enable hibernate everywhere. Normal HTTP handlers shouldn't need to use this and as such info/3 was made optional. | |||
2011-10-10 | Add {shutdown, Req} to websocket_init/3 to fail a websocket upgrade | Loïc Hoguin | |
This change allows application developers to refuse websocket upgrades by returning {shutdown, Req}. The application can also send a reply with a custom error before returning from websocket_init/3, otherwise an error 400 is sent. Note that right now Cowboy closes the connection immediately. Also note that neither terminate/3 nor websocket_terminate/3 will be called when the connection is shutdown by websocket_init/3. | |||
2011-10-10 | Add *.swp to gitignore | Loïc Hoguin | |
2011-10-10 | Merge remote-tracking branch 'jlouis/issue-71' | Loïc Hoguin | |
2011-10-10 | Add cowboy:child_spec/6 | Jesper Louis Andersen | |
This new exported function returns a Child Spec suitable for embedding cowboy in another applications supervisor structure. While here, implement `start_listener/6` in terms of it. | |||
2011-10-07 | Fix a crash in response_connection when Name is an atom =/= 'Connection' | Loïc Hoguin | |
2011-10-06 | Allow HTTP handlers to skip the handle/2 step in init/3 | Loïc Hoguin | |
You can now return {shutdown, Req, State} from Handler:init/3 to skip the handle/2 step. Also allow init/3 function to send responses. | |||
2011-10-06 | Add R14B to the travis-ci configuration file | Loïc Hoguin | |
2011-10-06 | Add R14B04 to the travis-ci configuration file | Loïc Hoguin | |
2011-10-06 | Merge branch 'hybi-framing-fix' of https://github.com/smarkets/cowboy | Loïc Hoguin | |
2011-10-06 | Close the connection when the application sends Connection: close | Loïc Hoguin | |
Now Cowboy checks headers sent to the client for the 'Connection' header value, parses it, and checks whether it contains a 'close' or 'keep-alive' value. It makes sure to close or keep the connection alive depending on the value found there, if any. Also change chunked replies to not close the connection by default unless the application requests it. |