Error Improvements
This release focuses on clearer, more useful errors across the CLI, TUI and headless output.
Improved CLI and TUI Errors
Errors now include better context, including source locations, request file snippets, cause chains and RTS stack frames where available. Parse errors are shown before a request is sent so invalid request files fail early.
Network and transport failures example:
error[network]: request failed
perform request
╰─> Get "https://api.local"
╰─> lookup api.local: no such host
help: No response payload was received.
RTS runtime failures (parsing etc.):
error[script]: boom
--> hook.rts:3:7
|
3 | request.setHeader("X-Test", missing.value)
| ^
pre-request rts script
Stack:
at hook.rts:2:1 in sign
The TUI now renders request, script, parse, network, TLS, auth, route, and protocol failures in a more readable format instead of showing raw error strings.
Safer @rts Handling
@rts is now explicitly limited to pre-request scripts:
# @name MyReques
# @rts pre-request
Unsupported forms such as bare @rts, @rts test or @rts lang=js now produce parse errors. Use @assert for RestermScript response checks or @script test for JavaScript tests.
Headless JSON
Headless JSON reports now include optional structured failure details such as error chains and stack frames. These fields are additive and should not affect existing headless custom implementations.