Permalink
Commits on May 31, 2012
  1. 2.2.0 release.

    myronmarston committed May 31, 2012
  2. Make cuke tolerant of slight interpreter discrepancies.

    myronmarston committed May 31, 2012
    JRuby and Rubinius print errors a bit different (e.g.
    extra spacing, different placement of error class
    relative to the error message w/ a multiline message).
  3. Update changelog.

    myronmarston committed May 31, 2012
    [ci skip]
  4. Finish the allow_unused_http_interactions feature.

    myronmarston committed May 30, 2012
    - Add cuke.
    - Add #assert_no_unused_interactions! call from Cassette#eject.
    - Rename error class to match option.
    - Various other small fixes.
Commits on May 30, 2012
  1. Renamed option; made has_unused_interactions? private; don't mix opti…

    challengee committed with myronmarston May 6, 2012
    …on in with http interaction list; Added default option
  2. Reformat changelog.

    myronmarston committed May 30, 2012
    [ci skip]
  3. Some improvements to @tylerhunt's faraday multipart upload fix.

    myronmarston committed May 30, 2012
    - Add tests.
    - Move the body reading out of #vcr_request and into a helper method--
      we don't want it to happen multiple times and #vcr_request is memoized
      for a reason.
    - Refactor the body reading a bit.
    - Use it for the response body, too. I don't really understand it, but
      for some reason the multipart request body becomes the response body
      when no HTTP adapter is set, and due to the change I made in
      d924f66, an error was raised.
    
    Closes #172.
Commits on May 29, 2012
  1. Allow requests to be stubbed by external libraries (e.g. WebMock or F…

    myronmarston committed May 29, 2012
    …akeWeb).
    
    Previously, direct WebMock/FakeWeb/Typhoeus stubs would be ignored
    unless VCR was turned off. However, some users have requested that
    VCR use these stubs if they are set. This enables that.
    
    Part of this changes the VCR::Request::Typed interface a little bit;
    #stubbed? now returns true regardless of how it was stubbed, and
    #stubbed_by_vcr? should be used to test if VCR stubbed it (vs.
    #externally_stubbed?).
    
    Note that I consider this a bit experimental. I'm not sure I've thought
    through all the repercussions of this, and I consider this only
    "semi supported".
    
    Closes #146.
Commits on May 28, 2012
  1. Skip some tests on JRuby that don't apply.

    myronmarston committed May 28, 2012
    JRuby handles YAML and JSON a bit different from MRI.
    Also, JRuby keeps #type in 1.9 mode even though MRI does not (but has it on 1.8).
  2. Fix failing specs on rubinius.

    myronmarston committed May 28, 2012
    I'm not sure why there's this different behavior for MRI vs RBX, but this fixes it.
  3. Fix cukes failing on rubinius.

    myronmarston committed May 28, 2012
    Rubinius now includes some extra leading spaces on some kinds of errors, for some reason.
Commits on May 27, 2012
  1. Require spec support files relative to load path.

    myronmarston committed May 27, 2012
    This should prevent any of them from being loaded twice as long as we use the relative form everywhere.
  2. Uninstall JSON gem before running the Travis build.

    myronmarston committed May 27, 2012
    Some of the VMs appear to have JSON 1.7.1 installed and it's causing weird breakage:
    
    http://travis-ci.org/#!/myronmarston/vcr/jobs/1443136/L145
Commits on May 26, 2012
  1. Fix 1.8.7 compatibility.

    myronmarston committed May 26, 2012
    - On 1.8, #instance_variables returns an array of strings.
    - On 1.9, #instance_variables returns an array of symbols.
  2. Work around bug in WebMock's em-http-request adapter.

    myronmarston committed May 26, 2012
    When the :redirects option is used with em-http-request,
    WebMock's after_request hook gets invoked twice for a
    single request. It appears to be doing it one for the original
    request and once for the following redirect request. However,
    the second time it does not actually have the new URL, and,
    furthermore, the globally_stub_request hook is only invoked
    once. As a result, the @__typed_vcr_request ivar has already
    been removed, and we were getting nil on the second after_request
    hook invocation.
    
    Our fix is to make our WebMock library hook tolerant of the
    @__typed_vcr_request hook not being present. Some things
    (such as filtering an after_http_request hook based on request
    type) will not work properly but the main VCR functionality can
    work this way.
    
    Closes #171.
Commits on May 23, 2012
  1. Update changelog.

    myronmarston committed May 23, 2012
  2. Fix HTTPInteraction filtering to handle integers (e.g. port) correctly.

    myronmarston committed May 23, 2012
    Previously, we would get an error:
      TypeError: can't convert Fixnum into String
    
    Closes #167.
Commits on May 14, 2012
  1. Relax httpclient version constraint.

    myronmarston committed May 14, 2012
    This should pick up the latest, to run the build for #168.
Commits on May 11, 2012
  1. Fix documentation typo.

    myronmarston committed May 11, 2012
Commits on May 7, 2012
  1. Raise an error if a response is recorded with an invalid body.

    myronmarston committed May 4, 2012
    This can occur when a non-standard Faraday stack is used, where a response-modifying middleware comes after the HTTP adapter.
    
    For #159.
  2. Print a warning when a non-standard Faraday stack is used.

    myronmarston committed May 7, 2012
    When the Faraday stack includes a middleware after the HTTP adapter it gets "first dibs" on modifying the response and thus can prevent VCR from recording the response properly.  This is a problem with the instagram gem.
    
    For #159.
  3. Add link to NSURLConnectionVCR.

    myronmarston committed May 7, 2012
    ...and re-arrange links alphabetically while I'm at it.
    
    [ci skip]
Commits on May 4, 2012
  1. Cut rake out of rspec/cucumber for CI builds.

    myronmarston committed May 4, 2012
    When something environmental fails (i.e. not in an individual spec, but when the spec files are being loaded), the rake tasks craps out but does not include the backtrace of what failed.  It's really annoying and hard to troubleshoot.  This should work better.