Releases: pact-foundation/pact-jvm
Releases · pact-foundation/pact-jvm
3.5.20
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
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
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
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
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
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
3.5.14
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
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
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