pact_mock_server
Source Code​
https://github.com/pact-foundation/pact-core-mock-server/tree/main/pact_mock_server
2.1.3 - Maintenance Release​
2.1.2 - Bugfix Release​
- d73852ca - fix: Mock server URL in the test context was incorrectly formatted (Ronald Holshausen, Thu Jun 12 11:14:29 2025 +1000)
2.1.1 - Maintenance Release​
- 01419502 - fix: rustls-pemfile and rustls-webpki need the default features set (Ronald Holshausen, Wed Jun 11 15:19:11 2025 +1000)
- cc91078c - fix: Upgrade onig to 6.5.1 as the Match Whole String for is_match fix has been released (Ronald Holshausen, Wed Jun 11 11:46:16 2025 +1000)
2.1.0 - Update to Rust 2024 and V2 matching engine​
- b225aa1d - feat: Add form_urlencoded feature (Ronald Holshausen, Wed May 21 11:49:39 2025 +1000)
- b75a6240 - fix: tasklocal LOG_ID needs to be accessable from other crates (Ronald Holshausen, Wed Mar 26 15:39:15 2025 +1100)
2.0.4 - Maintenance Release​
- 01419502 - fix: rustls-pemfile and rustls-webpki need the default features set (Ronald Holshausen, Wed Jun 11 15:19:11 2025 +1000)
- cc91078c - fix: Upgrade onig to 6.5.1 as the Match Whole String for is_match fix has been released (Ronald Holshausen, Wed Jun 11 11:46:16 2025 +1000)
2.0.3 - Maintenance Release​
2.0.2 - Maintenance Release​
2.0.1 - Bugfix Release​
- 5cb006dd - fix: Default the Pact spec version to the version from the Pact if not overridden (Ronald Holshausen, Tue Aug 27 15:06:13 2024 +1000)
2.0.0 - Final 2.0.0 release​
2.0.0-beta.5 - Bugfix Release​
- 833e1c71 - fix: Handling of the mock server ID (Ronald Holshausen, Tue Jul 2 15:46:23 2024 +1000)
- fba93b6b - fix: Add a function to attach a mock server to a known manager (Ronald Holshausen, Tue Jul 2 13:48:14 2024 +1000)
- d80d9e42 - fix: When attaching the mock server to the server manager, the manager needs to take ownership (Ronald Holshausen, Tue Jul 2 13:19:02 2024 +1000)
2.0.0-beta.4 - Support HTTP2 + Fix server shutdown​
- 65286080 - fix: failing test on MacOS (Ronald Holshausen, Tue Jun 25 16:24:27 2024 +1000)
- 376b4cf0 - feat: Support HTTP1 + HTTP2 + upgrades + graceful server and connection shutdown (Ronald Holshausen, Tue Jun 25 16:12:33 2024 +1000)
- 6453371f - fix: add small wait after mockserver shutdown so the events can be completly processed (Ronald Holshausen, Tue Jun 25 13:55:30 2024 +1000)
- 72259393 - fix: Signal server shutdown with an event instead of dropping the channel send end (Ronald Holshausen, Tue Jun 25 12:13:30 2024 +1000)
2.0.0-beta.3 - Remove aws_lc_rs​
2.0.0-beta.2 - Added keep alive option​
- fd86ee8b - feat: Added keep alive option to the mock server config (defaults to true) (Ronald Holshausen, Fri Jun 21 15:20:10 2024 +1000)
2.0.0-beta.1 - Bugfix Release​
- ecd0b143 - fix: blocking when shutting down the mock server can cause deadlocks (Ronald Holshausen, Wed Jun 19 17:37:01 2024 +1000)
- 9efbb501 - feat: Use the task handles to wait for the mock server tasks to complete on shutdown (Ronald Holshausen, Wed Jun 19 10:57:50 2024 +1000)
- 89944a4f - fix: Mock server url was incorrect when using IP6 address (Ronald Holshausen, Tue Jun 18 17:17:58 2024 +1000)
- 9b86e78e - fix: Correct TLS tests after upgrade to latest Rustls (Ronald Holshausen, Tue Jun 18 11:27:20 2024 +1000)
2.0.0-beta.0 - Updated mock server using Hyper 1.0 and Rustls 0.23​
- 1b702911 - feat: Support user supplied cert and private key (Ronald Holshausen, Tue Jun 18 10:17:40 2024 +1000)
- cf964174 - fix: Import was used when feature was not enabled (Ronald Holshausen, Mon Jun 17 16:33:38 2024 +1000)
- 09d31c1c - fix: Update test to use IP4 (Ronald Holshausen, Mon Jun 17 16:24:18 2024 +1000)
- af1cc22f - feat: Working mock server with TLS + self-signed cert (Ronald Holshausen, Mon Jun 17 16:20:58 2024 +1000)
- 7a03ba6c - feat: Working mock server with IP4 and IP6 address (Ronald Holshausen, Thu May 16 13:35:41 2024 +1000)
- d6c70f64 - feat: Allow the mock server address to be specified (Ronald Holshausen, Thu May 16 10:58:11 2024 +1000)
- 43c8faa0 - feat: Basic mock server working with Hyper 1.0 and IP4 connection (Ronald Holshausen, Thu May 16 10:04:21 2024 +1000)
1.2.8 - Maintenance Release​
1.2.7 - Maintenance Release​
- c3128a6d - feat: Support optional query parameter values (where there is only a name) (Ronald Holshausen, Mon Apr 22 10:36:05 2024 +1000)
1.2.6 - Maintenance Release​
1.2.5 - Maintenance Release​
- 95cbe5a9 - fix: Upgrade pact-plugin-driver to 0.5.1 (Ronald Holshausen, Wed Jan 31 19:56:04 2024 +1100)
1.2.4 - Maintenance Release​
- 944613df - fix: regression - upgrade pact_models to 1.1.16 #359 (Ronald Holshausen, Fri Jan 19 14:52:36 2024 +1100)
1.2.3 - Maintenance Release​
1.2.2 - Bugfix Release​
1.2.1 - Bugfix Release​
- 445ea1ee - fix: Header matching rules should be looked up in a case-insenstive way (Ronald Holshausen, Wed Jun 28 15:21:32 2023 +1000)
1.2.0 - Fixes a deadlock with mock server JSON results​
- e58aa917 - fix: no need to wrap the Pact for a mock server in a mutex (mock server is already behind a mutex) as this can cause deadlocks #274 (Ronald Holshausen, Wed Jun 14 13:26:54 2023 +1000)
- 37673fac - fix: correct tests after upgrading pact_models (Ronald Holshausen, Mon May 29 15:13:44 2023 +1000)
1.1.0 - Update Pact models to 1.1 (breaking change)​
- 261ecf47 - fix: Add RefUnwindSafe trait bound to all Pact and Interaction uses (Ronald Holshausen, Mon May 15 13:59:31 2023 +1000)
1.0.2 - Bugfix Release​
- 84b9d9e9 - fix: Upgrade pact models to 1.0.11 (fixes generated key for V4 Pacts) (Ronald Holshausen, Fri Apr 14 17:10:58 2023 +1000)
- 779a59f0 - fix: Upgrade pact-plugin-driver to 0.4.1 (fixes an issue introduced in 0.4.0 with shared channels to plugins) (Ronald Holshausen, Wed Apr 5 17:01:18 2023 +1000)
1.0.1 - Bugfix Release​
- 30dad6d4 - fix: mock servers were shutting plugins down twice when shutting down (Ronald Holshausen, Tue Apr 4 15:15:13 2023 +1000)
- 6f0c4b2f - feat: Upgrade pact-plugin-driver to 0.4.0 which uses a shared gRPC channel to each plugin (Ronald Holshausen, Tue Apr 4 14:32:36 2023 +1000)
- 11c701b4 - fix: Upgrade pact_matching to 1.0.6 (fixes some issues with matching HTTP headers) (Ronald Holshausen, Wed Mar 15 14:54:54 2023 +1100)
- e96bc54e - fix: Upgrade pact_models to 1.0.9 (fixes issues with headers) (Ronald Holshausen, Wed Mar 15 14:31:00 2023 +1100)
1.0.0 - Maintenance Release​
- 1e7331f1 - fix: Upgrade plugin driver to 0.3.1 (Ronald Holshausen, Wed Feb 8 13:28:07 2023 +1100)
0.9.7 - Support generators in plugins​
- 5fbb0d6a - feat: Upgrade plugin driver to 0.2.2 (supports passing a test context to support generators) (Ronald Holshausen, Fri Dec 16 16:38:03 2022 +1100)
0.9.6 - Support plugins generating interaction content​
0.9.5 - Maintenance Release​
0.9.4 - Bugfix Release​
- 577824e7 - fix: Upgrade pact_models to 1.0 and pact-plugin-driver to 0.1.15 to fix cyclic dependency issue (Ronald Holshausen, Mon Nov 7 11:14:20 2022 +1100)
- 6ad00a5d - fix: Update onig to latest master to fix Regex Matcher Fails On Valid Inputs #214 (Ronald Holshausen, Fri Nov 4 15:23:50 2022 +1100)
- 965a1c41 - fix: Upgrade plugin driver to 0.1.13 (fixes issue loading plugin when there are multiple versions for the same plugin) (Ronald Holshausen, Wed Oct 5 17:29:37 2022 +1100)
- 57a8ad7d - fix: Consumer DSL needs to increment plugin access to avoid plugin shutting down when mock server starts (Ronald Holshausen, Thu Sep 8 11:54:33 2022 +1000)
- f8db90d2 - fix: Upgrade pact_models to 0.4.5 - fixes FFI bug with generators for request paths (Ronald Holshausen, Fri Aug 26 11:44:08 2022 +1000)
0.9.3 - Maintenance Release​
0.9.2 - Maintenance Release​
- 78c05f29 - feat: add metric call when the mock server is shutdown via FFI function (Ronald Holshausen, Thu Aug 11 17:50:29 2022 +1000)
0.9.1 - Bugfix Release​
0.9.0 - support for mock servers from plugin​
- 4f198f10 - feat: support for mock servers from plugins (Ronald Holshausen, Fri May 20 15:59:49 2022 +1000)
0.8.11 - Maintenance Release​
0.8.10 - Maintenance Release​
- cdf72b05 - feat: forward provider details to plugin when verifying (Ronald Holshausen, Fri Apr 22 14:12:34 2022 +1000)
- 2395143a - feat: forward verification to plugin for transports provided by the plugin (Ronald Holshausen, Fri Apr 22 12:02:05 2022 +1000)
0.8.9 - Maintenance Release​
- 73ae0ef0 - fix: Upgrade reqwest to 0.11.10 to resolve #156 (Ronald Holshausen, Wed Apr 13 13:31:55 2022 +1000)
0.8.8 - Maintenance Release​
- 345b0011 - feat: support mock servers provided from plugins (Ronald Holshausen, Mon Mar 21 15:59:46 2022 +1100)
0.8.7 - Maintenance Release​
0.8.6 - Bugfix Release​
- c2089645 - fix: log crate version must be fixed across all crates (including plugin driver) (Ronald Holshausen, Fri Jan 14 16:10:50 2022 +1100)
0.8.5 - Maintenance Release​
0.8.4 - Maintenance Release​
0.8.3 - Maintenance Release​
0.8.2 - Support setting pact spec version on the mock servers​
- 5d4a09c6 - feat: store the pact specification version with the mock server (Ronald Holshausen, Wed Nov 17 14:46:56 2021 +1100)
- fc5be202 - fix: update to latest driver crate (Ronald Holshausen, Tue Nov 16 16:19:02 2021 +1100)
0.8.1 - Support for using plugins via FFI​
0.8.0 - Pact V4 release​
0.8.0-beta.4 - Bugfix Release​
- 918e5beb - fix: update to latest models and plugin driver crates (Ronald Holshausen, Tue Oct 19 17:09:48 2021 +1100)
0.8.0-beta.3 - Support matching synchronous request/response messages​
0.8.0-beta.2 - Support synchronous messages​
- d0bfb8a8 - feat: Support consumer tests with synchronous messages (Ronald Holshausen, Tue Oct 12 15:51:08 2021 +1100)
- 35ff0993 - feat: record the version of the lib that created the pact in the metadata (Ronald Holshausen, Tue Oct 12 14:52:43 2021 +1100)
0.8.0-beta.1 - Fixes from master + Plugin support (driver version 0.0.3)​
- df715cd5 - feat: support native TLS. Fixes #144 (Matt Fellows, Mon Sep 20 13:00:33 2021 +1000)
0.7.21 - support native TLS certs​
- df715cd5 - feat: support native TLS. Fixes #144 (Matt Fellows, Mon Sep 20 13:00:33 2021 +1000)
0.8.0-beta.0 - Support for plugins with mock server​
0.7.20 - Refactor​
0.7.19 - Refactor: Moved structs to models crate​
0.7.18 - accumulating log entries + bugfix​
- b4e26844 - fix: reqwest is dyn linked to openssl by default, which causes a SIGSEGV on alpine linux (Ronald Holshausen, Tue Jun 1 14:21:31 2021 +1000)
- 17beef62 - feat: support accumulating log entries per running mock server (Ronald Holshausen, Mon May 31 15:09:20 2021 +1000)
0.7.17 - V4 features + bugfixes/enhancements​
- e588bb2 - fix: clippy violation: using
cloneon a double-reference (Ronald Holshausen, Sat Apr 24 12:52:58 2021 +1000)
0.7.16 - Bugfix Release​
- 5a529fd - feat: add ability of mock server to expose metrics #94 (Ronald Holshausen, Sun Mar 14 11:41:16 2021 +1100)
- 7f054e8 - fix: correctly assemble UTF-8 percent encoded query parameters (Ronald Holshausen, Tue Feb 9 14:02:04 2021 +1100)
0.7.15 - use a file system lock when merging pact files​
- 9976e80 - feat: added read locks and a mutex guard to reading and writing pacts (Ronald Holshausen, Mon Feb 8 11:58:52 2021 +1100)
- 61e16ed - feat: use a file system lock when merging pact files (Ronald Holshausen, Sun Feb 7 17:00:29 2021 +1100)
0.7.14 - Updated dependencies​
0.7.13 - Upgrade Tokio to 1.0​
0.7.12 - Mockserver URL and array contains generators​
- 5058a2d - feat: include the mockserver URL and port in the verification context (Ronald Holshausen, Fri Nov 20 16:43:10 2020 +1100)
- 118daa1 - feat: when merging pact files, upcast to the higher spec version (Ronald Holshausen, Thu Nov 19 18:09:13 2020 +1100)
0.7.11 - Support provider state injected values​
- 13ce2f2 - fix: introduce GeneratorTestMode and restrict provider state generator to the provider side (Ronald Holshausen, Mon Nov 16 15:00:01 2020 +1100)
0.7.10 - Bugfix Release​
- 326d02d - fix: jsdom does not support access-control-allow-headers: * for CORS pre-flight responses (Ronald Holshausen, Fri Oct 30 11:54:03 2020 +1100)
0.7.9 - arrayContains matcher​
- 2fb0c6e - fix: fix the build after refactoring the pact write function (Ronald Holshausen, Wed Oct 14 11:07:57 2020 +1100)
- 44e7414 - fix: access-control-allow-methods header was duplicated (Ronald Holshausen, Thu Oct 1 15:29:14 2020 +1000)
- d3c5cf2 - feat: add all the CORS headers (Ronald Holshausen, Wed Sep 30 13:19:31 2020 +1000)
0.7.8 - CORS pre-flight requests​
- 7e68e4c - feat: enable CORS behaviour based on the mock server config (Ronald Holshausen, Mon Sep 28 11:42:23 2020 +1000)
- 29ba743 - feat: add a mock server config struct (Ronald Holshausen, Thu Sep 24 10:30:59 2020 +1000)
- 2e662a6 - feat: handle CORS pre-flight requests in the mock server (Ronald Holshausen, Wed Sep 23 17:59:32 2020 +1000)
0.7.7 - Updated to latest pact matching crate​
- 6cba6ad - feat: implemented basic message verification with the verifier cli (Ronald Holshausen, Mon Sep 14 13:48:27 2020 +1000)
0.7.6 - Implemented provider state generator​
- da53bac - fix: return the most relevant response from the mock server #69 (Ronald Holshausen, Tue Jul 21 16:10:54 2020 +1000)
- 420f5e2 - Merge pull request #70 from pact-foundation/fix/v2-pacts (Ronald Holshausen, Tue Jul 21 09:46:05 2020 +1000)
- d7632cb - fix: write_pact_file was always serialising a v3 pact even if the spec version was set to 2 (Matt Fellows, Tue Jul 21 09:42:30 2020 +1000)
0.7.5 - Updated XML Matching​
0.7.4 - multi-part form post bodies​
- ce94df9 - feat: cleaned up the logging of request matches (Ronald Holshausen, Sun May 24 11:17:08 2020 +1000)
0.7.3 - matching of binary payloads​
- 708db47 - feat: implement matching of binary payloads (application/octet-stream) (Ronald Holshausen, Fri May 8 15:52:03 2020 +1000)
0.7.2 - TLS suppport + bugfixes​
- d85f28c - fix: mock server matching requests with headers with multiple values (Ronald Holshausen, Tue May 5 15:23:11 2020 +1000)
- da885a3 - feat: add support for TLS with the mock server #65 (Ronald Holshausen, Thu Apr 30 16:41:30 2020 +1000)
0.7.1 - Changes to support C++ DSL​
- 5f8d0a0 - feat: handle bodies with embedded matchers and generators (Ronald Holshausen, Thu Apr 23 12:25:05 2020 +1000)
0.7.0 - Convert to async/await​
0.6.2 - Rust 2018 edition​
0.6.1 - Bugfix Release​
- eef3d97 - feat: added some tests for publishing verification results to the pact broker #44 (Ronald Holshausen, Sun Sep 22 16:44:52 2019 +1000)
- 1110b47 - feat: implemented publishing verification results to the pact broker #44 (Ronald Holshausen, Sun Sep 22 13:53:27 2019 +1000)
- cb30a2f - feat: added the ProviderStateGenerator as a generator type (Ronald Holshausen, Sun Sep 8 16:29:46 2019 +1000)
- adf1a97 - fix: correct the release script (Ronald Holshausen, Sat Sep 7 12:28:22 2019 +1000)
0.6.0 - moved the ffi functions into the ffi module​
0.5.1 - support headers with multiple values​
- b5c7842 - fix: corrected some spelling (Ronald Holshausen, Sun Aug 11 14:31:42 2019 +1000)
- f0c0d07 - feat: support headers with multiple values (Ronald Holshausen, Sat Aug 10 17:01:10 2019 +1000)
- 2057f2c - fix: correct the release scripts (Ronald Holshausen, Sat Jul 27 16:07:13 2019 +1000)
0.5.0 - Upgrade to non-blocking Hyper 0.12​
- a7c674a - fix: remove duplicated line (Ronald Holshausen, Sat Jul 27 15:41:00 2019 +1000)
0.4.1 - pact matchig version to 0.5.0​
- 386ab52 - fix: corrected the release scripts to check for a version parameter (Ronald Holshausen, Sun Apr 8 13:44:57 2018 +1000)
0.4.0 - First V3 specification release​
- 3d01d6e - Merge pull request #31 from andrewspinks/master (Ronald Holshausen, Sun Mar 4 14:18:21 2018 +1100)