Skip to content
Commits on Mar 16, 2012
  1. @olle
  2. @olle


    olle committed Mar 16, 2012
Commits on Mar 15, 2012
  1. Don't close requests when the replied body is chunked

    Loïc Hoguin committed Mar 15, 2012
  2. Add an 'onrequest' hook for HTTP

    This new protocol option is a fun.
    It expects a single arg, the Req, and should only return a possibly
    modified Req. This can be used for many things like URL rewriting,
    access logging or listener-wide authentication.
    If a reply is sent inside the hook, then Cowboy will consider the
    request handled and will move on to the next one.
    Loïc Hoguin committed Mar 15, 2012
Commits on Mar 13, 2012
  1. Do not send chunked Transfer-Encoding replies for HTTP/1.0

    Fixes compatibility issue #140 reported by @majek.
    Loïc Hoguin committed Mar 13, 2012
  2. Merge branch 'content-type-accepted-asterisk-atom' of https://github.…

    Added a comment explaining the '*' always matching.
    Loïc Hoguin committed Mar 13, 2012
Commits on Mar 12, 2012
  1. Rename inet:ip_port() to inet:port_number()

    Thanks go to @superbobry for pointing it out.
    Loïc Hoguin committed Mar 12, 2012
Commits on Mar 9, 2012
  1. Fix issue #157 relating to daylight savings time.

    Magnus Klaar committed Mar 9, 2012
  2. @asabil

    Make media type parsing more relaxed

    Certain user agents send slightly invalid media types, like the
    following: "text/html, image/gif, image/jpeg, ; q=.2, */; q=.2"
    The user agent with which this behavior was observed presented itself
    with the User-Agent string: "Mozilla/5.0 (Macintosh; U; Intel Mac OS X
    10.6; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (FlipboardProxy/0.0.5;
    asabil committed Mar 9, 2012
Commits on Mar 8, 2012
  1. @dysinger
Commits on Mar 2, 2012
Commits on Feb 29, 2012
  1. Tests and fixes for the generate_etag/2 callback

    The return value from the generate_etag/2 callback is expected to be a
    binary tagged with either weak or strong. This binary is quoted, and
    may be prefixed with W/ before it is set as the value of the ETag header
    in the response.
    For backwards compatibility with older handlers where the return value
    was expected to be a quoted binary a function has been added to parse any
    return values that are untagged binaries. All untagged binaries are expected
    to be a valid value for the ETag header.
    Magnus Klaar committed Feb 28, 2012
Commits on Feb 27, 2012
  1. Add a roadmap

    Loïc Hoguin committed Feb 27, 2012
  2. Remove the redundant include/ from -include("http.hrl")

    Loïc Hoguin committed Feb 27, 2012
  3. Remove a completed @todo comment

    Loïc Hoguin committed Feb 27, 2012
Commits on Feb 24, 2012
  1. @essen

    Merge pull request #146 from ostinelli/f3de0869801d3909cc5a5d5dbee819…

    Polish dialyzer warnings on supervisor init/1
    essen committed Feb 24, 2012
  2. Add an empty ebin/ folder to fix a rebar/edoc issue

    When missing rebar couldn't build docs because it expects the ebin/
    folder to exist before it runs edoc. This commit allows users to
    build docs without first having to run make.
    Loïc Hoguin committed Feb 24, 2012
Commits on Feb 23, 2012
  1. Add cowboy_http:x_www_form_urlencoded/2

    This was initially an internal function, it has been made public
    due to popular demand as it can sometimes be needed.
    Loïc Hoguin committed Feb 23, 2012
Commits on Feb 21, 2012
  1. @ostinelli
Commits on Feb 20, 2012
  1. Check for upgrades on accept timeout

    Otherwise acceptors will not be upgraded properly until after the
    next request comes in.
    Thanks to DeadZen for pointing it out.
    Loïc Hoguin committed Feb 20, 2012
  2. Add 'Expect' header parsing

    At the same time renaming cowboy_http:content_type_params/3 to
    cowboy_http:params/2 (with a default Acc of []) as this code isn't
    useful only for content types.
    Loïc Hoguin committed Feb 20, 2012
Commits on Feb 8, 2012
  1. @DeadZen
Commits on Feb 2, 2012
  1. Added absoluteURI support

    If requests go through a proxy, they will have the original uri in the
    request, i.e. : GET http://proxy.server.uri/some/query/string  HTTP 1.1 ...
    That was problematic -- cowboy_http_protocol:request didn't know what to
    to with the result of decode_packet applied to this, which would be something
    ``` erlang
    So, I just ignore the host, grab the path and pass into
    ``` erlang
    cowboy_http_protocol:request({http_request, Method, {abs_path, Path},
    	Version}, State)
    Seems to do the trick without much effort.
    David Kelly committed with Loïc Hoguin Feb 1, 2012
  2. Apply a trick to the erlang:hibernate calls to suppress dialyzer warn…

    Initially recommended by Magnus Klaar, the trick is to add a catch
    instruction before the erlang:hibernate/3 call so that Dialyzer
    thinks it will return, followed by the expected return value
    ('ok' for HTTP, 'closed' for websockets).
    This should be good enough until a real solution is found.
    Loïc Hoguin committed Feb 2, 2012
Commits on Feb 1, 2012
  1. Fix a typo that prevented protocol options upgrades

    Loïc Hoguin committed Feb 1, 2012
Commits on Jan 31, 2012
  1. @puzza007

    Remove call to queue:len/1

    queue:len/1 is O(len(Q))
    queue:out/1 is O(1) amortized, O(len(Q)) worst case
    Replace with a pattern match
    puzza007 committed Jan 31, 2012
  2. Removing travis-ci from the cowboy development toolkit

    We've been having many recurring issues, some which were fixed,
    only to have other things broken again. Can't rely on a service
    that breaks all the time.
    Loïc Hoguin committed Jan 31, 2012
  3. Merge branch 'autobahn-suite' of

    This needs python2 to be the default python in /usr/bin/python.
    Loïc Hoguin committed Jan 31, 2012
  4. Use queue() for managing wait queues in cowboy_listener

    The previous solution was retrieving the last put connection
    and wasn't a real queue, so this solution should improve the
    overall latency under load.
    Loïc Hoguin committed Jan 31, 2012
Something went wrong with that request. Please try again.