Skip to content

Commit 25ca860

Browse files
committed
Merge branch 'master' into v4.7.x
2 parents 5b8f441 + 0c727fe commit 25ca860

File tree

34 files changed

+394
-114
lines changed

34 files changed

+394
-114
lines changed

.github/workflows/compatability-suite.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ jobs:
1212
steps:
1313
- uses: actions/checkout@v2
1414
- name: Set up JDK 18
15-
uses: actions/setup-java@v3
15+
uses: actions/setup-java@v5
1616
with:
1717
distribution: temurin
1818
java-version: 18
@@ -29,7 +29,7 @@ jobs:
2929
steps:
3030
- uses: actions/checkout@v2
3131
- name: Set up JDK 18
32-
uses: actions/setup-java@v3
32+
uses: actions/setup-java@v5
3333
with:
3434
distribution: temurin
3535
java-version: 18
@@ -46,7 +46,7 @@ jobs:
4646
steps:
4747
- uses: actions/checkout@v2
4848
- name: Set up JDK 18
49-
uses: actions/setup-java@v3
49+
uses: actions/setup-java@v5
5050
with:
5151
distribution: temurin
5252
java-version: 18
@@ -63,7 +63,7 @@ jobs:
6363
steps:
6464
- uses: actions/checkout@v2
6565
- name: Set up JDK 18
66-
uses: actions/setup-java@v3
66+
uses: actions/setup-java@v5
6767
with:
6868
distribution: temurin
6969
java-version: 18

.github/workflows/gradle.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ jobs:
5656
jdk: [ 17, 18, 19, 21, 22 ]
5757
steps:
5858
- uses: actions/checkout@v2
59-
- name: Set up JDK
60-
uses: actions/setup-java@v3
59+
- name: Set up JDK ${{ matrix.jdk }}
60+
uses: actions/setup-java@v5
6161
with:
6262
distribution: temurin
6363
java-version: ${{ matrix.jdk }}

CHANGELOG.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,47 @@
11
To generate the log, run `git log --pretty='* %h - %s (%an, %ad)' TAGNAME..HEAD` replacing TAGNAME and HEAD as appropriate.
22

