Skip to content

v3.0.0

Compare
Choose a tag to compare
@jbwheatley jbwheatley released this 05 Dec 13:50

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, and circe 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 upgrade http4s/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 the pactBrokerWithVersionSelectors in your pact verification test with the field pendingPactSettings. 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.