Releases: ITV/scala-pact
v4.4.0
v4.3.0
v4.2.0
Added Http4s 0.23.X for Cats Effect 3 compatibility
Done in #220. Left as a RC1 version since http4s 0.23.X is still on an RC version.
3.3.1 - Publishing pact-jvm contracts
In 3.3.0 we introduced support for publishing pact contracts generated using one of the pact-jvm test suites. This release fixes a bug in that process. v3.3.0 should be ignored.
To publish pact-jvm contracts generated during the test phase of your build, set the sbt flag: areScalaPactContracts := false
.
v3.2.1
pactPublish
command no longer tries to publish to the broker if no pacts are found to publish.
v3.2.0
-
Fix early termination when running SBT commands in sequence. #217 by @solarmosaic-kflorence
-
can start pact stubber independently of individual test. #211 by @solarmosaic-kflorence
v3.1.0
Scala-pact plugin now needs to be explicitly enabled - #210 by @solarmosaic-kflorence
v3.0.1
- bugfix: provider tags are now published to the pact broker when using
pactBrokerWithVersionSelectors
to verify pacts. #208 by @solarmosaic-kflorence and #209 by @jbwheatley
v3.0.0
Versions previous to 3.0.0 were not really following a coherent versioning scheme, so from this version onwards we will be (attempting to) follow semantic versioning. From now on the version scheme will follow major.minor.patch
. N.B. the 3
in the version number does NOT correspond to the pact specification version in anyway. We still only support v2 of the pact spec.
API changes since v.2.4.0:
-
The bodies of error responses from the pact broker are now printed to the console. #197 by @dantb
-
The modules for
http4s
versions prior to 0.21.x, andcirce
versions prior to 0.13.x have been removed. The main motivation for this is for ease of maintenance (which hopefully means easier to debug and add new features!). If this causes dependency conflicts for you, I'm afraid you will either have to stay on a previous version of scala-pact, or upgradehttp4s
/circe
. #187 by @jbwheatley -
Support for pending pacts. To find out more, please check out the issue on the pact-foundation github, and their documentation. The feature can be used on version >=2.6.0 of the open source pact-broker, and can be enabled in scala-pact either with the sbt setting key
includePendingStatus
, with the CLI argument--enablePending
, or through the testing API if you are using thepactBrokerWithVersionSelectors
in your pact verification test with the fieldpendingPactSettings
. This field manages the behaviour for fetching pending pacts from the broker, and WIP pacts (see below). #188 by @jbwheatley -
Support for WIP pacts. Again, check out the issue on pact-foundation github, and their documentation. Fetching WIP pacts during the pact verification stage can be managed by the CLI argument
--includeWipPactsSince
with dates in one of following formats:yyyy-MM-dd
,yyyy-MM-ddThh:mm
,yyyy-MM-ddThh:mm±hh:mm
. Note that you should also have--enablePending true
if fetching WIP pacts, but scala-pact will complain and turn it on for you if it finds the WIP argument. It can also be set through the testing API using the same field as for pending pacts. #200 by @jbwheatley
Internals changes since v.2.4.0
-
Http clients are now cached and reused across pact tests. This hopefully will make running multiple pact tests both less resource intensive and faster. #198 by @dantb
-
Interactions with the pact broker are managed by a single class. #189 by @jbwheatley
-
General reorganisation of some modules and classes #191 by @jbwheatley
-
Simplified the internal model for verification settings #199 by @jbwheatley
Thanks @dantb for your help, and @davesmith00000 for being advisor-in-chief.