3+
# 4.6.18 - Maintenance Release
4+
5+
* 8a1e8b0a4 - chore: fix port conflict in test (Ronald Holshausen, Tue Nov 11 10:39:20 2025 +1100)
6+
* 8c22c525e - chore: Update release process to use jreleaser (Ronald Holshausen, Tue Nov 11 10:30:48 2025 +1100)
7+
* 57c5bda6f - fix: add Lambda DSL methods that are the same as the old DSL arrayEachLike #1877 (Ronald Holshausen, Mon Nov 10 15:30:04 2025 +1100)
8+
* 012242246 - chore: Update provider dependencies (Ronald Holshausen, Mon Nov 10 14:35:19 2025 +1100)
9+
* ab81b32ba - chore: Update core dependencies (Ronald Holshausen, Mon Nov 10 11:20:36 2025 +1100)
10+
* f3b1d6e5a - chore: Update consumer dependencies (Ronald Holshausen, Mon Nov 10 11:06:01 2025 +1100)
11+
* 87cc6c0ce - chore: Update main dependency versions (Ronald Holshausen, Mon Nov 10 10:45:18 2025 +1100)
12+
* 8696796fe - chore: Update Gradle to 7.6.6 (Ronald Holshausen, Mon Nov 10 10:19:21 2025 +1100)
13+
* 3f60ce0e0 - Merge pull request #1875 from holly-cummins/reference-quarkus-in-docs (Ronald Holshausen, Fri Aug 29 09:06:32 2025 +1000)
14+
* 897aaea3c - Reference Quarkus in service providers section (Holly Cummins, Thu Aug 28 19:30:51 2025 +0100)
15+
* c4abfaaf8 - Merge pull request #1872 from pact-foundation/dependabot/github_actions/actions/setup-java-5 (Ronald Holshausen, Thu Aug 28 10:10:55 2025 +1000)
16+
* 8a3e56648 - Merge pull request #1873 from holly-cummins/update-classgraph (Ronald Holshausen, Thu Aug 28 10:10:20 2025 +1000)
17+
* c50f6271d - chore(deps): bump actions/setup-java from 3 to 5 (dependabot[bot], Wed Aug 27 23:37:55 2025 +0000)
18+
* f663217ad - Merge pull request #1874 from holly-cummins/improve-java-version-clarity (Ronald Holshausen, Thu Aug 28 09:34:44 2025 +1000)
19+
* 4670fa8f4 - Correct Java versions in developer-facing content (Holly Cummins, Wed Aug 27 16:35:52 2025 +0100)
20+
* aa17dca65 - Update classgraph to work around compatibility issue (Holly Cummins, Wed Aug 27 16:19:14 2025 +0100)
21+
* 286861e97 - chore(CI): update to actions/cache@v4 (Ronald Holshausen, Thu May 29 13:59:06 2025 +1000)
22+
* 64a931298 - chore: Update plugin driver to 0.5.2 (Ronald Holshausen, Thu May 29 11:00:58 2025 +1000)
23+
* 15da5a605 - Update README.md (Ronald Holshausen, Fri May 23 10:10:59 2025 +1000)
24+
* 7d49354be - Merge pull request #1858 from WellingR/sync-message-pact-provider-state (Ronald Holshausen, Mon Mar 17 10:03:08 2025 +1100)
25+
* 7a924a007 - fix: Ensure provider state is injected when verifying synchronous message pacts (Ruud Welling, Sun Mar 16 18:44:41 2025 +0100)
26+
* 90e0f919d - bump version to 4.6.18 (Ronald Holshausen, Fri Feb 14 11:52:44 2025 +1100)
27+
28+
# 4.6.17 - Bugfix Release
29+
30+
* b3656418f - fix: Only coerce strings to numbers when comparing headers and query parameters (Ronald Holshausen, Fri Feb 14 10:27:01 2025 +1100)
31+
* 00e4b409f - Merge commit '8cb9773b51dc729c4d03414bcb8bc0a8843662a1' (Ronald Holshausen, Fri Feb 14 10:24:30 2025 +1100)
32+
* 8cb9773b5 - Squashed 'compatibility-suite/pact-compatibility-suite/' changes from cc76eac3c..1acfa1ecb (Ronald Holshausen, Fri Feb 14 10:24:30 2025 +1100)
33+
* 1b1cf8432 - chore(compatibility-suite): Correct the shared steps after updating the compatibility suite (Ronald Holshausen, Thu Feb 13 10:23:52 2025 +1100)
34+
* f6fa6e3fe - Squashed 'compatibility-suite/pact-compatibility-suite/' changes from 416f3a64d..cc76eac3c (Ronald Holshausen, Thu Feb 13 10:06:48 2025 +1100)
35+
* 878949219 - Merge commit 'f6fa6e3fe1da4c8fa8a7285f844c3187252365b3' (Ronald Holshausen, Thu Feb 13 10:06:48 2025 +1100)
36+
* c3938b4c8 - chore: Fix compatibility-suite CI build (Ronald Holshausen, Thu Feb 13 09:34:10 2025 +1100)
37+
* dea8fb762 - chore: Fix compatibility-suite CI build (Ronald Holshausen, Thu Feb 13 09:15:34 2025 +1100)
38+
* 8c5b0b1da - fix: Only split values of known multi-value headers #1852 (Ronald Holshausen, Wed Feb 12 16:01:17 2025 +1100)
39+
* d7d30304c - fix: Matching rule paths for fields with only digits should not be written as indices #1851 (Ronald Holshausen, Wed Feb 12 11:21:26 2025 +1100)
40+
* 5dba442e2 - fix: Lambda based DSL stringType method did not match the old DSL #1850 (Ronald Holshausen, Wed Feb 12 10:27:13 2025 +1100)
41+
* 287b16c44 - feat: Pass any transport config to the plugin in the test context under the transport_config key (Ronald Holshausen, Mon Dec 16 10:34:56 2024 +1100)
42+
* 80d8a8779 - chore: Add example of a test with a pending interaction (Ronald Holshausen, Fri Dec 6 09:38:52 2024 +1100)
43+
* 8b09520f2 - bump version to 4.6.17 (Ronald Holshausen, Thu Dec 5 09:50:10 2024 +1100)
44+
345
# 4.7.0-beta.1 - Upgrade Kotlin to 2.1 and update all dependencies
446

