Fetching contributors…
Cannot retrieve contributors at this time
249 lines (153 sloc) 9.13 KB
fakeweb (master branch pending release)
* fix a variety of NoMethodErrors when Net::HTTP#read_timeout= or
Net::HTTP#continue_timeout= is called after a Net::HTTP object has handled a
first fake request under newer versions of Ruby and/or some gems (Mechanize,
aws-sdk, etc.) [Marcel Massana, Trevor Rowe, Chris Kampmeier]
* add ability to accept a StringIO as a fake response body
[Larry Diehl, Andy Delcambre, Chris Kampmeier]
* fix an exception when an IO is passed in as a fake response body
[Chris Kampmeier]
* stub responses with no bodies (e.g. to a HEAD request) now return nil for
#body, not an empty string, to match Net::HTTP's behavior [Myron Marston]
* fix warnings on post-1.8 versions of Ruby [Peter Hellberg, Kenichi Kamiya]
* fix that the options hash passed to FakeWeb.register_uri would sometimes be
modified [Chris Kampmeier]
* raise an ArgumentError when FakeWeb.register_uri's third argument can't be
handled as an options hash [David Cornu, Josef Strzibny, Chris Kampmeier]
* raise the more-specific ArgumentError instead of StandardError when the object
passed to FakeWeb.register_uri's :response option can't be handled; this
should be relatively backwards-compatible because ArgumentError descends from
StandardError [Chris Kampmeier]
* deprecation warnings now detect the caller more robustly to work with JRuby's
backtraces [Chris Kampmeier]
fakeweb (1.3.0)
* improve response header registration so you can pass an array to set a header
more than once [Myron Marston]
* fix an exception when the response's :body option was set to nil [Chris Zingel]
* fix that stubbed requests weren't mutating the Net::HTTP request object to set
the body and content-length, like real requests do [Chris Kampmeier]
* add FakeWeb.last_request [Chris Kampmeier]
* assigning a String or Regexp to FakeWeb.allow_net_connect= sets a whitelist
for outbound requests [Dan Dofter, Tim Carey-Smith, Ben Woosley]
fakeweb (1.2.8)
* support Pathname objects where a filename is expected [Chris Kampmeier]
* fix compatibility with Ruby 1.9.2 [Chris Kampmeier]
* simplify storage of FakeWeb::VERSION [Josh Peek, Woody Peterson, Ben Woosley]
fakeweb (1.2.7)
* revert to sorting query params before matching requests against regexps,
instead of the 1.2.6 behavior that tried every possible order combination;
that was factorial-time, which made matching hang for requests with long query
strings [Jason Wadsworth, David Dollar, Blaine Cook]
* print a warning when FakeWeb is loaded before RightHttpConnection or after
Samuel, other libs that patch Net::HTTP [Chris Kampmeier, Ben Brinckerhoff]
fakeweb (1.2.6)
* fix that query params in a regex would have to be sorted for it to ever match
a request URI [Chris Kampmeier, Ben Hall]
* improve regex handling so registration with an explicit port (like
/ matches a request that uses an implied port
(like "") [Chris Kampmeier, Dan Dofter]
* refactor URI registry to reduce duplication; now about twice as fast at
handling requests [Chris Kampmeier]
* Add FakeWeb::VERSION so you can programmatically determine what version of
FakeWeb is loaded without using RubyGems [Chris Kampmeier, Chris Wanstrath]
fakeweb (1.2.5)
* fix handling of userinfo strings that contain percent-encoded unsafe
characters [Chris Kampmeier, Ken Mayer]
* fix that exact matches against strings/URIs with the :any method had a lower
precedence than regex matches using a real HTTP method (exact matches now
always take precedence) [Chris Kampmeier]
* change request handling to raise an exception when more than one registered
regex matches a request URI [Chris Kampmeier]
fakeweb (1.2.4)
* add experimental support for matching URIs via regular expressions
[Jacqui Maher, Tiago Albineli Motta, Peter Wagene]
* fix an exception when registering with the :response option and a string that
is the same as the name of a directory in the current path [Chris Kampmeier]
* DEPRECATION: Calling FakeWeb.register_uri with a :string or :file option is
now deprecated. Both options have been replaced with a unified :body option,
since they supply the response body (as opposed to :response, which supplies
the full response including headers) [Chris Kampmeier]
* add support for specifying HTTP headers as options to FakeWeb.register_uri
when using the :string or :file response types, since those methods only
specify a response body [David Michael, Chris Kampmeier]
* DEPRECATION: Calling FakeWeb.register_uri and FakeWeb.registered_uri? without
an HTTP method as the first argument is now deprecated. To match against any
HTTP method (the pre-1.2.0 behavior), use :any [Chris Kampmeier]
fakeweb (1.2.3)
* fix the #http_version of :file and :string responses, which was returning the
request URI instead of something sensible like "1.0" [Chris Kampmeier]
* add method aliases in the Net::HTTP patch to eliminate warnings when running
with -w [Joshua Clingenpeel]
* fix that removing the redefinition of OpenURI::HTTPError in 1.2.0 caused
:exception responses to raise when OpenURI isn't available [Chris Kampmeier]
* fix registering an :exception response with classes that require arguments for
instantiation, like Interrupt's subclasses [Chris Kampmeier]
fakeweb (1.2.2)
* fix that HTTP Digest and OAuth requests could raise URI::InvalidURIErrors
[Bill Kocik, Chris Kampmeier]
fakeweb (1.2.1)
* fix that query parameters are handled correctly when registering with a URI
object [Anselmo Alves, Chris Kampmeier]
* fix an exception when registering with the :response option and a string
containing "\0" [Jonathan Baudanza, Chris Kampmeier]
* fix that trailing slashes were considered significant for requests to the root
of a domain [Chris Kampmeier]
* add support for HTTP basic authentication via userinfo strings in URIs
[Michael Bleigh]
fakeweb (1.2.0)
* 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 '' (empty query) matches a registered
'', 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 and 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 and 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]
fakeweb (1.1.2)
* add required dependencies to GemSpec to ensure that tests pass in firebrigade
( [Blaine Cook]
fakeweb (1.1.1)
* fix for non-existence of :string method on File as presented by open-uri
[Blaine Cook]
* fix for curl example test - google redirects to ccTLDs for those outside US
[Blaine Cook]
fakeweb (1.1.0)
* update code to correspond to ruby 1.8.4 (breaks compatibility with ruby 1.8.2)
[Blaine Cook]
fakeweb (1.0.0)
* initial import [Blaine Cook]