Skip to content

v0.26.0

Choose a tag to compare

@TimothyJones TimothyJones released this 11 Jul 01:15
4c2909c

0.26.0 (2025-07-11)

⚠ BREAKING CHANGES

  • core: Removed the assumption that every interaction response can be described by "returns". This is a breaking change, because it needs contracts to be re-written, and http contracts with automatically named triggers will have to change triggers from `"a (200) ..."` to `"returns a (200) ..."`. If you need to stay compatible with contracts from before this version, you will need to provide both names in your trigger definitions

Features

  • Add Jest 30 as a possible peer dependency (0f3cc98)
  • core: Now contract verification is guaranteed to run contracts in order, instead of interleaving interactions (0648101)
  • core: Removed the assumption that every interaction response can be described by "returns". This is a breaking change, because it needs contracts to be re-written, and http contracts with automatically named triggers will have to change triggers from `"a (200) ..."` to `"returns a (200) ..."`. If you need to stay compatible with contracts from before this version, you will need to provide both names in your trigger definitions (7f06209)
  • java-dsl: Now supports the prepareVerificationTests and runPreparedTest lifecycle for better integration with JUnit (1408d46)
  • Now definer.endRecord() returns a ContractWriteSuccess object, which contains details of the written contract(s) (7299895)
  • plugin-base: Added ability for matching errors to have context about what the data is, allowing more specific error messages (150c0d6)

Bug Fixes

  • connector: Correct types read when moduleresolution is node (ff29e62)
  • core: availableContractDescriptions now respects the configuration and only returns the filtered set of contracts. This was the intended (and documented) behaviour before. If you need to see the ignored contracts, they're visible in a call to this method with a logLevel of DEBUG or lower. (9c4e5a8)
  • function-plugin: Add debug logging of return value when caller is mocked (cac45b5)
  • function-plugin: No longer repeats returnValue twice in error location messages (4a5d4dd)
  • function-plugin: Substantially improved error messages when functions throw instead of returning, or receive the wrong number of arguments (d25d819)
  • java-dsl: Ensure that user-facing stack traces include the cause if they are chained exceptions (6ba5326)
  • java-dsl: Plugins were not passed to the core by the Verifier (4791891)

Dependencies

  • The following workspace dependencies were updated
    • devDependencies
      • @contract-case/eslint-config-case-maintainer bumped from 0.25.2 to 0.26.0