Skip to content

Releases: pact-foundation/pact-jvm

3.5.20

28 Jul 07:52
Compare
Choose a tag to compare

Bugfix Release

  • fix: upgrade Kotlin to latest
  • feat: add verification reports configuration to the Maven plugin #428
  • fix: Guard the JUnit 5 TestResultAccumulator against mutable model classes #736
  • fix: ConsumerInfo setPactFile method needs to take a URL class #733
  • fix: JUnit 5 ext now falls back to the class annotation at the property level
  • added some debug logging around starting and stopping the mock server
  • fix: Removed the JUnit4 dependency from the JUnit5 implementation
  • Add system properties configuration to Maven plugin #731 (@SnewsButton)

3.5.19

01 Jul 09:38
Compare
Choose a tag to compare

Bugfix Release

  • fix: Add the standard test context listeners with SpringRestPactRunner #699
  • fix(Java DSL): matchHeader should override the matcher in case it is called after the body is set #716
  • fix: make sure the Java body DSL objects are allways closed correctly #628 #708
  • feat: add exclusion lists to the Gradle and Maven publish tasks #711
  • fix: allow the default behaviour of failing the build when no pacts are found in the Maven plugin to be disabled #713
  • fix: correct Javadoc in LambdaDslJsonArray
  • Upgrade Gradle to 4.8
  • fix: throw ExceptionInfo instead of RuntimeException in the lein plugin #718
  • Added 'and', 'or' functionality to Java 8 Dsl (@SnewsButton)
  • Use kotlin-stdlib-jdk8 insted of kotlin-stdlib-jre8. kotlin-stdlib-jre8 is deprecated. (@yokotaso)
  • fix: correct MockMvcTarget to call the controller the correct number of times #706
  • fix: pact specification attribute should be in camel case

3.5.18

17 Jun 07:04
Compare
Choose a tag to compare

Bugfix Release

Important Note: This release changes the way verification results are published. Now, the behaviour is to not publish results unless the pact.verifier.publishResults system property is set to true. This allows local developer builds to not publish results, but it can be turned on for CI builds.

  • Implemented support for an array of primitives in the Java 8 DSL #701
  • Allow the maven plugin to load pact files from multiple directories #652
  • Only publish verification results if the java system property is set to "true" #695
  • Fix the duplicate message in the console output when verification fails
  • Upgrade kotlin to 1.2.50
  • when selecting matchers with equal weight, use the one with the longest path #698
  • fix: equalTo mismatch message (@artamonovkirill)
  • Implement verification result publishing for JUnit 5 provider tests #694
  • Revert "JUnit Interaction runner now uses its pact source not the one associated with the pact #667"
  • do not cache the verification report file objects #411
  • Added a method to PactDslJsonBody to add a field from a DslPart #661
  • fix: expose the parent of a DSLPart # 661
  • Use the non-pooling http connection manager to test the mock server startup #658
  • Set the consumer tests to default to V3 spec

3.5.17

03 Jun 05:58
Compare
Choose a tag to compare

Bugfix Release

  • JUnit Interaction runner now uses its pact source not the one associated with the pact #667
  • Add a log statement when pact verification publishing is skipped #667
  • Implemented minMax array matching in the consumer DSLs #676
  • made default content-type more lenient to common variants (@jan-berge-ommedal)
  • moved PactJUnit5VerificationProvider from BeforeEach to BeforeTestExecution to allow initialization of class variables on @beforeeach (@thombergs)
  • chore: removed lein module to get build passing on travis
  • fix: cleaned up some duplicated code
  • fix: Java DSL now applies the default values to all requests, not just the first #680
  • evaluate @State annotations from implemented interfaces (@thombergs)
  • doc: added note about setting the provider version when using the spring runner

3.5.16

06 May 09:25
Compare
Choose a tag to compare

Bugfixes + JUnit 5 provider test support

  • Support for JUnit 5 verification tests - #576
  • correct the httpclient version used in the broker module
  • Added methods newJsonArrayMinLike and newJsonArrayMaxLike to LambdaDsl (@softarn)
  • Don't run servers on commonly used ports during tests (@pkubowicz)
  • Update minor Scala and Kotlin versions (@pkubowicz)
  • Update httpclient (@pkubowicz)
  • Load pact from classpath inside a JAR #669 (@pkubowicz)
  • Use @CompileStatic for PactReader.loadFile() (@pkubowicz)

