github unkn0wn-root/resterm v0.13.0

latest releases: v0.29.2, v0.29.1, v0.28.2...
3 months ago

What's new

Resterm Script (Experimental) - a small, safe expression language for request-time logic in .http/.rest files.

  • Experimental RTS expression language for templates, directives, and .rts modules with bounded execution (no network or file writes. Optional json.file reads).
  • Request‑level directives: @use, @apply, @when/@skip-if, @assert, @for-each and @script pre-request lang=rts.
  • Workflow‑only branching directives: @if/@elif/@else and @switch/@case/@default (use @when/@skip-if for simple request).
  • Pre‑request RTS scripts can mutate request/vars before execution - @apply runs first. JavaScript pre‑request scripts remain supported.
  • RTS runtime context + stdlib: env, vars, request, last, response, trace, stream, plus core/encoding/URL/time/JSON/text/list/dict/math helpers.
  • New reference in docs/restermscript.md, sample pack in _examples/rts plus editor syntax highlighting and metadata hints.

There are only experimental features so no breaking changes in this release!

Example of new RestermScript:

  # @use ./rts/helpers.rts as helpers
  # @when vars.has("api.token")
  # @assert response.statusCode == 200
  GET {{base_url}}/bearer
  Authorization: {{= helpers.authHeader(vars.get("api.token")) }}

Don't miss a new resterm release

NewReleases is sending notifications on new releases.