Skip to content

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
This comparison is big! We’re only showing the most recent 250 commits
Commits on Aug 29, 2011
@myronmarston Filter out warnings that JRuby wrongly reports as coming from VCR tha…
…t are actually coming from excon.
@myronmarston 1.11.2 release. 76c8d2b
Commits on Sep 01, 2011
@myronmarston Ensure that VCR::HTTPInteraction does not serialize `@ignored` since …
…it's transient state.
@myronmarston Convert pseudo-regexps to real regexps. 8545f21
@myronmarston 1.11.3 release. 0544db9
Commits on Sep 04, 2011
@myronmarston Fix capture warnings hook.
It was preventing RSpec from failing the build when a spec failed by overriding the at_exit hook.
@myronmarston Build with --trace so we get a full backtrace. a2c36c3
Commits on Sep 05, 2011
@myronmarston Rubygems must be required before rspec on 1.8. 68e89ca
Commits on Sep 08, 2011
@myronmarston Latest relish and cucumber. 751bf4f
@myronmarston Tag multi-line strings with "ruby" so we get syntax highlighting on r…
@myronmarston Add note about :once as default record mode. 522ef5e
@myronmarston Use syntax-highlighted markdown code syntax. 43fea87
@myronmarston Use default record mode of :once rather than specifying it in a bunch…
… of places where it's not an important detail.
Commits on Sep 10, 2011
@myronmarston Bump version to 2.0.0.pre.
I'm going to start working on some new 2.0 features in the VCR master branch :).
@myronmarston Don't build VCR 2.0 on 1.8.6.
I'm dropping support for 1.8.6 and it fails intermittently on travis anyway.
Commits on Sep 11, 2011
@myronmarston Don't bother testing against 1.9.1 anymore.
I don't plan to have VCR 2.0 support 1.9.1 and this allows us to cleanup a lot of special case code for 1.9.1.
@myronmarston Some additional cleanup to remove 1.8.6/1.9.1 support. c812e28
@myronmarston Update changelog. 145918e
@myronmarston Remove lots of old deprecations. 004dfa9
@myronmarston Don't run cukes on jRuby on travis since it takes so long. 19c93af
@myronmarston Prefer a true closure to eval'ing a string.
We had to eval a string to support 1.8.6 since 1.8.6 cannot have a `&block` block parameter.
@myronmarston Remove task that is no longer needed. 6c55cff
@myronmarston Change VCR::Hooks so it can be used in a class.
The old version just worked in a singleton module (i.e. a module that is extended on itself).
Commits on Sep 12, 2011
@myronmarston Deprecate `VCR::Config` in favor of `VCR.configuration` and `VCR.conf…
…ig` in favor of `VCR.configure`.

- "config" is ambiguous--is it short for "configure" (the verb) or "configuration" (the noun)?
- I like this new way since it's more inline with other ruby libraries like RSpec.
- The old singleton module made isolated tests hard as there was a lot of global state to cleanup between tests.  Now there is just one piece of state: the VCR::Configuration instance held by VCR.configuration.  This makes it far easier to keep my tests isolated.
Commits on Sep 13, 2011
@myronmarston Refactor webmock adapter to use the block interface. dc69915
@myronmarston Make the regex scenarios pending since the webmock refactoring doesn'…
…t easily work with it.

