Skip to content

v2.1.1

Latest

Choose a tag to compare

@ptrthomas ptrthomas released this 15 Jul 10:14

Important Fixes

  • karate.match() inside a closure passed across feature files resolves variables in the calling scope, not the defining scope #2966
  • karate.remove() now removes nested JSON fields #2953
  • get[0] with a JsonPath filter on a missing property degrades to #notpresent instead of erroring #2950
  • call / callonce with read() no longer returns the entire caller scope in the result #2949
  • callonce inside a call read() no longer caches globally across invocations #2941
  • Escaped pipe \| in Examples tables is treated as a literal pipe character #2943
  • param with a null value omits the query parameter instead of failing #2942
  • afterFeature now fires as expected when running with multiple threads #2939
  • karate.set(callSingle()) with call read() in Background no longer freezes Scenario Outline row values #2934
  • karate.set(callSingle()) with the disk cache no longer wipes config-level Java.type() variables #2933
  • Feature calls made from JS helper files show up in the summary report again #2928
  • Gatling: feature errors are logged, ANSI escapes are stripped from log files, and --no-color is accepted #2937
  • --no-color is applied and stripped before subcommand parsing #2936
  • Gatling: a scenario that fails before any HTTP request emits a synthetic KO instead of vanishing from the report
  • Gatling: feature chaining repaired — the mutable __karate map is matched on read
  • A non-SSE GET against HttpServer is rejected with a real status (405/404) rather than hanging
  • DOM nodes render as XML text instead of crashing json-smart
  • Driver: page-load waits are bound to the navigation's loaderId, closing a class of races on redirects and replaced loaders
  • Driver: each pooled slot gets its own browser context, and tab enumeration is scoped to the driver's own context

New Features & Enhancements

  • The HTML report opens far faster and uses much less memory on large features — syntax highlighting is deferred until a block is viewed #2938
  • Failures pinpoint the feature-file location, with a richer failure console #2952
  • Driver: select() fires the full real-selection event sequence (input, change, blur, focusout)
  • Driver: new CdpDriver.objectId(locator) for locator to CDP-node resolution
  • CDP: named init-script registry, plus DOM.getFrameOwner / describeNode and script/binding injection wrappers
  • WebSocket: subprotocol negotiation support in WsClient
  • HTTP: bind-host support on HttpServer for localhost-only hardening
  • BootLoader.bootOnly, BootBinding.getGlobals() and ConfigLoader.configOnly — evaluate boot and config without running features
  • Report: kind-labelled embed badges, skipped tiles, and Scenario Outline badges
  • Dependency bumps: Selenium, the Scala / Gatling plugins, and central-publishing-maven-plugin

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

Full Changelog: v2.1.0...v2.1.1

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

Artifacts