2.4.0
Release date
December 17, 2025
Features
User Interface enhanced
We added a warning that displays when WebGL is not available on the network diagram page.
We added a notice when a consumer contract is not a valid Pact file.
Note
Swagger Contract Testing supports consumer contracts that are not Pact files. However, most users typically upload a Pact file.
We improved the robustness of pacticipant pages when a pacticipant cannot be found.
We improved the contract details view to present bi-directional contract information more clearly and consistently. See the updated Contract Details and Bi-Directional Contract Testing documentation.
We now show the release version, rather than the release SHA, as the version in PactFlow on-premises.
Bi-Directional Contract Testing
We added support for paths that include colons
:in Bi-Directional Contract Testing (BDCT).
API
We updated the
/auditendpoint to support additional query parameters, allowing more flexible filtering of audit events. You can now filter using:fromsinceuserUUIDuserEmailtypesortDirection
See the updated API documentation.
Fixes
User Interface
We fixed an issue that could cause the UI become unresponsive when handling large contracts.
We fixed an error that occurred when loading a page after a favorited application had been removed.
We fixed an issue where verification results did not appear in certain edge cases.
We fixed a crash that occurred on some compatibility tiles under specific error conditions.
We improved rendering performance for very large provider self-verification results.
General
We updated all dependencies to resolve open CVEs.
We fixed an issue where a SCIM/SAML user who had been deactivated and then reprovisioned was unable to log in.
We fixed an issue with
can-i-deployand bi-directional contract testing where a V4 Pact with either mixed HTTP and non-HTTP interactions, or only non-HTTP interactions, was incorrectly considered safe to release without a corresponding Pact verification for the non-HTTP interactions.We fixed an issue in V4 Pacts where interaction and message counts were not calculated correctly.
Migration Notes
This release includes time-consuming data migrations related to the V4 Pact fixes described above.
We added a new
has_messagesboolean field to thepact_versionstable. This field is set tofalseby default.We strongly recommend performing a manual database migration before upgrading your on-premises instance to avoid extended startup times.
Further background
Pact V4 does not include a dedicated
messagescollection. Instead, it uses a singleinteractionscollection, where each interaction has atypevalue of one of the following:Synchronous/HTTPAsynchronous/MessagesSynchronous/Messages
Refer to the Pact specification for details.
The migration process must inspect all existing Pact versions to correctly determine whether messages are present. This requires evaluating the Pact specification version and the interaction types contained within each Pact.
These changes ensure that existing V4 Pacts behave correctly when using
can-i-deployand that metrics and reporting related to message-based interactions are accurate.