I'll need to refactor the request matchers before the regex feature will work again.
Commits on Sep 14, 2011
@myronmarston Move FakeWeb/Net::HTTP specific logic into the FakeWeb adapter. b658d78
Commits on Sep 17, 2011
@myronmarston Refactor FakeWeb adapter.
This allows FakeWeb to match requests on body and headers.
@myronmarston Refactor/simplify how connection errors are raised. bd4c2bf
@myronmarston Refactor the Typhoeus adapter. fb7c903
@myronmarston Cleanup how we reset the stubbing adapters for the specs. e38a150
Commits on Sep 18, 2011
@myronmarston Add test coverage of WebMock and Typhoeus being used together.
This already worked but it's nice to get the test coverage so we know it will continue to work.
@myronmarston Set some ENV vars to speed up jRuby cukes and enable cukes on jRuby o…
…n travis.
Commits on Sep 19, 2011
@myronmarston Remove cucumber guard.
I'm finding it more annoying then useful. I just want to use guard for the specs.
@myronmarston Extract the version checking logic into its own class.
Single responsibility principle is a good thing.
@myronmarston Fix ruby warnings (private attributes). 085f006
@myronmarston Remove some old deprecations.
I meant to remove these in commit 004dfa9 but missed them.
@myronmarston Remove 1.8.6 and 1.9.1 from the list of supported ruby versions. a6f0410
Commits on Sep 23, 2011
@myronmarston Override WebMock.reset! to preserve the global VCR/WebMock hook.
This allows us hook into every request, rather than just the ones that happen while a cassette is inserted.
@myronmarston Remove unnecessary cleanup lines from global before(:each) hook. daae550
@myronmarston Only build master and 1-x-stable branches. 5847e49
@myronmarston Ignore rvmrc. 47585f8
@myronmarston Reorganize struct requires so that "vcr/structs/http_interaction" req…
…uires them all.
@myronmarston Add initial version of RequestMatcherRegistry. 29117f9
@myronmarston Add HTTPInteractionList class to manage a list of HTTP interactions f…
…or a cassette.
Commits on Sep 24, 2011
@myronmarston Require spec_helper before the spec files so we don't get an RSpec co…
…nfig warning.
@myronmarston Use the new HTTPInteractionList rather than stubbing requests on the …
…HTTP Stubbing Adapter.

This allows us to remove the RequestMatcher and Regexes classes since
they are no longer used.
Commits on Sep 25, 2011
@myronmarston Split massive request_matching cuke into individual ones.
Also, remove regex scenario as VCR 2.0 will no longer be supporting that.
@myronmarston Rework changelog a bit. ad12768
@myronmarston Correct config specs.
They got a bit messed up during a global find and replace operation before.
@myronmarston Add ability to register custom request matchers. c77e172
@myronmarston Fix spec ruby_opts so that the spec_helper file is only loaded once.
We require it as "spec_helper" from our specs so it's important we do the same here so it's not double-required.  This fixes a few warnings on ruby 1.8.
Commits on Sep 26, 2011
@myronmarston Remove need to require 'vcr_cucumber_helpers' in each scenario.
This is an implementation detail of how the cukes work and need not be publicly exposed as part of the cucumber scenarios.
Commits on Sep 28, 2011
@myronmarston Remove unused error class. 0b63d3e
Commits on Sep 29, 2011
@myronmarston Remove unnecessary VariableArgsBlockCaller.
It came in handy in 1.x releases to preserve backwards compatibility, so that if people used lambdas for some of the blocks/hooks, they would not get an ArgumentError when I added new yielded args, but it's not really needed.
@myronmarston Revert "Remove unnecessary VariableArgsBlockCaller."
This reverts commit e27202d.

Unfortunately, 1.8 and 1.9 blocks have different behavior:

block = { |x| puts x.inspect }, 2)

