- Update default tape naming format and tapeGenerator to use epoch instead of counter as tape id - from
unnammed-1.json5
tounnamed-1715145207909.json5
(thanks @raphaeleidus)
- Drop support for node 14 and node 16. Minimum required version 18.0
- Dependencies updates
- Close process with exit code 0 when handling process signals (thank @unstubbable)
- Dependencies updates
application/graphql
added to the list of JSON media-types- Add logo! (thanks @denislutz)
- Fix: logger options getting overriden when running multiple instances with different logging options.
- Dependencies updates
- Drop support for node 10. Minimum required version 12.0
- Add support for brotli (br) encoding
- Dependencies updates
- Structured log format
- Add
allowHeaders
option - Dependencies updates
- Add
application/x-amz-json-1.0
andapplication/x-amz-json-1.1
as json media types (thanks @brandonc)
- Fix handling of responses with JSON content-type, but malformed body (thanks @SebFlippence)
- Dependencies updates
- Add
tapeDecorator
option - Add
MatchingContext
object as decorators parameter - Dependencies updates
- Fix for node 15 (thanks @halilb)
- Dependencies updates
- Dependencies updates
- Dependencies updates
- Expose requestHandler as first-class citizen
- Add requestHandler example
- Add support for JSON Schema media-types
- Rewrite talkback to Typescript
- Now you can also
import talkback from "talkback/es6"
- Drop node 8 support. Min. required version is node 10
- Order of properties is ignored when matching JSON tapes body
- Store compressed (gzip, deflate) human-readable bodies as plain text
- Dependencies updates
- Add
latency
option - Add
errorRate
option - Add
requestDecorator
option - Expose default options as
talkback.Options.Default
-
Load tapes from deep directories
-
Add
tapeNameGenerator
option (thanks @tartale) -
Introduce record modes through
record
option. -
Allow
record
option to take a function to change recording mode based on the request -
Allow
fallbackMode
option to take a function to change fallback mode based on the request -
Bugfix: wrong Content-Length when tapes contain multi-bytes characters (thanks @sebflipper)
-
DEPRECATION:
record
option will no longer take boolean values -
DEPRECATION:
fallbackMode
options404
andproxy
have been replaced byNOT_FOUND
andPROXY
respectively
responseDecorator
is now called for both matched tapes and the initial response returned by the proxied server
- Fix bug with HEAD requests
- Pretty print JSON requests & responses in saved tapes
- Always ignore
content-length
header for tape matching - Add
name
option - Print
name
in Summary title
- Add
https
server option. - Add
urlMatcher
option to customize how the request URL is matched against saved tapes.
- Add
responseDecorator
option to add dynamism to saved tapes responses. - Add
hasTapeBeenUsed
andresetTapeUsage
methods to the server interface (thanks @sjaakieb)
- Add
bodyMatcher
option to customize how the request body is matched against saved tapes.
- Add
ignoreBody
option (thanks @meop) - Add
fallbackMode
option to allow to proxy unknown requests if no tape exists. Defaults to 404 error (thanks @meop)
- Add
ignoreQueryParams
option - Updated dependencies
- Add
debug
option to print verbose information about tapes matching. Defaults tofalse
- Fix bug that mixed
req
andres
humanReadable property (thanks @roypa)
- Add
silent
option to mute information console output on requests