Releases: pact-foundation/pact-net
5.0.0
This version is the same as release 5.0.0-beta.3
, and marks the full release of PactNet 5.0.0 with some breaking changes. Please see below for details and refer to the upgrade guide for more.
Breaking Changes
- feat: Support v4 specification for consumer tests by @adamrodger in #453
- refactor!: Allow verifier to specify both HTTP and message transports by @adamrodger in #465
- refactor!: Remove obsolete extension methods by @adamrodger in #466
- refactor!: Remove obsolete
IMessagePact
andMessagePact
- Replaced Newtonsoft with System.Text.Json (see upgrade guide for more info)
- Increased minimum supported .Net Framework version to 4.6.2
Minor Changes
- Throw more specific
PactVerificationFailedException
instead of more genericPactFailureException
when veritication is unsuccessful (#505) - Marked MacOS ARM architecture as fully supported
- docs: point to new workshop link by @YOU54F in #517
Internal Changes
- Upgraded tests to .Net 8 and .Net Frame 4.6.2
- Upgraded to latest FFI
- Find unused ports for the messaging server more efficiently
Full Changelog: 4.5.0...5.0.0
Thanks to @mefellows, @YOU54F, @flakey-bit and the thousands of you that have helped to beta test all of the breaking changes ❤️
5.0.0-beta.3
NOTE: This version is expected to be the final beta version before full release. No blocking issues remain open
Full Changelog: 5.0.0-beta.2...5.0.0-beta.3
- Upgrade to FFI 0.4.23
- More robust messaging server launching on MacOS
- Throw more specific
PactVerificationFailedException
instead of more genericPactFailureException
when veritication is unsuccessful (#505)
5.0.0-beta.2
Full Changelog: 5.0.0-beta.1...5.0.0-beta.2
- Replaced Newtonsoft with System.Text.Json (see upgrade guide for more info)
- Increased minimum supported .Net Framework version to 4.6.2
- Marked MacOS ARM architecture as fully supported
- Upgraded to FFI 0.4.16
- Upgraded tests to .Net 8 and .Net Frame 4.6.2
- Find unused ports for the messaging server more efficiently
5.0.0-beta.1
What's Changed
- feat: Support v4 specification for consumer tests by @adamrodger in #453
- refactor!: Allow verifier to specify both HTTP and message transports by @adamrodger in #465
- refactor!: Remove obsolete extension methods by @adamrodger in #466
Full Changelog: 4.5.0...5.0.0-beta.1
4.6.0-beta.1
4.5.0
What's Changed
- feat: Provider state behaviour options (e.g. configure teardown and body vs. query options) by @adamrodger
- feat: WithQuery overload with matcher parameter by @Manny651 in #450
- feat: xUnit output project by @adamrodger in #372
New Contributors
Full Changelog: 4.4.0...4.5.0
4.4.0
4.3.0
Please Note: OSX ARM64 support has been merged but is still considered alpha. We are currently unable to run CI on OSX/ARM64 on GitHub Actions runners and so can't automatically verify the integrity of each release. Those that have tried PactNet locally on M1/M2 Macs have reported no issues, but until CI support is available this platform is considered unsupported.
What's Changed
New Contributors
Full Changelog: 4.2.1...4.3.0
4.2.1
What's Changed
- chore: Upgrade FFI to version 0.3.11 by @RobertGilmour in #418
New Contributors
- @RobertGilmour made their first contribution in #418
Full Changelog: 4.2.0...4.2.1
4.2.0
What's Changed
- fix: Messaging server could try to use occupied port by @adamrodger in #412
- refactor: Move to new FFI combined interaction model by @adamrodger in #414
- refactor: Decompose NativeDriver to opaque interop drivers by @adamrodger in #415
- chore: Upgrade FFI to 0.3.8 by @omajid in #416
- docs: Update docs with new consumer builder API (see below)
API Changes
The following APIs have been marked as obsolete, but are retained for backwards compatibility until PactNet 5.0.0:
IMessagePact
IMessagePactV3
MessagePact.V3(string, string)
MessagePact.V3(string. string, PactConfig)
IPactV2.UsingNativeBackend()
IPactV3.UsingNativeBackend()
IMessagePactV3.UsingNativeBackend()
Instead, Pact
and MessagePact
have been combined so that only Pact
is needed. A method determines which type of interactions are being defined, from either WithHttpInteractions
for standard HTTP request/response or WithMessageInteractions
for message pacts. The older APIs are retained but internally they just call the new API.
See the samples or docs for further details.
New Contributors
Full Changelog: 4.1.0...4.2.0