3.5.15

22 Apr 06:08
Compare
Choose a tag to compare

JUnit 5 support for consumer tests

This release adds the pact-jvm-consumer-junit5 module for writing consumer tests with JUnit 5.

Other fixes and changes

  • Upgraded Gradle to 4.6 (for JUnit 5 support)
  • Fix the version number in the pact server Docker file (@groboclown)
  • Add in the capability to register a pact file to be accessible from the main server API (@groboclown)

2.4.20

14 Apr 23:14
Compare
Choose a tag to compare

Fix for Maven plugin

This fixes the Maven plugin which was broken due to a previous backport of fixes from 3.5.x.

3.5.14

19 Mar 02:33
Compare
Choose a tag to compare

Spring enhancements + bugfixes

  • Added a Target that receives the server port at runtime from the spring context #631
  • Added a spring context expression resolver for spring tests #632
  • Correct the Java DSL which was generating incorrect matcher keys for eachKeyLike... #401
  • Removed scala-compiler as a general dependency in favour of using the xml module directly (@slu-it)
  • Moved Mock*ProviderConfig classes to pact-jvm-consumer (@slu-it)
  • (Re)moved unused dependencies from pact-jvm-model (@slu-it)
  • Added an upper trait bound on all uses of the Pact interface #644
  • Adjust MULTIPART_HEADER_REGEX to include an optional charset attribute #645
  • Upgraded kotlin, kotlinter and detekt to the latest versions
  • Converted HalClient methods from Groovy -> Kotlin
  • #642 upgrade scala due to a vulnerability (@bbarke)

3.5.13

20 Feb 08:38
Compare
Choose a tag to compare

Bugfix Release

  • Added logging around publishing verification results
  • When fetching multiple tags, do not let the not found exception bubble out
  • Do not automatically add a content type header for requests without a body #635
  • Use a RFC 3986 compliant decoder instead of UrlDecoder as UrlDecoder does not actually decode URL paths correctly (Ronald Holshausen, Thu Feb 15 09:41:54 2018 +1100)
  • Added support for the text/xml content type (@gyuvaraj10)
  • fixed regex for timezone offset signs (@cpul)
  • Refactored name of Multipart matcher to reflect that it supports more than 1 type of multipart request. Added a matcher for 'multipart/mixed' request body. Updated tests to support the other side of the GMT. (@cpul)
  • blindly rewriting MatchingRulesImpl from groovy to kotlin (@tmszdmsk)
  • Opermisation: do not load all the pacts to verify if the test has the @ignore annotation - #623
  • Adding Inherited annotation so it can be possible to create parent classes. (@dervism)
  • Add hasPactsFromPactBrokerWithTag() to the documentation for the gradle plugin (@TimothyJones )
  • Disambiguate logback Logger (@jcreixell)

3.5.12

21 Jan 10:39
Compare
Choose a tag to compare

Bugfix release + SBT plugin

  • Upgrade provider SBT plugin to 3.x, Scala 2.12, SBT 1.x (@jcreixell)
  • Make the close method in the Java DSL safe to call multiple times #619
  • Guard against exceptions with a null message #617
  • Only use NameValidator if it exisits (@TimothyJones )
  • Add tags support to the maven plugin #403
  • Add version number to documentation for other jvm providers (@TimothyJones )
  • Correct publishResults documentation and add version number (@TimothyJones )
  • Convert task names to valid names (@TimothyJones )
  • Fix missing generation of array examples with eachArray* methods (@ohubaut)
  • Add support for strange eachKey* method in Lambda DSL (@ohubaut)
  • Add support for objects and array specification on LambdaDslJsonArray (@ohubaut)
  • Add support for objects and array specification on LambdaDslObject (@ohubaut)
  • fix the filtering of pacts with the Spring test runner #572
  • Fixes error when removing path ending with slash(/) (@lordofthejars)
  • add a note about tests failing because of HTTP connection caching in the HTTP client #342
  • Add a test case for when the Java DSL is used to create an attribute with a space in the name #582