On 1.8, x gets [1, 2]; on 1.9, x gets 1.  So this VariableArgsBlockCaller is more important than I thought to maintain 1.8 compatibility.
@myronmarston Remove excess cuke scenarios that aren't providing much benefit. f23ad1f
Commits on Sep 30, 2011
@myronmarston Use more consistent regexes. e7125e7
@myronmarston Refactor http_connections_allowed.
It's far simpler to query its state at request time then to assign its
state to the HTTP stubbing adapters.
Commits on Oct 01, 2011
@myronmarston Woops, it's a method not an ivar. 0451f5a
@myronmarston Refactor request ignoring. 1de112c
@myronmarston Remove obselete code that is no longer needed. 65f1389
@myronmarston Add travis build status image. af93528
@myronmarston Remove unneeded before(:each) hook. 2d24d0a
@myronmarston Refactor the way we check versions of external dependencies. aee1482
@myronmarston Remove unused dead code. 0c0a613
@myronmarston Force the stubbing adapter to load. c034add
Commits on Oct 02, 2011
@myronmarston Shorten VCR.request_matcher_registry to VCR.request_matchers. 3865cd4
@myronmarston We really only care if the registry has the key, not what it is. b478428
@myronmarston Allow any callable to be passed as a request matcher. c51338d
@myronmarston Add uri_without_param(s) feature. e5d899c
@myronmarston Thanks to @avdi for the helpful suggestion to make any callable a mat…
@myronmarston Cleanup typhoeus adapter a bit. 60e5c5c
@myronmarston Standardize indentation of privates. 7ab9679
@myronmarston Clean up webmock adapter a bit. 61f1021
@myronmarston Add :allow_playback_repeats option and turn off repeats by default.
Closes #54.
@myronmarston Remove MultiObjectProxy since it's no longer needed. cae04f3
@myronmarston Remove #after_adapters_loaded from adapter interface.
Instead, use a callback.
@myronmarston Ensure that VCR will work even if an end user calls WebMock.disable_n…
Commits on Oct 03, 2011
@myronmarston Simplify how the HTTP stubbing adapters get loaded. b19d442
@myronmarston Fix typo. 407af54
@myronmarston Simplify how stubbing adapters get disabled. e7f7e4b
@myronmarston Add some notes/questions about what to do with Faraday. f932824
@myronmarston Move deprecations to the root vcr directory.
There's no point to having a folder with only one file.
@myronmarston Clean up the errors VCR raises.
This also allows us to remove the unneeded VCR::HTTPStubbingAdapters::Common module.
@myronmarston Simplify requires and autoloads.
These things didn't need to all be separately files. Fewer files is good, since 1.9.2 has performance problems with too many requires.
@myronmarston Remove unused variable.
This fixes a warning on 1.9.3.
Commits on Oct 04, 2011
@myronmarston Simplify the shared example group structure of the adapters. 8ba7f47
@myronmarston Extract common request handling logic into a base class. b3bc7d3
Commits on Oct 05, 2011
@myronmarston Overhaul faraday middleware/adapter.
* `config.stub_with :faraday` is deprecated. Just use the middleware.
* The middleware no longer takes a block that determines the cassette. Instead, you
  will need to wrap your requests in `VCR.use_cassette`, just like for every other
* Update acceptable Faraday version constraint to ~> 0.7.0.
* Use faraday's `on_complete` hook for after request actions.

Closes #64.
@myronmarston Moved a couple more error class definitions in to errors.rb. a403367
@myronmarston Remove faraday w/ patron scenarios.
These have timeout issues--patron doesn't seem to work well when the server is in the same process in a different thread.
Commits on Oct 06, 2011
@myronmarston Remove unnecessary module VCR::Middleware::Common.
It was only being used by the rack middleware so I can just move it in there.
@myronmarston Simplify default_cassette_options. 4c3d226
@myronmarston Remove unneeded hook invocation. 7481cbf
@myronmarston Deprecate #stub_with in favor of #hook_into.
#stub_with made sense when VCR worked only with FakeWeb and WebMock, but `stub_with :faraday` and `stub_with :excon` never really made sense.  Now that the integration is no longer through the adapter design pattern, and simply uses FakeWeb/WebMock/Excon/Typhoeus/Faraday to hook into the request, `hook_into` makes a lot more sense.
@myronmarston Remove unnecessary disabled? check. dbf7a20
@myronmarston Update relish nav. b44e3a0
Commits on Oct 07, 2011
@myronmarston Add :exclusive cassette option.
Closes #53.
Commits on Oct 09, 2011
@myronmarston 2.0.0.beta1 release. e57f1c3
@myronmarston Use past tense verb like the other parts of the changelog. 60f00d1
@myronmarston Turn uri_without_param matcher lambda into a first-class object.
This also has the potential perf benefit of being memoized.
Commits on Oct 11, 2011
@myronmarston We should require the files we use. ef54e61
@myronmarston Allow a uri_without_param matcher to be converted to a proc.
This allows it to be easily registered as a matcher.
Commits on Oct 13, 2011
@myronmarston Remove obselete tag. ff54320
@myronmarston Don't do lossy normalization to the cassette data.
The normalization was originally done so that the cassette contents would be the same, regardless of the HTTP library used.  However, this normalization was lossy and could not always be accurately denormalized.

