Download Latest Version v2.1.1 source code.zip (2.6 MB)
Email in envelope

Get an email when there's a new version of Karate

Home / v2.0.9
Name Modified Size InfoDownloads / Week
Parent folder
karate-2.0.9.jar 2026-05-13 12.0 MB
cve-sbom-report.html 2026-05-13 42.4 kB
README.md 2026-05-13 2.9 kB
v2.0.9 source code.tar.gz 2026-05-13 1.5 MB
v2.0.9 source code.zip 2026-05-13 2.2 MB
Totals: 5 Items   15.7 MB 0

Important Fixes

  • JS functions auto-coerced to Java functional interfaces (e.g. Predicate, Function) when passed to Java APIs — regression vs 1.5.2 [#2837]
  • configure proxy (and other global config) propagates into features invoked via call / callonce [#2839]
  • HTTP traffic from karate.callSingle() is captured in the calling feature's HTML report again; config-time output also surfaced in reports [#2840]
  • JsonPath [*] wildcard works inside match / match each expressions (e.g. match each response..items[*].type == '#string') [#2841]
  • String.prototype.substr() available again, and karate.set(map) bulk form restored — v1 parity for large-codebase migrations [#2842]
  • SUITE_EXIT durationMillis and time stats in karate-events.jsonl no longer report negative / incorrect values [#2843]
  • set RHS expressions route through the same evaluator as v1, restoring parity for embedded-expression and JS-style RHS forms [#2813]

New Features & Enhancements

  • passedRate exposed on SUITE_EXIT.summary and FEATURE_EXIT events for easier aggregation by external tooling [#2832]
  • Parser warns at parse time when the v1 @parallel tag is encountered, with a pointer to the migration docs [#2838]
  • Scenario names evaluate bare ${...} placeholders (in addition to <placeholder> substitution)
  • cucumber-json output flattens called sub-feature steps into the parent steps[] array
  • Driver honors the stop: false flag — skips quit and bypasses the driver pool, useful for manual / interactive debugging
  • karate-js: json-smart dependency removed, replaced with an own strict JsonParser
  • karate-js: +51 test262 PASS — abrupt-completion sweep, RegExp.escape, lexer \v / \x fixes
  • Markup: ka:fragment (attribute-level), ka:island, ka:data-mirror, devTrace directives (K3 / K7 / K8 / K16–K22)
  • Markup: th:each strict, th:attr SyntaxError hint, th:with object-spread (...obj), per-render context.set, per-request context.setGlobal / getGlobal
  • Markup: context.redirect sends HX-Redirect automatically for htmx-originated requests; dev-mode 500 returns a useful body
  • CsrfProtection.createTemplateToken returns null when no token is available (instead of throwing)
  • netty bumped 4.2.12 → 4.2.13

View the complete list of all issues fixed in this release.

Full Changelog: https://github.com/karatelabs/karate/compare/v2.0.8...v2.0.9

Important: refer 2.0.0 release notes for those upgrading from 1.X

Artifacts

Source: README.md, updated 2026-05-13