Skip to content

Commit 737c987

Browse files
authored
Merge branch 'main' into NO-TICKET-virtual-threads
2 parents 9d10d6a + 3cd3723 commit 737c987

File tree

3 files changed

+17
-21
lines changed

3 files changed

+17
-21
lines changed

build.gradle

Lines changed: 14 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,15 @@ plugins {
33
alias(libs.plugins.nexus.publish)
44
}
55

6+
ext['spring-framework.version'] = '6.2.8'
7+
ext['tomcat.version'] = '10.1.42'
8+
69
apply from: "${rootDir}/gradle/publish-root.gradle"
710

811
allprojects {
912
group = 'com.getyourguide.openapi.validation'
1013
description = 'OpenAPI Validation library'
11-
version = '3.2.0'
14+
version = '3.2.1'
1215

1316
java {
1417
toolchain {
@@ -63,6 +66,16 @@ subprojects {
6366
annotationProcessor(libs.lombok)
6467
testCompileOnly(libs.lombok)
6568
testAnnotationProcessor(libs.lombok)
69+
70+
// Security constraints
71+
constraints {
72+
implementation("org.springframework:spring-web:6.2.8") {
73+
because("versions below 6.2.8 have security vulnerabilities including CVE-2024-38820 - see dependabot #12")
74+
}
75+
implementation("org.apache.tomcat.embed:tomcat-embed-core:10.1.42") {
76+
because("versions below 10.1.42 have security vulnerabilities including CVE-2024-56337 - see dependabot #13")
77+
}
78+
}
6679
}
6780

6881
checkstyle {
@@ -79,24 +92,4 @@ subprojects {
7992
consoleOutput = true
8093
ruleSets = ["$rootDir/ruleset.xml"]
8194
}
82-
83-
// Needed for security. See:
84-
// - https://github.com/getyourguide/openapi-validation-java/security/dependabot/7
85-
// - https://github.com/getyourguide/openapi-validation-java/security/dependabot/6
86-
// Hopefully with spring-boot 3.4.2+ this won't be needed anymore and can be removed.
87-
configurations.configureEach {
88-
resolutionStrategy.eachDependency {details ->
89-
if (details.requested.group == 'ch.qos.logback'
90-
&& (details.requested.name == 'logback-core' || details.requested.name == 'logback-classic')
91-
) {
92-
def parse = { String v -> v.tokenize('.').collect { it.padLeft(3, '0') }.join() }
93-
def current = parse(details.requested.version)
94-
def minimum = parse('1.5.15')
95-
if (current < minimum) {
96-
details.useVersion '1.5.15'
97-
details.because 'Security requirement: forcing logback version'
98-
}
99-
}
100-
}
101-
}
10295
}

gradle/libs.versions.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ mockito-junit-jupiter = { group = "org.mockito", name = "mockito-junit-jupiter",
3636
junit-jupiter-api = { group = "org.junit.jupiter", name = "junit-jupiter-api", version.ref = "junit-jupiter" }
3737
junit-jupiter-engine = { group = "org.junit.jupiter", name = "junit-jupiter-engine", version.ref = "junit-jupiter" }
3838
junit-platform-launcher = { group = "org.junit.platform", name = "junit-platform-launcher", version.ref = "junit-platform" }
39+
javax-mail = { module = "com.sun.mail:javax.mail", version = "1.6.2" }
3940

4041
[plugins]
4142
spring-boot = { id = "org.springframework.boot", version.ref = "spring-boot" }

openapi-validation-core/build.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ dependencies {
44
api project(':openapi-validation-api')
55

66
implementation(libs.swagger.request.validator.core)
7+
implementation(libs.javax.mail) // needed as otherwise ClassNotFoundException: javax.mail.internet.AddressException
8+
79
constraints {
810
implementation(libs.commons.codec) {
911
because 'Apache commons-codec before 1.13 is vulnerable to information exposure. See https://devhub.checkmarx.com/cve-details/Cxeb68d52e-5509/'

0 commit comments

Comments
 (0)