The most important thing is that VCR replays a response exactly as it originally occurred.

For more background on this, see

Closes #78.
@myronmarston 1.8 cannot parse default values for block args. 9a46f20
@myronmarston Net/HTTP adds a user agent header on 1.9 but not 1.8. c2a794b
@myronmarston Patron adds an "Expect" header. 90d9413
@myronmarston Allow for nil request headers hash. a274f7f
Commits on Oct 14, 2011
@myronmarston Combine separate struct files into one.
There isn't much need for so many smaller files. With 1.9.2's slow require issue, it's better to have fewer files, too.
@myronmarston Might as well combine the struct specs, too. ca7e065
Commits on Oct 16, 2011
@myronmarston Add travis-testing branch to list of branches listed by travis.
@myronmarston Upgrade to rspec 2.7.
In 2.7, the skip_bundler rake task option is deprecated.
Commits on Oct 17, 2011
@myronmarston Setup rbx build on travis. e100a15
Commits on Oct 18, 2011
@myronmarston Define some new travis build targets.
- rbx
- ruby-head
- jruby w/ --1.9 flag
Commits on Oct 19, 2011
@myronmarston Remove some travis build targets that are causing problems.
- ruby-head isn't passing yet and I'm not sure how stable it is.
- the JRuby 1.8/1.9 thing caused all of the build targets to fail but travis is giving me no build output to indicate why.
@myronmarston Update to latest typhoeus. No more need to monkey patch it! 46c3be8
Commits on Oct 27, 2011
@myronmarston We don't need to support 1.8.6 any more. c087678
@myronmarston Fix structs_spec so that is runnable in isolation without loading spe…
@myronmarston Add #to_hash and .from_hash methods to structs. 8c30044
@myronmarston Add serializers. d78941d
@myronmarston Add a rake task to migrate the cassettes from the 1.x format to the 2…
….x format.

Also, normalize nil body to a blank string.

It's nice to always be able to treat the body as a string and not need to worry about a nil special case.
@myronmarston First pass at using the new serializers. 03c4e86
@myronmarston Lazily load the YAML serializer. 0a934ca
@myronmarston Remove unneeded VCR::YAML module. 3ddec24
@myronmarston Add syck and psych serializers. e0a75c0
@myronmarston Add JSON serializer using MultiJson. 1111e69
Commits on Oct 28, 2011
@myronmarston Fix cucumber helper method to return an HTTP interaction like it is m…
…eant to.
@myronmarston Add :serialize_with cassette option. d54d572
@myronmarston Allow users to register custom serializers.
Closes #62.
@myronmarston Add todo 3771291
Commits on Oct 29, 2011
@myronmarston Work around weird ruby 1.8 bug.
See and rspec/rspec-core#487 for examples of the bug.  Because I was calling a method that used defined? on a nested constant in a rescue clause, it caused the interpreter to immediately exit.  This fixes it by not calling the method in the rescue clause.
@myronmarston Setup debugger in cuke environment. 088f25c
@myronmarston Fix for patron cukes on 1.8.7. 33a84ed
@myronmarston Fix cukes on 1.8.7.
On 1.8.7 `!!null` (from psych) was deserializing to `#<YAML::PrivateType:0x1026764e0 @type_id="null", @value="">` on syck.
@myronmarston Psych serializes nil differently on 1.9.2 and 1.9.3.
This should fix the failing 1.9.3 build.
@myronmarston Deal with the fact that JRuby serializes YAML with extra whitespace. 715c5ac
@myronmarston Fix conditional before hook to actually be conditional. 9f9ea64
@myronmarston Update format.feature to make it demonstrate deserialization. 160ee01
@myronmarston Fix multi json link. 75ad34d
@myronmarston Bump up timeout a bit.
On travis, the rbx builds are occasionally exceeding the 10 second timeout.
Commits on Oct 31, 2011
@myronmarston Add recorded_with metadata to cassette format.
This will make future updates to the cassette easier as it will tell us
what version of VCR was used to record a cassette, allowing easy
@myronmarston Fix build on jRuby due to YAML differences. e232da1
@myronmarston Simplify implementation of HTTPInteraction#ignore!
Now that we don't serialize the struct to YAML directly we don't need to worry about adding another instance variable to it.
Commits on Nov 01, 2011
@sfsekaran sfsekaran Fixing the nil query string exception when using uri_without_param(s)
* VCR::RequestMatcherRegistry::URIWithoutParamsMatcher#partial_uri_from
* incorrectly expects uri.query never to be nil. However, it is nil when
* there are no query params.
@myronmarston Merge pull request #100 from sfsekaran/uri_without_params_nil_query_fix
Fixing the nil query string exception when using uri_without_param(s)
@myronmarston Fix typo. 5e4e261
@myronmarston Acknowledge sfesekaran for that last fix. a70c39f
@myronmarston "break" makes more sense then "next" here.
They do the same thing but "next" implies there is another iteration of a loop and there isn't.
@myronmarston Use sfekaran's full name based on the commit. 0520b4e
Commits on Nov 02, 2011
@myronmarston It's request, not request signature. 727510f
@myronmarston Add task to re-migrate spec fixtures. 04e2595
@myronmarston Rename method for greater clarity. a578656
@myronmarston Extract logic into accessor method for previously_recorded_interactions. de87c64
@myronmarston Extract http_interactions logic into accessor method. 1847070
@myronmarston Update cucumber migration task. f46cfa5
@myronmarston Add recorded_at to cassette format and use it for the re_record_inter…
…val option.