547
* 7d50d9891 - chore: Upgrade KTor to 3.1.3 #1863 (Ronald Holshausen, Thu May 22 16:35:07 2025 +1000)

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
Most of Pact-JVM is written in Kotlin and is built with Gradle. Tests are written using [Spock](https://spockframework.org/).
1212

13-
Before you build, install java 11, `Gradle` and `Maven` (Maven is required to build the Maven plugin).
13+
Before you build, install java 17, `Gradle` and `Maven` (Maven is required to build the Maven plugin).
1414

1515
#### To build the libraries:
1616

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,10 @@ You want to look at: [pact leiningen plugin](provider/lein)
168168

169169
Have a look at [spring](provider/spring) or [Spring MVC Pact Test Runner](https://github.com/realestate-com-au/pact-jvm-provider-spring-mvc) (Not maintained).
170170

171+
#### verify pacts with a Quarkus project
172+
173+
Have a look at the Quarkus Pact [provider extension](https://quarkus.io/extensions/io.quarkiverse.pact/quarkus-pact-provider/)
174+
171175
#### I want to verify pacts but don't want to use sbt or gradle or leiningen
172176

173177
You want to look at: [provider](provider)

buildSrc/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ dependencies {
1313
implementation 'org.jetbrains.kotlin:kotlin-gradle-plugin:2.2.0'
1414
implementation 'io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.23.8'
1515
implementation 'org.jetbrains.dokka:dokka-gradle-plugin:1.9.20'
16-
implementation 'org.apache.commons:commons-text:1.13.1'
16+
implementation 'org.apache.commons:commons-text:1.14.0'
1717
}

buildSrc/src/main/groovy/au.com.dius.pact.kotlin-common-conventions.gradle

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -39,36 +39,36 @@ dependencies {
3939
api 'org.apache.tika:tika-core:2.9.4'
4040
api 'io.github.oshai:kotlin-logging-jvm:7.0.7'
4141

42-
implementation 'commons-codec:commons-codec:1.18.0'
42+
implementation 'commons-codec:commons-codec:1.19.0'
4343
implementation 'commons-io:commons-io:2.19.0'
4444
implementation 'org.jetbrains.kotlin:kotlin-stdlib:2.2.0'
45-
implementation 'org.apache.commons:commons-lang3:3.17.0'
46-
implementation 'org.apache.commons:commons-text:1.13.1'
45+
implementation 'org.apache.commons:commons-lang3:3.19.0'
46+
implementation 'org.apache.commons:commons-text:1.14.0'
4747
implementation 'org.apache.commons:commons-collections4:4.5.0'
4848
implementation 'org.apache.tika:tika-core:2.9.4'
49-
implementation 'com.google.guava:guava:33.4.8-jre'
49+
implementation 'com.google.guava:guava:33.5.0-jre'
5050
implementation 'org.slf4j:slf4j-api:2.0.17'
5151
implementation 'io.ktor:ktor-http-jvm:3.1.3'
5252
implementation 'io.ktor:ktor-server-netty:3.1.3'
5353
implementation 'io.ktor:ktor-network-tls-certificates:3.1.3'
5454
implementation 'io.ktor:ktor-server-call-logging:3.1.3'
5555
implementation 'io.netty:netty-handler:4.2.1.Final'
56-
implementation 'org.apache.groovy:groovy:4.0.26'
57-
implementation 'org.apache.groovy:groovy-json:4.0.26'
58-
implementation 'org.apache.groovy:groovy-xml:4.0.26'
56+
implementation 'org.apache.groovy:groovy:4.0.29'
57+
implementation 'org.apache.groovy:groovy-json:4.0.29'
58+
implementation 'org.apache.groovy:groovy-xml:4.0.29'
5959
implementation 'io.pact.plugin.driver:core:0.5.2' //remember to also update under api
6060
implementation 'io.github.oshai:kotlin-logging-jvm:7.0.7'
6161

62-
testImplementation 'org.apache.groovy:groovy:4.0.26'
63-
testImplementation 'org.apache.groovy:groovy-json:4.0.26'
64-
testImplementation 'org.apache.groovy:groovy-datetime:4.0.26'
65-
testImplementation 'org.apache.groovy:groovy-xml:4.0.26'
66-
testImplementation 'org.apache.groovy:groovy-nio:4.0.26'
62+
testImplementation 'org.apache.groovy:groovy:4.0.29'
63+
testImplementation 'org.apache.groovy:groovy-json:4.0.29'
64+
testImplementation 'org.apache.groovy:groovy-datetime:4.0.29'
65+
testImplementation 'org.apache.groovy:groovy-xml:4.0.29'
66+
testImplementation 'org.apache.groovy:groovy-nio:4.0.29'
6767
testImplementation 'org.hamcrest:hamcrest:3.0'
6868
testImplementation 'junit:junit:4.13.2'
6969
testImplementation 'ch.qos.logback:logback-classic:1.4.14'
7070
testImplementation 'ch.qos.logback:logback-core:1.4.14'
71-
testImplementation 'net.bytebuddy:byte-buddy:1.17.5'
71+
testImplementation 'net.bytebuddy:byte-buddy:1.17.8'
7272
testImplementation 'com.github.tomakehurst:wiremock-jre8:2.35.2'
7373
testImplementation 'org.junit.vintage:junit-vintage-engine:5.12.2'
7474
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.12.2'
@@ -82,7 +82,7 @@ dependencies {
8282
implementation 'org.jetbrains.kotlin:kotlin-reflect:2.2.0'
8383

8484
codenarc('org.codenarc:CodeNarc:3.6.0-groovy-4.0')
85-
codenarc('org.apache.groovy:groovy:4.0.26')
85+
codenarc('org.apache.groovy:groovy:4.0.29')
8686
}
8787

8888
testing {

buildSrc/src/main/groovy/au.com.dius.pact.kotlin-library-conventions.gradle

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ plugins {
66
id 'java-library'
77

88
id 'maven-publish'
9-
id 'signing'
109
id 'org.jetbrains.dokka'
1110
}
1211

@@ -83,18 +82,7 @@ publishing {
8382
}
8483
repositories {
8584
maven {
86-
url "https://oss.sonatype.org/service/local/staging/deploy/maven2"
87-
if (project.hasProperty('sonatypeUsername')) {
88-
credentials {
89-
username sonatypeUsername
90-
password sonatypePassword
91-
}
92-
}
85+
url = rootProject.layout.buildDirectory.dir('staging-deploy')
9386
}
9487
}
9588
}
96-
97-
signing {
98-
required { project.hasProperty('isRelease') }
99-
sign publishing.publications.mavenPublication
100-
}

consumer/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ dependencies {
2626
}
2727
implementation 'org.apache.commons:commons-lang3'
2828
implementation 'org.apache.commons:commons-io:1.3.2'
29-
implementation 'org.apache.commons:commons-text:1.13.1'
29+
implementation 'org.apache.commons:commons-text:1.14.0'
3030
implementation 'org.apache.tika:tika-core'
3131

3232
testImplementation 'org.hamcrest:hamcrest'
@@ -40,7 +40,7 @@ dependencies {
4040
testImplementation 'org.apache.groovy:groovy-dateutil'
4141
testRuntimeOnly 'net.bytebuddy:byte-buddy'
4242
testRuntimeOnly 'org.objenesis:objenesis:3.4'
43-
testImplementation 'com.fasterxml.jackson.core:jackson-databind:2.19.0'
44-
testImplementation 'io.grpc:grpc-protobuf:1.72.0'
43+
testImplementation 'com.fasterxml.jackson.core:jackson-databind:2.20.1'
44+
testImplementation 'io.grpc:grpc-protobuf:1.76.0'
4545
testImplementation 'org.junit.jupiter:junit-jupiter-api'
4646
}

consumer/groovy/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ dependencies {
2222
testImplementation 'org.apache.groovy:groovy-xml'
2323
testImplementation 'org.apache.groovy:groovy-dateutil'
2424

25-
groovyDoc 'org.apache.groovy:groovy-all:4.0.26'
25+
groovyDoc 'org.apache.groovy:groovy-all:4.0.29'
2626
}
2727

2828
compileGroovy {

0 commit comments

Comments
 (0)