Skip to content
Commits on Jan 20, 2011
  1. Upped version to 2.1.3

    Chandrashekhar Mullaparthi committed Jan 20, 2011
  2. Rebarize ibrowse. Slightly tweakeed Andrew Tunnell-Jones' pull request

    Chandrashekhar Mullaparthi committed Jan 20, 2011
  3. Various changes. See README for details

    Chandrashekhar Mullaparthi committed Jan 20, 2011
Commits on Jan 19, 2011
  1. @andrewtj

    Remove unused port driver code

    andrewtj committed Jan 19, 2011
  2. @andrewtj

    Use rebar as build tool

    * Add rebar
    * Move build flags from src/Makefile to rebar.config
    * Remove src/Makefile
    * Put version in src/ibrowse.app.src
    * Remove vsn.mk
    * Remove ebin/ibrowse.app
    * Change Makefile to read version from src/ibrowse.app.src
    * Change Makefile all target to call ./rebar compile
    * Change Makefile clean target to call ./rebar clean
    * Update .gitignore to ignore ebin/*
    andrewtj committed Jan 19, 2011
Commits on Jan 16, 2011
  1. Merge branch 'stream_next_reset_inac_timer' of https://github.com/fdm…

    …anana/ibrowse into fdmanana-stream_next_reset_inac_timer
    Chandrashekhar Mullaparthi committed Jan 16, 2011
Commits on Jan 11, 2011
  1. Merge branch 'allow_custom_nodelay' of https://github.com/fdmanana/ib…

    …rowse into fdmanana-allow_custom_nodelay
    Chandrashekhar Mullaparthi committed Jan 11, 2011
  2. Merge branch 'stream_iolists' of https://github.com/fdmanana/ibrowse

    …into fdmanana-stream_iolists
    Chandrashekhar Mullaparthi committed Jan 11, 2011
  3. Merge branch 'fix_stream_to_once_get_header' of https://github.com/fd…

    …manana/ibrowse into fdmanana-fix_stream_to_once_get_header
    Chandrashekhar Mullaparthi committed Jan 11, 2011
  4. Merge branch 'clear_inac_timeout_before_send' of https://github.com/f…

    …dmanana/ibrowse into fdmanana-clear_inac_timeout_before_send
    Chandrashekhar Mullaparthi committed Jan 11, 2011
  5. Make test URL an argument

    Chandrashekhar Mullaparthi committed Jan 11, 2011
Commits on Jan 10, 2011
  1. @fdmanana
  2. @fdmanana

    Don't trigger new inactivity timer when socket data is received and c…

    …aller controls the socket
    
    Like in synchronous programming, in makes sense to start an inactivity timer only when the caller
    does a "recv" call and cancel the timer as soon as data is received from the socket.
    fdmanana committed Jan 10, 2011
Commits on Jan 9, 2011
  1. @fdmanana

    Reset inactivity timeout when stream_next is invoked

    This avoids plenty of connection inactivity timeouts. From a logical point of view,
    the inactivity timeout should be reset not only only data is received from the socket
    but also when the client asks for more data.
    fdmanana committed Jan 9, 2011
  2. @fdmanana

    Allow custom nodelay socket option

    Currently ibrowse defined the nodelay socket option to true, not allowing the caller
    to supply its own value, which would also make the sndbuf option useless if the caller
    supplied it as well.
    When sending large bodies, setting nodelay to false with a custom sndbuf can improve
    network throughput very significantly. For e.g., custom tests reduced an upload from
    16 minutes to about 12 minutes.
    fdmanana committed Jan 9, 2011
Commits on Jan 7, 2011
  1. @fdmanana

    Don't convert chunks into binaries

    Allow chunks to be IO lists. These lists will get flattened by the ERTS in
    a much more efficient way than converting them to raw binaries in Erlang code.
    fdmanana committed Jan 7, 2011
Commits on Jan 5, 2011
  1. @fdmanana

    Fix worker process hanging when it received partial headers and the c…

    …aller controls the socket
    fdmanana committed Jan 5, 2011
  2. @fdmanana

    Fix invalid req_timedout errors

    When reusing the same connection (ibrowse worker) for multiple requests, the current
    inactivity timeout must be cleared before sending a request body. When the sending of the
    body takes more than inactivity_timeout milliseconds, the client will get
    a req_timedout error. Currenty inactivity_timer is cleared only after sending the whole body.
    fdmanana committed Jan 5, 2011
Commits on Dec 20, 2010
  1. Pipelining wasn't working when used with the {stream_to, {Pid, once}}…

    … option
    Chandrashekhar Mullaparthi committed Dec 20, 2010
Commits on Dec 10, 2010
  1. Release 2.1.1. Various fixes. See README

    Chandrashekhar Mullaparthi committed Dec 10, 2010
  2. Merge branch 'content_length_empty_body' of https://github.com/fdmana…

    …na/ibrowse into fdmanana-content_length_empty_body
    Chandrashekhar Mullaparthi committed Dec 10, 2010
  3. @textendo
  4. @textendo

    - fix bug when using an ssl socket with socket_options.

    do_setopts/3 was being called with the 3rd arg as a boolean instead of the "State".
    textendo committed Dec 10, 2010
Commits on Nov 16, 2010
  1. @fdmanana

    Two changes:

    1) Set Content-Length to 0 for empty PUT and POST requests (necessary for some proxies);
    
    2) Use iolist_size/1 instead of size/1 or length/1 because the body can be an iolist
    fdmanana committed Nov 16, 2010
Commits on Nov 10, 2010
  1. Corrected names of contributors in README

    Chandrashekhar Mullaparthi committed Nov 10, 2010
  2. Corrected version number in README

    Chandrashekhar Mullaparthi committed Nov 10, 2010
  3. Release 2.1.0

    Chandrashekhar Mullaparthi committed Nov 10, 2010
Commits on Sep 24, 2010
  1. Removed spurious io:format

    Chandrashekhar Mullaparthi committed Sep 24, 2010
Commits on Sep 22, 2010
  1. Various changes. See README for details

    Chandrashekhar Mullaparthi committed Sep 22, 2010
Commits on Jul 17, 2010
  1. Merged changes from Filipe David Manana to use the base64 OTP module …

    …for Base64 encoding/decoding
    Chandrashekhar Mullaparthi committed Jul 17, 2010
Commits on Jul 10, 2010
  1. @fdmanana

    Use Erlang's OTP base64 module (available since R12B02) and avoid dup…

    …licated base64
    
    encoding/decoding code in ibrowse_lib.erl and ibrowse_http_client.erl.
    
    OTP's base64 module is also more efficient (C implementation):
    
    1> Data = crypto:rand_bytes(4096).
    <<205,174,13,169,97,159,110,161,71,43,226,153,42,101,243,
      83,11,96,23,161,253,251,129,240,163,216,58,175,190,...>>
    2>
    2> timer:tc(ibrowse_lib, encode_base64, [Data]).
    {2920,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    3> timer:tc(ibrowse_lib, encode_base64, [Data]).
    {1221,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    4> timer:tc(ibrowse_lib, encode_base64, [Data]).
    {1436,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    5> timer:tc(ibrowse_lib, encode_base64, [Data]).
    {1195,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    6>
    6> timer:tc(base64, encode, [Data]).
    {1846,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    7> timer:tc(base64, encode, [Data]).
    {743,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    8> timer:tc(base64, encode, [Data]).
    {737,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    9> timer:tc(base64, encode, [Data]).
    {656,
     <<"za4NqWGfbqFHK+KZKmXzUwtgF6H9+4Hwo9g6r77h2EF1/Xk1oKOIOmnAkgtv41LPXg37fp2dlr45C8qCA9/8zrcc9F5zr2JT0eVPTrh5aahl"...>>}
    fdmanana committed Jul 10, 2010
Commits on Jun 11, 2010
  1. Removed use of concat_binary

    Chandrashekhar Mullaparthi committed Jun 11, 2010
  2. Removed use of concat_binary

    Chandrashekhar Mullaparthi committed Jun 11, 2010
Commits on Jun 10, 2010
  1. Fixed bug in https requests without a proxy in between

    Chandrashekhar Mullaparthi committed Jun 10, 2010
Commits on May 31, 2010
  1. Clarified license

    Chandrashekhar Mullaparthi committed May 31, 2010
Something went wrong with that request. Please try again.