This is better than using the file modification time because we can't count on that accurately reflecting when the cassette was recorded, especially when people change git branches or whatever.
@myronmarston Remove unnecessary URI normalization in the :uri matcher.
This was just needed to get the test to pass that created a cassette with a particular URI and then tested a request against it.  Different HTTP libraries normalize URIs differently so we had to mirror that normalization as well.

However, if we test the recording and the playback, we don't need to do manual normalization, because we will record the URI in the same form it will be played back since the HTTP library will treat it the same way both times.
@myronmarston Simplify #without_standard_port a bit. 8b05b6f
@myronmarston Fix describe string.
The method used to be #for but is now #[].
@myronmarston Add an additional HTTPS example. 11f9c61
@myronmarston Provide a friendly error message when a VCR 1.x cassette is used. 4cc58a8
@myronmarston We're not using set in this file anymore. d0ca3d5
Commits on Nov 03, 2011
@myronmarston Update changelog. 814eba2
Commits on Nov 06, 2011
@myronmarston Add similar libraries to readme. 970140c
@myronmarston Lock curb to 0.7.15 for now since 0.7.16 causes webmock to call the a…
…fter_request hook twice for each request.
Commits on Nov 07, 2011
@myronmarston Add an upgrade guide. 59e1d92
@myronmarston Mention the upgrade guide in the error message. b643877
@myronmarston Ignore the symlinked file. 1013c4c
@myronmarston 2.0.0.beta2 release. a47947b
@myronmarston Deterministically boot the sinatra app in spec helper.
Before, it would be booted the first time the server was referenced to get the port.  This could lead to failures if the specs were run in a different order or a subset of them were run, though, because the current VCR settings could affect the booting of the server.
@myronmarston Fix typhoeus/webmock specs to not be order dependent.
We have some specs that use `load` to re-load the hook file, and these were adding additional callbacks so that requests were getting recorded multiple times.  The fix is to stub the callback registration methods for the specs that re-load the hook files.
@myronmarston Setup randomized rspec runs using 2.8.0.rc1. 463b440
Commits on Nov 09, 2011
@myronmarston Automatically insert VCR middleware into faraday.
Closes #97.
@myronmarston Allow requests to be ignored by defining a block.
This is much more flexible than the other config options for ignoring

