Skip to content
Newer
Older
100644 494 lines (358 sloc) 23.3 KB
2e87813 @myronmarston Words.
authored
1 ## In git
2
e57f1c3 @myronmarston 2.0.0.beta1 release.
authored
3 [Full Changelog](http://github.com/myronmarston/vcr/compare/v2.0.0.beta1...master)
4
5 ## 2.0.0 Beta 1 (October 8, 2011)
6
7 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.11.3...v2.0.0.beta1)
8
9 ### Changes
10
11 * Previously, the last matching response in a cassette would
12 repeatedly playback if the same request kept being made. This is
13 no longer the case.
14 * The Faraday middleware has been rewritten.
15 * You no longer need to configure `stub_with :faraday` to use it.
16 * It has been updated to work in parallel mode.
17 * It no longer accepts a block and uses that to determine the
18 cassette. Instead, use `VCR.use_cassette` just like you would
19 with FakeWeb or WebMock.
20
21 ### Added
22
23 * Allow any callable (an object that responds to #call, such as a
24 lambda) to be used as a request matcher. Thanks to [Avdi Grimm](https://github.com/avdi)
25 for the idea.
26 * Add ability to register custom request matchers.
27 * Add `VCR.request_matchers.uri_without_param(:some_param)` to generate
28 a request matcher that matches on URI but ignores the named parameter.
29 * New `:allow_playback_repeats` cassette option preserves the old
30 playback repeat behavior. Thanks to [Avdi Grimm](https://github.com/avdi)
31 for the idea.
32 * New `:exclusive` cassette option allows a cassette to be exclusively
33 used rather than keeping the existing one active as a fallback. Thanks
34 to [Avdi Grimm](https://github.com/avdi) for the idea.
0544db9 @myronmarston 1.11.3 release.
authored
35
ad12768 @myronmarston Rework changelog a bit.
authored
36 ### Removed
37
e57f1c3 @myronmarston 2.0.0.beta1 release.
authored
38 * Removed support for Ruby 1.8.6 and 1.9.1.
39 * Removed lots of old deprecated APIs.
40 * Removed support for manually changing the URI in a cassette to a regex.
ad12768 @myronmarston Rework changelog a bit.
authored
41
42 ### Deprecated
43
e36ed0e @myronmarston Deprecate `VCR::Config` in favor of `VCR.configuration` and `VCR.conf…
authored
44 * Deprecated `VCR.config` in favor of `VCR.configure`.
45 * Deprecated `VCR::Config` singleton module in favor of
46 `VCR::Configuration` class. The current configuration instance
47 can be accessed via `VCR.configuration`.
e57f1c3 @myronmarston 2.0.0.beta1 release.
authored
48 * Deprecated `stub_with` in favor of `hook_into`. The stubbing
49 adapters have been completely rewritten and are no longer an
50 implementation of the adapter design pattern. Instead they simply
51 use the named library to globally hook into every HTTP request.
145918e @myronmarston Update changelog.
authored
52
0544db9 @myronmarston 1.11.3 release.
authored
53 ## 1.11.3 (August 31, 2011)
54
55 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.11.2...v1.11.3)
56
57 * Fix cassette serialization so that it does not include extra `ignored`
58 instance variable.
76c8d2b @myronmarston 1.11.2 release.
authored
59
60 ## 1.11.2 (August 28, 2011)
61
62 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.11.1...v1.11.2)
63
64 * Updated rake, cucumber and aruba dev dependencies to latest releases.
65 * Fix all warnings originating from VCR. VCR is now warning-free!
5393e26 @myronmarston 1.11.1 release.
authored
66
67 ## 1.11.1 (August 18, 2011)
68
69 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.11.0...v1.11.1)
70
71 * Yanked 1.11.0 and rebuilt gem on 1.8.7 to deal with syck/psych
72 incompatibilties in gemspec.
966d8ba @myronmarston 1.11.0 release.
authored
73
74 ## 1.11.0 (August 18, 2011)
75
76 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.10.3...v1.11.0)
77
78 * Updates to work with WebMock 1.7.0.
d62fe13 @myronmarston 1.10.3 release.
authored
79
80 ## 1.10.3 (July 21, 2011)
81
82 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.10.2...v1.10.3)
83
84 * Fix `:update_content_length_header` option so no error is raised if
85 a response body is nil. Bug reported by [jg](https://github.com/jg).
e472188 @myronmarston 1.10.2 release.
authored
86
87 ## 1.10.2 (July 16, 2011)
88
89 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.10.1...v1.10.2)
90
91 * Yanked 1.10.1 and rebuilt gem on 1.8.7 to deal with syck/psych
92 incompatibilties in gemspec.
7573d96 @myronmarston 1.10.1 release.
authored
93
94 ## 1.10.1 (July 16, 2011)
95
96 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.10.0...v1.10.1)
5fcfa61 @myronmarston 1.10.0 release.
authored
97
662ed74 @myronmarston Fix changelog wording.
authored
98 * Fix typo in error message. Fix provided by [Bradley](https://github.com/bradleyisotope).
a216984 @myronmarston Fix excon adapter to handle query specified as a hash.
authored
99 * Fix excon adapter to properly handle queries specified as a hash.
662ed74 @myronmarston Fix changelog wording.
authored
100 * Fix excon adapter to stub a response with a hash as excon expects.
101 Fix provided by [Wesley Beary](https://github.com/geemus).
ca1e54a @myronmarston Fix excon adapter so that it records a response even when excon raise…
authored
102 * Fix excon adapter so that it records a response even when excon raises
103 an error due to an unexpected response.
b604625 @myronmarston Update changelog.
authored
104
5fcfa61 @myronmarston 1.10.0 release.
authored
105 ## 1.10.0 (May 18, 2011)
106
107 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.9.0...v1.10.0)
ab598a7 @myronmarston 1.9.0 release.
authored
108
7613284 @myronmarston Update changelog.
authored
109 * Fix header normalization so that it properly handles nested arrays and
110 non-string values.
111 * Add cucumber scenario documenting how VCR sanitizes cassette names
112 to "normal" file names (i.e. only alphanumerics, no spaces).
113 * Add `:ignore_cassettes` option to `VCR.turn_off!`. This causes
114 cassette insertions to be ignored rather than to trigger an error.
b466443 @myronmarston Update contributors.
authored
115 Patch provided by [Justin Smestad](https://github.com/jsmestad).
eb530ae @myronmarston Fix rack middleware so that it is threadsafe.
authored
116 * Fix rack middleware to make it threadsafe.
f52b13a @myronmarston Update rspec to latest.
authored
117 * Update to latest RSpec (rspec 2.6).
7613284 @myronmarston Update changelog.
authored
118
ab598a7 @myronmarston 1.9.0 release.
authored
119 ## 1.9.0 (April 14, 2011)
120
121 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.8.0...v1.9.0)
122
123 * Add support for [Excon](https://github.com/geemus/excon).
487332d @myronmarston 1.8.0 release.
authored
124
125 ## 1.8.0 (March 31, 2011)
126
127 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.7.2...v1.8.0)
717d7c8 @myronmarston 1.7.2 release.
authored
128
fb156a7 @myronmarston Update to Faraday 0.6.
authored
129 * Updated Faraday middleware to work with newly released Faraday 0.6.0.
130
717d7c8 @myronmarston 1.7.2 release.
authored
131 ## 1.7.2 (March 26, 2011)
132
133 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.7.1...v1.7.2)
0022cf7 @myronmarston 1.7.1 release.
authored
134
dbbc4b3 @myronmarston Ensure that header values are the same when recording and replaying.
authored
135 * Fixed Typhoeus adapter so headers are returned in the same form during
136 playback as they would be without VCR. Bug reported by
137 [Avdi Grimm](https://github.com/avdi).
138 * Fixed Faraday adapter so it treats response headers in the same way
139 Faraday itself does (i.e. with lowercase keys).
140
0022cf7 @myronmarston 1.7.1 release.
authored
141 ## 1.7.1 (March 19, 2011)
142
143 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.7.0...v1.7.1)
1467ebb @myronmarston 1.7.0 release.
authored
144
0d4d9f5 @myronmarston Fix faraday adapter so that it properly normalizes query parameters.
authored
145 * Fix Faraday adapter so that it properly normalizes query parameters
146 in the same way that Faraday itself does.
147
1467ebb @myronmarston 1.7.0 release.
authored
148 ## 1.7.0 (March 1, 2011)
149
150 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.6.0...v1.7.0)
de8c689 @myronmarston 1.6.0 release.
authored
151
d66f924 @myronmarston Update changelog.
authored
152 * Use Psych for YAML serialization/deserialization when it is available.
153 Syck, Ruby's old YAML engine, will remove whitespace from some
154 strings. Bug reported by [Robert Poor](https://github.com/rdpoor).
155 * Add new `:update_content_length_header` cassette option. The option
156 will ensure the `content-length` header value matches the actual
157 response body length.
8ca9b67 @myronmarston Update changelog.
authored
158 * Add new `:once` record mode. It operates like `:new_episodes` except
159 when the cassette file already exists, in which case it causes
160 new requests to raise an error. Feature suggested by
161 [Jamie Cobbett](https://github.com/jamiecobbett).
162 * Made `:once` the default record mode.
1f9fa36 @myronmarston Add new filter_sensitive_data configuration option.
authored
163 * Add new `filter_sensitive_data` configuration option. Feature
164 suggested by [Nathaniel Bibler](https://github.com/nbibler).
8050f83 @myronmarston Update Changelog.
authored
165 * Commit to [Semantic Versioning](http://semver.org/). The cucumber
166 features document the public API for the purposes of semver.
06cf3f6 @myronmarston Update changelog.
authored
167 * Add support for CI builds using [travis-ci](http://travis-ci.org/myronmarston/vcr).
fd67425 @myronmarston Update changelog.
authored
168 * Add support for running tests through `gem test vcr`. Visit
169 [test.rubygems.org](http://test.rubygems.org/gems/vcr) to see
170 the results.
acfb274 @myronmarston Use separate Before/After hooks rather than a single Around hook.
authored
171 * Fix cucumber support to use separate `Before` & `After` hooks rather than
172 a single `Around` hook because of a bug in cucumber that prevents
173 background steps from running within the `Around` hook.
d66f924 @myronmarston Update changelog.
authored
174
de8c689 @myronmarston 1.6.0 release.
authored
175 ## 1.6.0 (February 3, 2011)
176
177 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.5.1...v1.6.0)
178
179 * Add new `ignore_hosts` configuration option that allows you to ignore
180 any host (not just localhost aliases, as the `ignore_localhost` option
181 works). Feature suggested by [Claudio Poli](https://github.com/masterkain).
182 * Upgraded to the latest Typhoeus (0.2.1).
183 * General code clean up and refactoring.
be6672d @myronmarston 1.5.1 release.
authored
184
185 ## 1.5.1 (January 12, 2011)
186
187 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.5.0...v1.5.1)
188
189 * Fix response and request serialization so that the headers are raw
190 strings. This fixes intermittent YAML seg faults for paperclip
d66f924 @myronmarston Update changelog.
authored
191 uploads to S3. Bug reported by [Rob Slifka](https://github.com/rslifka).
9c4a71c @myronmarston 1.5.0 release.
authored
192
193 ## 1.5.0 (January 12, 2011)
194
195 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.4.0...v1.5.0)
2e87813 @myronmarston Words.
authored
196
197 * Fix VCR::Cassette so it does not raise an error when a cassette file is
198 empty. Bug reported and fixed by [Karl Baum](https://github.com/kbaum).
4765bcf @myronmarston Update changelog.
authored
199 * Lots of code cleanup.
200 * Fix the stubbing adapters so that they use the cassette instance
201 rather than the cassette name to create and restore checkpoints.
202 * Raise an appropriate error when a nested cassette is inserted with the
203 same name as a cassette that is already in the stack (VCR's design
204 doesn't allow this and you would get weird errors later on).
205 * Raise an appropriate error when restoring a stubs checkpoint if the
206 checkpoint cannot be found.
fb94dec @myronmarston Words.
authored
207 * Add `before_record` and `before_playback` hooks. Idea and initial
208 implementation by [Oliver Searle-Barnes](https://github.com/opsb);
209 futher suggestions, testing and feedback by
210 [Nathaniel Bibler](https://github.com/nbibler).
2e87813 @myronmarston Words.
authored
211
6d40d17 @myronmarston 1.4.0 release.
authored
212 ## 1.4.0 (December 3, 2010)
c1c590e @myronmarston Update changelog.
authored
213
6d40d17 @myronmarston 1.4.0 release.
authored
214 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.3.3...v1.4.0)
c1c590e @myronmarston Update changelog.
authored
215
b58808d @myronmarston Add rack middleware feature.
authored
216 * Added support for making HTTP requests without a cassette (i.e. if you don't
c1c590e @myronmarston Update changelog.
authored
217 want to use VCR for all of your test suite). There are a few ways to
218 enable this:
219 * In your `VCR.config` block, set `allow_http_connections_when_no_cassette`
220 to true to allow HTTP requests without a cassette.
221 * You can temporarily turn off VCR using `VCR.turned_off { ... }`.
222 * You can toggle VCR off and on with `VCR.turn_off!` and `VCR.turn_on!`.
b58808d @myronmarston Add rack middleware feature.
authored
223 * Fixed bug with `ignore_localhost` config option. Previously, an error would
021cfea @myronmarston Fixed bug with ignore_localhost config option.
authored
224 be raised if it was set before the `stub_with` option.
b58808d @myronmarston Add rack middleware feature.
authored
225 * Added VCR::Middleware::Rack (see features/middleware/rack.feature for usage).
4f8e467 @myronmarston Add Faraday support.
authored
226 * Added support for Faraday (see features/middleware/faraday.feature for usage).
c1c590e @myronmarston Update changelog.
authored
227
ae45360 @myronmarston 1.3.3 release.
authored
228 ## 1.3.3 (November 21, 2010)
76137bf @myronmarston Hit a local sinatra app rather than example.com in specs.
authored
229
ae45360 @myronmarston 1.3.3 release.
authored
230 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.3.2...v1.3.3)
76137bf @myronmarston Hit a local sinatra app rather than example.com in specs.
authored
231
232 * In specs, hit a local sinatra server rather than example.com. This makes
233 the specs faster and removes an external dependency. The specs can pass
234 without being online!
26fae52 @myronmarston Fix VCR::Config.http_stubbing_libraries so that it always returns an …
authored
235 * Raise an explicit error when the http stubbing library is not configured
236 (rather than letting the user get a confusing error later).
ae45360 @myronmarston 1.3.3 release.
authored
237 * Test against the latest WebMock release (1.6.1) (no changes required).
238 * Fix a few cucumber scenarios so they pass on rubinius and jruby.
76137bf @myronmarston Hit a local sinatra app rather than example.com in specs.
authored
239
2efe05d @myronmarston 1.3.2 release.
authored
240 ## 1.3.2 (November 16, 2010)
0025871 @myronmarston Normalize structs so they are serialized the same regardless of which…
authored
241
2efe05d @myronmarston 1.3.2 release.
authored
242 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.3.1...v1.3.2)
0025871 @myronmarston Normalize structs so they are serialized the same regardless of which…
authored
243
244 * Fix serialized structs so that they are normalized andthey will be the same
245 regardless of which HTTP library made the request.
246 * Status "OK " => "OK"
247 * Body '' => nil
248 * Headers {} => nil
249 * Remove extraneous headers added by the HTTP lib (i.e. Typhoeus user agent)
2efe05d @myronmarston 1.3.2 release.
authored
250 * Rewrite cucumber features in a more documentation-oriented style.
0025871 @myronmarston Normalize structs so they are serialized the same regardless of which…
authored
251
75fd8bd @myronmarston 1.3.1 release.
authored
252 ## 1.3.1 (November 11, 2010)
253
429619f @myronmarston Fix URLs in changelog.
authored
254 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.3.0...v1.3.1)
75fd8bd @myronmarston 1.3.1 release.
authored
255
256 * Update WebMock adapter to work with (and require) newly released WebMock 1.6.0.
257
a2e9b46 @myronmarston 1.3.0 release.
authored
258 ## 1.3.0 (November 11, 2010)
e305b26 @myronmarston Update changelog.
authored
259
429619f @myronmarston Fix URLs in changelog.
authored
260 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.2.0...v1.3.0)
e305b26 @myronmarston Update changelog.
authored
261
262 * Moved documentation from README to [Wiki](http://github.com/myronmarston/vcr/wiki).
263 * Refactoring and code cleanup.
922f145 @myronmarston Fix InternetConnection.available? so that it memoizes correctly when …
authored
264 * Fix InternetConnection.available? so that it memoizes correctly when a connection is not available.
4b34280 @myronmarston Allow newly released WebMock 1.5.0 to be used without a warning.
authored
265 * Fix WebMock version checking to allow newly released 1.5.0 to be used without a warning.
1991c61 @myronmarston Update README and CHANGELOG with Typhoeus info.
authored
266 * Add support for [Typhoeus](https://github.com/pauldix/typhoeus). Thanks to
267 [David Balatero](https://github.com/dbalatero) for making the necessary changes in Typhoeus
268 to support VCR.
26fae52 @myronmarston Fix VCR::Config.http_stubbing_libraries so that it always returns an …
authored
269 * Remove FakeWeb/WebMock inference logic. You _must_ configure the http stubbing library
270 explicitly now.
e305b26 @myronmarston Update changelog.
authored
271
d25e34c @myronmarston 1.2.0 release.
authored
272 ## 1.2.0 (October 13, 2010)
4839e58 @myronmarston Improved the :all record mode so that it keeps previously recorded in…
authored
273
d25e34c @myronmarston 1.2.0 release.
authored
274 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.1.2...v1.2.0)
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
275
4839e58 @myronmarston Improved the :all record mode so that it keeps previously recorded in…
authored
276 * Improved the `:all` record mode so that it keeps previously recorded interactions that do not match the
277 new recorded interactions. Previously, all of the previously recorded interactions were deleted.
d0e7dbd @myronmarston Add :re_record_interval cassette option.
authored
278 * Added `:re_record_interval` cassette option. This option causes a cassette to be re-recorded when the
279 existing file is older than the specified interval.
f4cce4c @myronmarston Improved RSpec support.
authored
280 * Improved RSpec support. Added #use_vcr_cassette RSpec macro method that sets up a cassette for an RSpec
281 example group.
709f593 @myronmarston Update changelog.
authored
282 * Fixed VCR/Net::HTTP/WebMock integration so that VCR no longer loads its Net::HTTP monkey patch when
283 WebMock is used, and relies upon WebMock's after_request callback to record Net::HTTP instead. This
284 fixes [a bug](http://github.com/myronmarston/vcr/issues/14) when using WebMock and Open URI.
6c86a96 @myronmarston Consider 0.0.0.0 to be a localhost alias.
authored
285 * Consider 0.0.0.0 to be a localhost alias (previously only "localhost" and 127.0.0.1 were considered).
ea777b9 @myronmarston Add test coverage for Curb support.
authored
286 * Added spec and feature coverage for Curb integration. Works out of the box with no changes required
8f369c1 @myronmarston Fixed typo.
authored
287 to VCR due to [Pete Higgins'](http://github.com/phiggins) great work to add Curb support to WebMock.
646eab5 @myronmarston Got specs and features to pass on rubinius 1.1.
authored
288 * Got specs and features to pass on rubinius.
91d67ad @myronmarston Upgrade to WebMock 1.4.0.
authored
289 * Changed WebMock version requirement to 1.4.0.
4839e58 @myronmarston Improved the :all record mode so that it keeps previously recorded in…
authored
290
b827a7b @myronmarston 1.1.2 release.
authored
291 ## 1.1.2 (September 9, 2010)
292
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
293 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.1.1...v1.1.2)
294
b827a7b @myronmarston 1.1.2 release.
authored
295 * Fixed a minor bug with the WebMock integration: WebMock extends each `Net::HTTPResponse` with an extension
296 module after reading the body, and VCR was doing the same thing, leading to some slight deviance from
297 standard Net::HTTP behavior. The fix prevents VCR from adding the same extension to a `Net::HTTPResponse`
298 that has already been extende by WebMock.
299 * Fixed a minor bug in the `VCR::Net::HTTPResponse` module so that it correctly handles nil bodies (such as
300 for a HEAD request).
301 * Refactored `VCR::Net::HTTPResponse` module so it is implemented in a much simpler manner.
302 * Updated specs and features so they pass against the latest WebMock release (1.3.5).
303 * Minor documentation updates.
304
69c0fe7 @myronmarston 1.1.1 release.
authored
305 ## 1.1.1 (August 26, 2010)
4d68e93 @myronmarston Optimized #stub_requests a bit.
authored
306
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
307 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.1.0...v1.1.1)
308
ed4a662 @myronmarston The latest FakeWeb passes this spec (was pending before).
authored
309 * Updated to use and require FakeWeb 1.3.0. It includes a fix for a bug related to multiple values for the
310 same response header.
7f58282 @myronmarston Use FakeWeb::Utility.request_uri_as_string rather than our own logic …
authored
311 * Use new `FakeWeb::Utility.request_uri_as_string` method rather than our own logic to construct a request uri.
5fc0ba4 @myronmarston Use a localhost regex with FakeWeb.allow_net_connect for the ignore_l…
authored
312 * Use new `FakeWeb.allow_net_connect = /url regex/` feature to power the `ignore_localhost` VCR option rather
313 then toggling `FakeWeb.allow_net_connect` in our Net::HTTP extension.
4d68e93 @myronmarston Optimized #stub_requests a bit.
authored
314 * Optimized `VCR.http_stubbing_adapter.stub_requests` a bit.
5f5da7a @myronmarston Change http stubbing adapters to be modules rather than classes.
authored
315 * Changed the http stubbing adapters to be modules rather than classes. They should never be instantiated and
316 don't really hold state, so a module is more appropriate.
0a979b4 @myronmarston Refactored and updated #check_version! on FakeWeb/WebMock adapters so…
authored
317 * Warn when FakeWeb or WebMock are a minor or major version number ahead of the required version, as the new
318 version isn't known to work with VCR.
4d68e93 @myronmarston Optimized #stub_requests a bit.
authored
319
4a465ca @myronmarston 1.1.0 release.
authored
320 ## 1.1.0 (August 22, 2010)
0289298 @myronmarston Removed task runner as it's no longer needed.
authored
321
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
322 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.0.3...v1.1.0)
323
3def0be @myronmarston Documentation updates for new :match_requests_on option.
authored
324 * Added `:match_requests_on` cassette option, which determines how VCR matches requests.
0289298 @myronmarston Removed task runner as it's no longer needed.
authored
325 * Removed VCR::TaskRunner and the corresponding rake task definition. The rake task migrated cassettes from the
326 0.3.1 format to the 0.4+ format. If you are still on 0.3.1 or earlier, I recommend you upgrade to 0.4.1 first,
327 migrate your cassettes and deal with migration warnings, then upgrade to the current release.
606e328 @myronmarston Raise an error if VCR::Cassette.new is given invalid options.
authored
328 * Added some code to VCR::Cassette.new to check the options passed to the cassette and raise an error if any
329 invalid options are passed.
f2bb986 @myronmarston Optimized ERB rendering a bit.
authored
330 * Optimized ERB rendering a bit. Rather than creating a new struct subclass for each time we render an ERB
331 cassette with locals, we keep a cache of reusable struct subclasses based on the desired attributes.
332 [Benchmarking](http://gist.github.com/512948) reveals this is about 28% faster.
a40025f @myronmarston Updated em-http-request to 0.2.10.
authored
333 * Upgraded tests to use em-http-request 0.2.10 rather than 0.2.7.
0289298 @myronmarston Removed task runner as it's no longer needed.
authored
334
ce13279 @myronmarston 1.0.3 release.
authored
335 ## 1.0.3 (August 5, 2010)
336
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
337 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.0.2...v1.0.3)
338
ce13279 @myronmarston 1.0.3 release.
authored
339 * Upgraded VCR specs to RSpec 2.
340 * Updated `VCR::CucumberTags` so that it uses an `around` hook rather than a `before` hook and an `after` hook.
341 Around hooks were added to Cucumber in the 0.7.3 release, so you'll have to be on that version or higher to use
342 the `VCR::CucumberTags` feature.
343 * Updated the WebMock version requirement to 1.3.3 or greater. 1.3.2 and earlier versions did not properly handle
344 multiple value for the same response header.
345 * Miscellaneous documentation updates.
346
e13d215 @myronmarston 1.0.2 release.
authored
347 ## 1.0.2 (July 6, 2010)
348
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
349 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.0.1...v1.0.2)
350
e13d215 @myronmarston 1.0.2 release.
authored
351 * Fixed VCR to work with [rest-client](http://github.com/archiloque/rest-client). Rest-client extends the Net::HTTP
352 response body string with a module containing additional data, which got serialized to the cassette file YAML
353 and occasionally caused problems when the YAML was deserialized. Bug reported by
354 [Thibaud Guillaume-Gentil](http://github.com/thibaudgg).
355 * Setup bundler to manage development dependencies.
356
ade8181 @myronmarston 1.0.1 release.
authored
357 ## 1.0.1 (July 1, 2010)
358
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
359 [Full Changelog](http://github.com/myronmarston/vcr/compare/v1.0.0...v1.0.1)
360
ade8181 @myronmarston 1.0.1 release.
authored
361 * Fixed specs and features so they pass on MRI 1.9.2-preview3 and JRuby 1.5.1.
362 * Normalized response and request headers so that they are stored the same (i.e. lower case keys, arrays of values)
363 in the cassette yaml files, regardless of which HTTP library is used. This is the same way Net::HTTP normalizes
364 HTTP headers.
365 * Fixed `VCR.use_cassette` so that it doesn't eject a cassette if an exception occurs while inserting one.
366 * Fixed FakeWeb adapter so that it works for requests that use basic auth. Patch submitted by
367 [Eric Allam](http://github.com/rubymaverick).
368
a5ac5bf @myronmarston 1.0.0 release.
authored
369 ## 1.0.0 (June 22, 2010)
370
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
371 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.4.1...v1.0.0)
372
a5ac5bf @myronmarston 1.0.0 release.
authored
373 * New Features
374 * Added support for [HTTPClient](http://github.com/nahi/httpclient), [Patron](http://github.com/toland/patron) and
375 [em-http-request](http://github.com/igrigorik/em-http-request) when WebMock is used. Any future http libraries
376 WebMock supports should (theoretically, at least) work without any VCR code changes. Thanks to
377 [Bartosz Blimke](http://github.com/bblimke) for adding the necessary code to WebMock to make this happen!
378 * Added support for dynamic responses using ERB. A cassette will be evaluated as ERB before the YAML
379 is deserialized if you pass it an `:erb => true` option. You can pass variables using
380 `:erb => { :var1 => 'some value', :var2 => 'another value' }`.
381 * Added `ignore_localhost` configuration setting, which defaults to false. Setting it true does the following:
382 * Localhost requests will proceed as normal. The "Real HTTP connections are disabled" error will not occur.
383 * Localhost requests will not be recorded.
384 * Previously recorded localhost requests will not be replayed.
385 * Exposed the version number:
386 * `VCR.version` => string (in the format "major.minor.patch")
387 * `VCR.version.parts` => array of integers
388 * `VCR.version.major` => integer
389 * `VCR.version.minor` => integer
390 * `VCR.version.patch` => integer
391 * Added test coverage and documentation of using a regex for non-deterministic URLs (i.e. URLs that include
392 a timestamp as a query parameter). It turns out this feature worked before, and I just didn't realize it :).
393
394 * Breaking Changes
395 * The `:allow_real_http => lambda { |uri| ... }` cassette option has been removed. There was no way to get
396 this to work with the newly supported http libraries without extensive monkeypatching, and it was mostly
397 useful for localhost requests, which is more easily handled by the new `ignore_localhost` config setting.
398 * Removed methods and options that had been previously deprecated. If you're upgrading from an old version,
399 I recommend upgrading to 0.4.1 first, deal with all the deprecation warnings, then upgrade to 1.0.0.
400
401 * Misc Changes:
402 * Removed dependency on [jeweler](http://github.com/technicalpickles/jeweler). Manage the gemspec by hand instead.
403 * Removed some extensions that are no longer necessary.
404
dfceeb1 @myronmarston 0.4.1 release.
authored
405 ## 0.4.1 May 11, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
406
407 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.4.0...v0.4.1)
408
dfceeb1 @myronmarston 0.4.1 release.
authored
409 * Fixed a bug: when `Net::HTTPResponse#read_body` was called after VCR had read the body to record a new request,
410 it raised an error (`IOError: Net::HTTPResponse#read_body called twice`). My fix extends Net::HTTPResponse
411 so that it no longer raises this error.
412
7663252 @myronmarston 0.4.0 release.
authored
413 ## 0.4.0 April 28, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
414
415 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.3.1...v0.4.0)
416
af61cfc @myronmarston Updated CHANGELOG with the info about what is coming in the next rele…
authored
417 * Added support for webmock. All the fakeweb-specific code is now in an adapter (as is the webmock code).
418
419 * Changed the format of the VCR cassettes. The old format was tied directly to Net::HTTP, but webmock supports
420 other HTTP libraries and I plan to allow VCR to use them in the future. Note that this is a breaking change--your
421 old VCR cassettes from prior releases will not work with VCR 0.4.0. However, VCR provides a rake task to assist
422 you in migrating your cassettes to the new format. Simply add `load 'vcr/tasks/vcr.rake'` to your project's Rakefile,
423 and run:
424
425 $ rake vcr:migrate_cassettes DIR=path/to/cassete/library/directory
426
427 * The new cassette format records more information about the request (i.e. the request headers and body), so that it
428 can potentially be used with webmock in the future.
429
430 * Made most of `VCR::Cassette`'s methods private. I had forgotten to make the methods private before, and most of them
431 don't need to be exposed.
432
433 * Automatically disallow http connections using the appropriate setting of the http stubbing library (fakeweb or webmock).
434 This relieves users from the need to set the option themselves, so they hopefully aren't using either fakeweb or webmock
435 directly, making it much easier to switch between these.
436
437 * Change documentation from rdoc to markdown format.
438
439 * Lots of other refactoring.
440
3e442f3 @myronmarston Change History file to markdown format and renamed it to changelog.
authored
441 ## 0.3.1 April 10, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
442
443 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.3.0...v0.3.1)
444
3e442f3 @myronmarston Change History file to markdown format and renamed it to changelog.
authored
445 * Fixed a bug: when `Net::HTTP#request` was called with a block that had a return statement, the response was not being recorded.
446
447 ## 0.3.0 March 24, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
448
449 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.2.0...v0.3.0)
450
3e442f3 @myronmarston Change History file to markdown format and renamed it to changelog.
authored
451 * Renamed a bunch of methods, replacing them with method names that more clearly fit the VCR/cassette metaphor:
452 * `VCR.create_cassette!` => `VCR.insert_cassette`
453 * `VCR.destroy_cassette!` => `VCR.eject_cassette`
454 * `VCR.with_cassette` => `VCR.use_cassette`
455 * `VCR::Cassette#destroy!` => `VCR::Cassette#eject`
456 * `VCR::Cassette#cache_file` => `VCR::Cassette#file`
457 * `VCR::Config.cache_dir` => `VCR::Config.cassette_library_dir`
458 * `:unregistered` record mode => `:new_episodes` record mode
459
460 * All the old methods still work, but you'll get deprecation warnings.
461
462 ## 0.2.0 March 9, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
463
464 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.1.2...v0.2.0)
465
3e442f3 @myronmarston Change History file to markdown format and renamed it to changelog.
authored
466 * Added `:allow_real_http` cassette option, which allows VCR to work with capybara and a javascript driver.
467 Bug reported by [Ben Hutton](http://github.com/benhutton).
468
469 * Deprecated the `default_cassette_record_mode` option. Use `default_cassette_options[:record_mode]` instead.
470
471 ## 0.1.2 March 4, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
472
473 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.1.1...v0.1.2)
474
3e442f3 @myronmarston Change History file to markdown format and renamed it to changelog.
authored
475 * Added explanatory note about VCR to `FakeWeb::NetConnectNotAllowedError#message`.
476
477 * Got things to work for when a cassette records multiple requests made to the same URL with the same HTTP verb,
478 but different responses. We have to register an array of responses with fakeweb.
479
480 * Fixed our `Net::HTTP` monkey patch so that it only stores the recorded response once per request.
481 Internally, `Net::HTTP#request` recursively calls itself (passing slightly different arguments) in certain circumstances.
482
483 ## 0.1.1 February 25, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
484
485 [Full Changelog](http://github.com/myronmarston/vcr/compare/v0.1.0...v0.1.1)
486
3e442f3 @myronmarston Change History file to markdown format and renamed it to changelog.
authored
487 * Handle asynchronous HTTP requests (such as for mechanize). Bug reported by [Thibaud Guillaume-Gentil](http://github.com/thibaudgg).
488
489 ## 0.1.0 February 25, 2010
d7d9ac9 @myronmarston Add links to github comparison view for each release.
authored
490
491 [Full Changelog](http://github.com/myronmarston/vcr/compare/d2577f79247d7db60bf160881b1b64e9fa10e4fd...v0.1.0)
492
ade8181 @myronmarston 1.0.1 release.
authored
493 * Initial release. Basic recording and replaying of responses works.
Something went wrong with that request. Please try again.