March 9th, 2009· add lib/fakeweb.rb so you can require "fakeweb" as well [Chris Kampmeier]
· fix compatibility with Ruby 1.9.1 [Chris Kampmeier]
· fix that newlines in file-based responses could be doubled in the response object's body [Mark Menard, Chris Kampmeier]
· fix unnecessary munging of the transfer-encoding header, which improves compatibility with mechanize [Mark Menard]
· fix a test and the RCov dependency to be compatible with JRuby [Mark Menard]
· remove an unnecessary redefinition of OpenURI::HTTPError [Josh Nichols]
· rearrange implementation code into separate files, one per class [Josh Nichols]
· fix a bug where FakeWeb.response_for would raise if the request wasn't registered [Chris Kampmeier]
· add HTTP method support, so FakeWeb takes both the URI and method into account for registration, requests, and responses. Backwards-compatible with the old method signatures, which didn't have a method param. [Chris Kampmeier]
· start work on Ruby 1.9 compatibility [Chris Kampmeier]
· add FakeWeb.allow_net_connect= to enable/disable the pass-through to Net::HTTP for unregistered URIs [Mislav Marohnić, Chris Kampmeier]
· remove setup.rb, since most people use RubyGems [Mislav Marohnić]
· fix that 'http://example.com/?' (empty query) matches a registered 'http://example.com/', and vice-versa [Mislav Marohnić]
· improve the test suite to not rely on an internet connection [Chris Kampmeier]
· use `rake test` instead of `rake tests` [Josh Nichols]
· fix an incompatibility with Ruby 1.8.6 p36 where you'd get "Errno::EINTR: Interrupted system call" exceptions in Socket#sysread for any non-faked request [Chris Kampmeier]
· response rotation: you can now optionally call FakeWeb.register_uri with an array of options hashes; these are used, in order, to respond to repeated requests (to repeat a response more than once before rotating, use the :times option). Once you run out of responses, further requests always receive the last response. [Michael Shapiro]
· add support for Net::HTTP's undocumented full-URI request style (fixes URI::InvalidURIErrors that you might see in older libraries) [Chris Kampmeier]
· sort query params before storing internally, so that http://example.com/?a=1&b=2 and http://example.com/?b=2&a=1 are considered the same URL (although this is technically incorrect, it's much more convenient--most web apps work that way, and Net::HTTP's use of a hash to pass query params means that the order in which FakeWeb stores them can be unpredictable) [Chris Kampmeier]
· add support for ports in URLs, so that http://example.com/ and http://example.com:3000/ are not the same [Chris Kampmeier]
· fix for non-faked SSL requests failing with "Unable to create local socket" [Chris Kampmeier]
· update Rakefile to fix warning about deprecated code [Chris Kampmeier]
October 9th, 2008· Adds proper dependency tracking to GemSpec for firebrigade.