Closes #90.
@myronmarston Update changelog. 8be100d
@myronmarston Set content length header based on number of bytes, not chars.
Closes #96.
@myronmarston NullList has no state so it does not need to be a class.
It saves a bit of memory by reusing a singleton object.
@myronmarston Speed up HTTPInteractionList a bit.
We can fetch the matcher objects once at instantiation time so that we don't have to re-fetch them every time we are matching a request.
@myronmarston Update gemspec to reflect that VCR no longer supports 1.8.6. 4441654
Commits on Nov 11, 2011
@myronmarston Escape underscores. a7c480a
@myronmarston Fix relish links. 0771f11
Commits on Nov 13, 2011
@myronmarston Fix to be in line with VCR 2.0 conventions. 8d437cf
Commits on Nov 14, 2011
@myronmarston Change the unhandled request error class and message.
I'm going to be expanding this a lot for issue #92 but I wanted to get the basics in place and get the tests in a stable state so that they should continue to pass as I expand the error message.
@myronmarston Improve unhandled request error messages.
Closes #92.
@myronmarston Try different rbx build targets. e0a01a7
@myronmarston Fix the error message formatting so it doesn't double-format a message. 34e4ee6
Commits on Nov 15, 2011
@myronmarston Remove use of Dir.mktmpdir to get build to pass on JRuby.
The travis JRuby builds are intermittently failing with "permission denied" errors from `Dir.mktmpdir`.
@myronmarston Update getting started to include new error messages. 330b4d6
@myronmarston Remove rbx for now since bundle install is failing on it. 7ebb478
@myronmarston Use debugger on jruby. 0358c88
Commits on Nov 16, 2011
@myronmarston Change cucumber profile to allow use of @wip simply to filter features. 977a9f1
Commits on Nov 17, 2011
@myronmarston Exclude some cuke scenarios to run on jruby to work around weird bug.
For some reason, these are failing because they are asserting the expected error message but aruba is reporting the output as "V" (yes, just one character!).  I have no idea why...
Commits on Nov 18, 2011
@myronmarston Update WebMock adapter to take advantage of new globally_stub_request…
… hook.
Commits on Nov 19, 2011
@myronmarston Remove confusing use of aliasing. 45145a1
Commits on Nov 20, 2011
@myronmarston Fix specs for Typhoeus 0.3.3 a7d676d
@myronmarston Update to WebMock 1.7.8. 89ffa4b
@myronmarston Fix FakeWeb/Net::HTTP regression. 134bb9a
@myronmarston Fix cassette name so it matches a sanitized cassette name.
This allows us to actually use it as a cassette in a test.
@myronmarston Fix comment typo. 426b0a1
@myronmarston Add before_http_request hook.
For issue #91.
@myronmarston Add after_http_request hook.
For issue #91.

Note that when using Typhoeus or WebMock, it's not guaranteed that the after_request hook will fire for every request; if an error (such as a socket error) occurs before the request completes then the Typhoeus/WebMock after_request hook will not fire, which means VCR will not be able to fire its after_http_request hook in turn.  There's not much I can do about this, unfortunately.

