Skip to content

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 20 Aug 06:39
· 10 commits to main since this release
v0.11.0
3ebe5f2
  • JMeter engineperfscale run --jmeter plan.jmx runs a JMeter test
    plan headless (jmeter -n -t), streams its output live, and translates the
    final console summary = line into the k6-compatible summary block
    (avg/min/max and error rate — the console summary has no percentiles).
    JMeter's exit code is the CI gate; there is no thresholds integration and
    no perfscale config mapping.
  • WebSocket echo endpoint in perfscale serveGET /ws upgrades and
    echoes every text (and binary) message back, a loopback target for
    WebSocket load tests and the new ws benchmark suite (messages/sec and
    message RTT for the native engine and k6).
  • Embedding API for importsimport::resolve_value resolves the
    import: chain of an API-submitted document (no file origin), and
    ImportOptions::remote_guard lets a server veto every network target in
    the chain (SSRF protection), including HTTP redirect hops.
  • HTTP plumbing is public for downstream actionsstep::http now
    exposes ClientPool, client, timed_exchange, HttpOutcome,
    request_line, transport_error, and error_chain, plus
    Context::http_client_shard(), so proprietary action families (e.g.
    pro/soap) pool, time, and report HTTP exchanges identically to
    std/http@v1.
  • k6-style load profiles in the native enginestages: ramps VUs
    linearly between targets (graceful scale-down at step boundaries) and
    arrival: holds an iterations/sec rate profile with a lazily growing
    worker pool (max_vus, pre_allocated_vus). For staged/arrival runs the
    summary's vus line reports the observed concurrency
    (vus....................: <last> min=<min> max=<max>), the periodic
    [stats] line gains a trailing vus=N field (downstream parsers: the
    field appears only on staged/arrival runs; fixed-run lines are
    unchanged
    ), summary exports report vus: null, and arrival runs surface
    a dropped_iterations metric for permits the saturated pool couldn't
    serve. Both profiles are native-engine only — --locust rejects them with
    a clear error.

Full Changelog: v0.10.0...v0.11.0