| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| karate-2.0.10.jar | 2026-06-04 | 12.0 MB | |
| cve-sbom-report.html | 2026-06-04 | 42.1 kB | |
| README.md | 2026-06-04 | 3.8 kB | |
| v2.0.10 source code.tar.gz | 2026-06-04 | 1.7 MB | |
| v2.0.10 source code.zip | 2026-06-04 | 2.4 MB | |
| Totals: 5 Items | 16.1 MB | 0 | |
Important Fixes
screenshotOnFailure: trueworks again; addedonStepFailurehook +ErrorRunEvent[#2845]configure headersno longer leaks Background-set headers across requests [#2846]- Type-hint
!with an angle-bracket type in a doc-string no longer throws an NPE [#2847] call read('f.feature') { key: #(var) }no longer throwsReferenceError: # is not defined[#2849]startTime/endTimein the report JSON are correct again [#2850]Java.type()resolves classes on the JUnit Platform classpath (--cp) again [#2855]karate.tagValuesaggregates all tags [#2859]- Gatling
karateFeature("path", "@tag")applies the tag filter instead of treating it as a path [#2870] - Scenario Outline Example vars no longer mishandled when
callonceis used in Background [#2874] - ApacheHttpClient proxy
CONNECTTLS handshake uses the target host for SNI [#2877] StackOverflowErroron circular-reference variables fixed [#2880]- Regression on the left side of
setfor JSON keys with special characters fixed [#2886] geckodriverstarts again in standalone mode [#2884]StackOverflowErrorwhen anafterScenariohook calls a feature with a circular reference fixed [#2887]match $.field == '#notpresent'no longer throws when the field is missing [#2892]#()/##()schema references inside a doc-stringmatchparse correctly [#2893][*]wildcard works insidekarate.match()with$JsonPath [#2894]setkeyword works with hyphenated key paths [#2896]- Embedded expressions in feature
callargs are evaluated as in v1 [#2897] configure loggingmask is applied to the scenario that triggers acallonce[#2898]def var = $.missingyields#notpresentinstead of throwing [#2899]- JUnit no longer runs the wrong tests when calling other feature files [#2900]
outputJunitXmlexposed onio.karatelabs.junit6.Karate[#2901]- Type-hint suffix in an Examples table works in a
matchstatement [#2902]
New Features & Enhancements
- New
karate-imageextension — pixel image-comparison as its own ext module with a primitives API and an interactive diff lightbox in HTML reports - HTML report redesigned on Tailwind — timeline view, donut summary, filter chips, JSON syntax-highlighting of request/response bodies [#2895]
karate-js: ES6 classes (inheritance,super, instance/static fields), runtime strict mode, destructuring, logical-assignment (||=,&&=,??=), RegExp named capture groups- Ext SPI — pluggable extensions contributing CLI subcommands, channel factories, ext globals, and report assets
- Multi-part
karate.embedobject form + defer-until-visible embed rendering - Driver: out-of-process iframe (OOPIF) support for CDP; W3C driver mouse via the Actions API
- Gatling: protocol-scoped
callSingle/callOnce/setupOncecaches +protocol.runnerexposure - JUnit 6:
outputJunitXml/outputCucumberJsonon the builder Resource.bytes(byte[])in-memory binary factory; CSV frombyte[]support [#2873]Runner.Builder.getResolvedFeatures()exposed [#2876]
View the complete list of all issues fixed in this release.
Full Changelog: https://github.com/karatelabs/karate/compare/v2.0.9...v2.0.10
Important: refer 2.0.0 release notes for those upgrading from 1.X
Artifacts
- Maven artifacts
- Standalone JAR (download below)
- CVE / SBOM report (download below)