For Excon, Faraday and FakeWeb, I use an ensure block to guarantee that the hook will be invoked.  This is possible because VCR wraps the entire request for these library hooks.
@myronmarston Remove unused local variables to fix 1.9.3 warnings. 6ea465d
Commits on Nov 21, 2011
@myronmarston Ensure all request hooks are only called once per request.
Previously, the before_http_request hooks were being called twice for one request in some cases when using FakeWeb and Net::HTTP.  Also, in the VCR test environment there could be many hook invocations from WebMock/Typhoeus due to double-registration of hooks and such.
@ryanb ryanb adding contributing link to readme 4633776
@myronmarston Merge pull request #104 from ryanb/readme-contributing-link
Add contributing link to README
@myronmarston Add hook API that doesn't require passing a tag.
Most of our hook invocations don't use tags now.
@myronmarston Add ryanb to contributors list. b8c138a
Commits on Nov 22, 2011
@FlaviuSim FlaviuSim added the contributing wiki to the project for symlinking with relish 7b9bf81
@myronmarston Fix links in to use markdown format rather than githu…
…b wiki format.
@myronmarston Ignore the symlinked file. 7b05e11
@myronmarston Add contributing guide to relish .nav. 9ad57be
@myronmarston Fix contributing link from readme now that it's under source control. 4a53a6d
@myronmarston Add Flaviu to list of contributors. 8c6cd60
Commits on Nov 23, 2011
@myronmarston Add around_http_request hook.
For issue #91.
@myronmarston Fix readme synopsis to use VCR 2.0 APIs. 430ccd1
Commits on Nov 25, 2011
@myronmarston Extract separate cuke files for each hook type. 5d4078e
@myronmarston Add rake task to re-run the last cuke. 8cefe96
@myronmarston Fix around_http_request to support multiple requests.
Fibers can only be used once so we have to create a new one for each request.
Commits on Nov 26, 2011
@pacoguzman pacoguzman FIX synopsis using configure instead configuration d6576e3
@myronmarston Give Paco credit for his contribution. 4b274c3
Commits on Nov 28, 2011
@myronmarston Add cukes documenting new http request hooks.
Closes #91.
@myronmarston Use latest excon.
Closes #106.
@myronmarston Add link to source of query method. 0912189
@myronmarston Normalize request method to a lower case symbol.
Fog uses excon by passing `:method => "POST"`.

Closes #105.
@myronmarston Normalize URI without standard port.
This is how people tend to write URIs anyway.
@myronmarston Revert "Use latest excon."
This reverts commit 6e13de0.

It worked for me locally but it broke the Travis build :(.
@myronmarston Fix "interning empty string" error on ruby 1.8. 23aedda
Commits on Nov 29, 2011
@myronmarston Add define_cassette_placeholder as an alias for filter_sensitive_data.
Closes #102.
@myronmarston Fix version checker logic.
If the min_patch is 0.6.5 and the max_minor is 0.7 and the library version is 0.7.3, the old code would wrongly categorize it as :too_low.
Commits on Nov 30, 2011
@myronmarston Remove unneeded method.
It was needed for the WebMock hook before I refactored it to take advantage of the global stub hook in WebMock 1.7.8.
@myronmarston Extract spec helper methods into a module. 0352721
@myronmarston Ensure faraday is exclusively used for parallel requests.
Closes #103.
Commits on Dec 01, 2011
@myronmarston Use latest excon now that it works on travis CI.
See excon/excon#82 for information on what the problem was.

Closes #106.
@myronmarston Simplify ENV vars for cukes. 1b36333
@myronmarston Put rspec-1 on the path rather than doing funky load path business. 7fd6546
@myronmarston Ignore rspec-1 scenario on JRuby.
The load path change I made in the last commit broke the JRuby build: Cannot run program "spec" (in directory "/home/vagrant/builds/myronmarston/vcr/tmp/aruba"): error=2, No such file or directory (NativeException)

I don't care enough to get this to pass.
Commits on Dec 02, 2011
@kirkconnell kirkconnell Make cassette migrator set recorded_with to current VCR version.
Closes #110.
@myronmarston Add Carlos Kirkconnell to contributors list. b667575
@myronmarston Rename rspec feature to rspec_macro. b25e349
@myronmarston Remove excess space. a4bcfd0
@myronmarston Update relish nav to include recent feature files. 3811e13
@myronmarston Integrate VCR with RSpec metadata.
Thanks to Ryan Bates for the great idea!

Closes #95.
@myronmarston Update Changelog. 958c36e
@myronmarston Remove unnecessary platform block from Gemfile.
Now that we don't keep the Gemfile.lock under source control we can just rely on the conditionals in the gemspec.  Before I had this when Gemfile.lock was in source control so that it wouldn't change unnecessarily on different ruby interpreters.
Commits on Dec 03, 2011
@myronmarston Fix spec to match method name. 2394ca6
@myronmarston Refactor to use a Cassette::Cache interface.
Note that the cache is not yet implemented--it currently just delegates to the file system.  But this gives us the interface that we want.
@myronmarston Started implementing cassette cache. 70ca447
@myronmarston First pass at pre-caching the cassettes. 0fc42e7