Skip to content

feat(ffi): upgrade to libpact_ffi 0.5.13 - #569

Open
YOU54F wants to merge 2 commits into
pact-foundation:masterfrom
YOU54F:fix/repeated-headers-libpact-0.5.x
Open

YOU54F wants to merge 2 commits into
pact-foundation:masterfrom
YOU54F:fix/repeated-headers-libpact-0.5.x

Conversation

@YOU54F

@YOU54F YOU54F commented Oct 16, 2026 •

Copy link
Copy Markdown
Member

Summary

Upgrades the underlying Rust core from libpact_ffi 0.4.27 to 0.5.13. This moves the mock server to pact_mock_server v2 and brings a suite of improvements and bug fixes.

0.5.13 includes pact-foundation/pact-reference#602, so repeated custom headers keep matching without changes to the consumer DSL or existing tests.

Supersedes the approach in #566, which required consumers to configure comma-joined header values explicitly. Incorporates the dist release download changes from #570.

Changes

  • Download pact_ffi from the cargo-dist pact_ffi-v<version> GitHub release. Each per-target .tar.xz / .zip archive is sha256 verified, and the shared library is extracted to the same build/<os>/<arch>/ paths as before.
  • Bump the FFI to 0.5.13.
  • Refresh pact metadata in the test fixtures and the Orders API sample pact to ffi 0.5.13 / models 1.3.18.
  • Update CONTRIBUTING.md for the new download process.
  • CI: disable hot reload browser tools in Provider.Tests. The ubuntu-24.04-arm runner image now ships .NET SDK 11.0.100, which takes precedence over the setup-dotnet 8.0.x install. SDK 11 generates hot reload static web assets for Web SDK projects in Debug, and the build then fails with "scoped css bundles do not have matching endpoints".

Compatibility

No consumer changes are required. Repeated WithHeader calls keep working, and existing V4 header arrays keep separate values. Apart from new mock server v2 behaviour, the changes you should see in generated pacts are limited to the Rust implementation-version metadata.

Updates the underlying Rust core from libpact_ffi 0.4.27 to 0.5.13, which
moves the mock server to pact_mock_server v2 and brings a suite of
improvements and bug fixes, including repeated custom headers continuing
to match (pact-foundation/pact-reference#602).

- Download pact_ffi from the cargo-dist `pact_ffi-v<version>` release:
  per-target .tar.xz/.zip archives, sha256 verified, with the shared
  library extracted to the same build/<os>/<arch>/ paths.
- Refresh pact metadata to ffi 0.5.13 / models 1.3.18.
…SDK 11

The ubuntu-24.04-arm runner image now ships .NET SDK 11.0.100, which is
picked over the setup-dotnet 8.0.x install. SDK 11 generates hot reload
browser-tools static web assets for Web SDK projects in Debug, and the
build then fails with "scoped css bundles do not have matching endpoints".
@YOU54F
YOU54F force-pushed the fix/repeated-headers-libpact-0.5.x branch from 209e477 to 7b66e62 Compare November 13, 2026 17:52
@YOU54F YOU54F changed the title chore(ffi): upgrade to libpact_ffi 0.5.12 feat(ffi): upgrade to libpact_ffi 0.5.12 Nov 13, 2026
@YOU54F
YOU54F marked this pull request as ready for review November 13, 2026 17:54
@YOU54F YOU54F changed the title feat(ffi): upgrade to libpact_ffi 0.5.12 feat(ffi): upgrade to libpact_ffi 0.5.13 Nov 13, 2026
@YOU54F
YOU54F requested a review from adamrodger November 13, 2026 17:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant