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.