Skip to content

v3.0.0

Compare
Choose a tag to compare
@dnaeon dnaeon released this 19 Aug 10:27
· 21 commits to v3 since this release

go-vcr v3 is ready.

NOTE: This release is not backwards-compatible with previous versions of the cassettes used by go-vcr. If you are upgrading to v3 you should re-create your test cassettes.

A summary of changes for this release:

  • API has been refactored and cleaned up
  • Custom recorder options are now specified as recorder.Options
  • The recorder modes which are now supported are ModeRecordOnly, ModeRecordOnce, ModeReplayOnly, ModeReplayWithNewEpisodes and ModePassthrough. Please refer to the API documentation for more details on their use cases
  • In order to create recorders with custom options you should use the recorder.NewWithOptions function from now on
  • The default mode of the recorder is now ModeRecordOnce
  • ModeDisabled has been removed and is now replaced by ModePassthrough
  • Cassette format has been changed and the supported version of the cassette from now on is v2.
  • Additional fields have been added to the cassette to allow developers to create more complex matchers based on the existing fields
  • Each interaction in the cassette now has a unique integer id, specifying the position of the interaction in the cassette
  • Utility method on the recorder can now return a pre-configured HTTP client with the recorder's transport - GetDefaultClient()
  • CI/CD pipeline has been transferred to Github actions
  • Closed out some long standing issues
  • Extended and refactored test cases
  • etc