-
Notifications
You must be signed in to change notification settings - Fork 191
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of github.com:cmullaparthi/ibrowse
- Loading branch information
Showing
7 changed files
with
642 additions
and
555 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
language: erlang | ||
otp_release: | ||
- R14B04 | ||
- R14B03 | ||
- R14B02 | ||
- R14A | ||
- R13B04 | ||
- R13B03 | ||
script: "make test" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,269 @@ | ||
CONTRIBUTIONS & CHANGE HISTORY | ||
============================== | ||
13-04-2011 - v2.2.0 | ||
* Filipe David Manana added IPv6 support. This is a mjor new | ||
feature, Thank you Filipe! | ||
* Joseph Wayne Norton contributed tweaks to .gitignore | ||
|
||
09-02-2011 - v2.1.4 | ||
* Fixed a bug reported by Ryan Zezeski with the | ||
save_response_to_file option. | ||
https://github.com/cmullaparthi/ibrowse/issues#issue/33 | ||
|
||
16-01-2011 - v2.1.3 | ||
* Fixed issues with streaming and chunked responses when using | ||
the 'caller controls socket' feature. See following links for | ||
details. Contributed by Filipe David Manana. | ||
https://github.com/cmullaparthi/ibrowse/pull/24 | ||
https://github.com/cmullaparthi/ibrowse/pull/25 | ||
https://github.com/cmullaparthi/ibrowse/pull/27 | ||
https://github.com/cmullaparthi/ibrowse/pull/28 | ||
https://github.com/cmullaparthi/ibrowse/pull/29 | ||
|
||
* Fix for issue 32 reported by fholzhauser | ||
https://github.com/cmullaparthi/ibrowse/issues#issue/32 | ||
|
||
* Fixed some dialyzer warnings. Thanks to Kostis for reporting | ||
them. | ||
|
||
20-12-2010 - v2.1.2 | ||
* Pipelining wasn't working when used in conjunction with the | ||
{stream_to, {self(), once}} option. Bug report by | ||
Filipe David Manana. | ||
|
||
10-12-2010 - v2.1.1 | ||
* Fix for https://github.com/cmullaparthi/ibrowse/issues/issue/20 | ||
by Filipe David Manana | ||
|
||
* Fix for https://github.com/cmullaparthi/ibrowse/issues/issue/21 | ||
by Filipe David Manana | ||
|
||
* Fix for https://github.com/cmullaparthi/ibrowse/issues/issue/23 | ||
by Filipe David Manana | ||
|
||
* Fix for bugs when using SSL by Jo?o Lopes | ||
|
||
25-10-2010 - v2.1.0 | ||
* Fixed build on OpenSolaris. Bug report and patch from | ||
tholschuh. | ||
http://github.com/cmullaparthi/ibrowse/issues/issue/10 | ||
|
||
* Fixed behaviour of inactivity_timeout option. Reported by | ||
Jo?o Lopes. | ||
http://github.com/cmullaparthi/ibrowse/issues/issue/11 | ||
|
||
* Prevent atom table pollution when bogus URLs are input to | ||
ibrowse. Bug report by Jo?o Lopes. | ||
http://github.com/cmullaparthi/ibrowse/issues/issue/13 | ||
|
||
* Automatically do Chunked-Transfer encoding of request body | ||
when the body is generated by a fun. Patch provided by | ||
Filipe David Manana. | ||
http://github.com/cmullaparthi/ibrowse/issues/issue/14 | ||
|
||
* Depending on input options, ibrowse sometimes included multiple | ||
Content-Length headers. Bug reported by Paul J. Davis | ||
http://github.com/cmullaparthi/ibrowse/issues/issue/15 | ||
|
||
* Deal with webservers which do not provide a Reason-Phrase on the | ||
response Status-Line. Patch provided by Jeroen Koops. | ||
http://github.com/cmullaparthi/ibrowse/issues/issue/16 | ||
|
||
* Fixed http://github.com/cmullaparthi/ibrowse/issues/issue/17 | ||
This was reported by Filipe David Manana. | ||
|
||
* Fixed http://github.com/cmullaparthi/ibrowse/issues/issue/19 | ||
This was reported by Dan Kelley and Filipe David Manana. | ||
|
||
* Added ibrowse:stream_close/1 to close the connection | ||
associated with a certain response stream. Patch provided by | ||
Jo?o Lopes. | ||
|
||
* Prevent port number being included in the Host header when port | ||
443 is intended. Bug reported by Andrew Tunnell-Jones | ||
|
||
24-09-2010 - v2.0.1 | ||
* Removed a spurious io:format statement | ||
|
||
22-09-2010 - v2.0.0. | ||
|
||
* Added option preserve_chunked_encoding. This allows the | ||
caller to get the raw HTTP response when the | ||
Transfer-Encoding is Chunked. This feature was requested | ||
by Benoit Chesneau who wanted to write a HTTP proxy using | ||
ibrowse. | ||
|
||
* Fixed bug with the {stream_to, {Pid, once}} option. Bug | ||
report and lot of help from Filipe David Manana. Thank | ||
you Filipe. | ||
|
||
* The {error, conn_failed} and {error, send_failed} return | ||
values are now of the form {error, {conn_failed, Err}} | ||
and {error, {send_failed, Err}}. This is so that the | ||
specific socket error can be returned to the caller. I | ||
think it looks a bit ugly, but that is the best | ||
compromise I could come up with. | ||
|
||
* Added application configuration parameters | ||
default_max_sessions and default_max_pipeline_size. These | ||
were previously hard coded to 10. | ||
|
||
* Versioning of ibrowse now follows the Semantic Versioning | ||
principles. See http://semver.org. Thanks to Anthony | ||
Molinaro for nudging me in this direction. | ||
|
||
* The connect_timeout option now only applies to the | ||
connection setup phase. In previous versions, the time | ||
taken to setup the connection was deducted from the | ||
specified timeout value for the request. | ||
|
||
17-07-2010 - * Merged change made by Filipe David Manana to use the base64 | ||
module for encoding/decoding. | ||
|
||
11-06-2010 - * Removed use of deprecated concat_binary. Patch supplied by | ||
Steve Vinoski | ||
|
||
10-06-2010 - * Fixed bug in https requests not going via the proxy | ||
|
||
12-05-2010 - * Added support for the CONNECT method to tunnel HTTPS through | ||
a proxy. When a https URL is requested through a proxy, | ||
ibrowse will automatically use the CONNECT method to first | ||
setup a tunnel through the proxy. Once this succeeds, the | ||
actual request is dispatched. Successfully tested with the | ||
new SSL implementation in R13B-03 | ||
* Added SSL support for direct connections. | ||
See ibrowse:spawn_worker_process/1 and | ||
ibrowse:spawn_link_worker_process/1 | ||
* Added option to return raw status line and raw unparsed headers | ||
|
||
23-04-2010 - * Fixes to URL parsing by Karol Skocik | ||
|
||
08-11-2009 - * Added option headers_as_is | ||
|
||
04-10-2009 - * Patch from Kostis Sagonas to cleanup some code and suppress | ||
dialyzer warnings | ||
|
||
24-09-2009 - * When a filename was supplied with the 'save_response_to_file' | ||
option, the option was being ignored. Bug report from | ||
Adam Kocoloski | ||
|
||
05-09-2009 - * Introduced option to allow caller to set socket options. | ||
|
||
29-07-2009 - * The ETS table created for load balancing of requests was not | ||
being deleted which led to the node not being able to create | ||
any more ETS tables if queries were made to many number of | ||
webservers. ibrowse now deletes the ETS table it creates once the | ||
last connection to a webserver is dropped. | ||
Reported by Seth Falcon. | ||
* Spurious data being returned at end of body in certain cases of | ||
chunked encoded responses from the server. | ||
Reported by Chris Newcombe. | ||
|
||
03-07-2009 - Added option {stream_to, {Pid, once}} which allows the caller | ||
to control when it wants to receive more data. If this option | ||
is used, the call ibrowse:stream_next(Req_id) should be used | ||
to get more data. | ||
* Patch submitted by Steve Vinoski to remove compiler warnings | ||
about the use of obsolete guards | ||
|
||
29-06-2009 - * Fixed following issues reported by Oscar Hellstr?m | ||
* Use {active, once} instead of {active, true} | ||
* Fix 'dodgy' timeout handling | ||
* Use binaries internally instead of lists to reduce memory | ||
consumption on 64 bit platforms. The default response format | ||
is still 'list' to maintain backwards compatibility. Use the | ||
option {response_format, binary} to get responses as binaries. | ||
* Fixed chunking bug (reported by Adam Kocoloski) | ||
* Added new option {inactivity_timeout, Milliseconds} to timeout | ||
requests if no data is received on the link for the specified | ||
interval. Useful when responses are large and links are flaky. | ||
* Added ibrowse:all_trace_off/0 to turn off all tracing | ||
* Change to the way responses to asynchronous requests are | ||
returned. The following messages have been removed. | ||
* {ibrowse_async_response, Req_id, {chunk_start, Chunk_size}} | ||
* {ibrowse_async_response, Req_id, chunk_end} | ||
* Fixed Makefiles as part of Debian packaging | ||
(thanks to Thomas Lindgren) | ||
* Moved repository from Sourceforge to Github | ||
|
||
11-06-2009 - * Added option to control size of streamed chunks. Also added | ||
option for the client to receive responses in binary format. | ||
|
||
21-05-2008 - * Fixed bug in reading some options from the ibrowse.conf file. | ||
Reported by Erik Reitsma on the erlyaws mailing list | ||
* Fixed bug when cleaning up closing connections | ||
|
||
27-03-2008 - * Major rewrite of the load balancing feature. Additional module, | ||
ibrowse_lb.erl, introduced to achieve this. | ||
* Can now get a handle to a connection process which is not part of | ||
the load balancing pool. Useful when an application is making | ||
requests to a webserver which are time consuming (such as | ||
uploading a large file). Such requests can be put on a separate | ||
connection, and all other smaller/quicker requests can use the | ||
load balancing pool. See ibrowse:spawn_worker_process/2 and | ||
ibrowse:spawn_link_worker_process/2 | ||
* Ram Krishnan sent a patch to enable a client to send a lot of | ||
data in a request by providing a fun which is invoked by the | ||
connection handling process. This fun can fetch the data from | ||
any where. This is useful when trying to upload a large file | ||
to a webserver. | ||
* Use the TCP_NODELAY option on every socket by default | ||
* Rudimentary support for load testing of ibrowse. Undocumented, | ||
but see ibrowse_test:load_test/3. Use the source, Luke! | ||
* New function ibrowse:show_dest_status/2 to view state of | ||
connections/pipelines to a web server | ||
|
||
20-02-2008 - Ram Krishnan sent another patch for another hidden bug in the | ||
save_response_to_file feature. | ||
|
||
07-02-2008 - Ram Krishnan (kriyative _at_ gmail dot com) sent a simple patch to | ||
enable specifying the filename in the save_response_to_file option. | ||
When testing the patch, I realised that my original implementation | ||
of this feature was quite flaky and a lot of corner cases were | ||
not covered. Fixed all of them. Thanks Ram! | ||
|
||
17-10-2007 - Matthew Reilly (matthew dot reilly _at_ sipphone dot com) | ||
sent a bug report and a fix. If the chunk trailer spans two TCP | ||
packets, then ibrowse fails to recognise that the chunked transfer | ||
has ended. | ||
|
||
29-08-2007 - Bug report by Peter Kristensen(ptx _at_ daimi dot au dot dk). | ||
ibrowse crashes when the webserver returns just the Status line | ||
and nothing else. | ||
|
||
28-06-2007 - Added host_header option to enable connection to secure sites | ||
via stunnel | ||
|
||
20-04-2007 - Geoff Cant sent a patch to remove URL encoding for digits in | ||
ibrowse_lib:url_encode/1. | ||
ibrowse had a dependency on the inets application because the | ||
ibrowse_http_client.erl invoked httpd_util:encode_base64/1. This | ||
dependency is now removed and the encode_base64/1 has been | ||
implemented in ibrowse_lib.erl | ||
|
||
06-03-2007 - Eric Merritt sent a patch to support WebDAV requests. | ||
|
||
12-01-2007 - Derek Upham sent in a bug fix. The reset_state function was not | ||
behaving correctly when the transfer encoding was not chunked. | ||
|
||
13-11-2006 - Youn?s Hafri reported a bug where ibrowse was not returning the | ||
temporary filename when the server was closing the connection | ||
after sending the data (as in HTTP/1.0). | ||
Released ibrowse under the BSD license | ||
|
||
12-10-2006 - Chris Newcombe reported bug in dealing with requests where no | ||
body is expected in the response. The first request would succeed | ||
and the next request would hang. | ||
|
||
24-May-2006 - Sean Hinde reported a bug. Async responses with pipelining was | ||
returning the wrong result. | ||
|
||
08-Dec-2005 - Richard Cameron (camster@citeulike.org). Patch to ibrowse to | ||
prevent port number being included in the Host header when port | ||
80 is intended. | ||
|
||
22-Nov-2005 - Added ability to generate requests using the Chunked | ||
Transfer-Encoding. | ||
|
||
08-May-2005 - Youn?s Hafri made a CRUX LINUX port of ibrowse. | ||
http://yhafri.club.fr/crux/index.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
CONTRIBUTORS | ||
============ | ||
The following people have helped maked ibrowse better by reporting bugs, | ||
supplying patches and also asking for new features. Please write to me if you | ||
have contributed and I've missed you out. | ||
|
||
In alphabetical order: | ||
|
||
Adam Kocoloski | ||
Andrew Tunnell-Jones | ||
Anthony Molinaro | ||
Benoit Chesneau | ||
Chris Newcombe | ||
Dan Kelley | ||
Derek Upham | ||
Eric Merritt | ||
Erik Reitsma | ||
Filipe David Manana | ||
Geoff Cant | ||
Jeroen Koops | ||
Jo?o Lopes | ||
Joseph Wayne Norton | ||
Karol Skocik | ||
Kostis Sagonas | ||
Matthew Reilly | ||
Oscar Hellstr?m | ||
Paul J. Davis | ||
Peter Kristensen | ||
Ram Krishnan | ||
Richard Cameron | ||
Ryan Zezeski | ||
Sean Hinde | ||
Seth Falcon | ||
Steve Vinoski | ||
Thomas Lindgren | ||
Youn?s Hafri | ||
fholzhauser (https://github.com/fholzhauser/) | ||
tholschuh (https://github.com/tholschuh/) |
Oops, something went wrong.