diff --git a/build.gradle b/build.gradle index 09a9979..748710e 100644 --- a/build.gradle +++ b/build.gradle @@ -1,10 +1,10 @@ plugins { - id "de.marcphilipp.nexus-publish" version "0.4.0" - id "io.codearte.nexus-staging" version "0.21.1" + id 'de.marcphilipp.nexus-publish' + id 'io.codearte.nexus-staging' } wrapper { - gradleVersion = "${rootProject.property('gradle.wrapper.version')}" + gradleVersion = libs.versions.gradle.get() distributionType = Wrapper.DistributionType.ALL } diff --git a/gradle.properties b/gradle.properties index 63caa35..7f95a11 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,16 +1,5 @@ group = org.xbib name = netty-http -version = 4.1.76.1 +version = 4.1.77.0 org.gradle.warning.mode = ALL -gradle.wrapper.version = 7.3.2 -netty.version = 4.1.76.Final -tcnative.version = 2.0.51.Final -bouncycastle.version = 1.70 -conscrypt.version = 2.5.2 -javassist.version = 3.28.0-GA -jackson.version = 2.12.6 -mockito.version = 3.12.4 -xbib.net.version = 2.1.1 -xbib-guice.version = 4.4.2 -junit.version = 5.8.2 diff --git a/gradle/compile/java.gradle b/gradle/compile/java.gradle index da21de7..0dc1a1d 100644 --- a/gradle/compile/java.gradle +++ b/gradle/compile/java.gradle @@ -23,22 +23,6 @@ jar { } } -task sourcesJar(type: Jar) { - dependsOn classes - classifier 'sources' - from sourceSets.main.allSource -} - -task javadocJar(type: Jar) { - dependsOn javadoc - classifier 'javadoc' - from javadoc.destinationDir -} - -artifacts { - archives sourcesJar, javadocJar -} - tasks.withType(JavaCompile) { options.compilerArgs << '-Xlint:all,-exports' } diff --git a/gradle/publishing/publication.gradle b/gradle/publishing/publication.gradle index a0f826e..d40b5b6 100644 --- a/gradle/publishing/publication.gradle +++ b/gradle/publishing/publication.gradle @@ -6,8 +6,6 @@ publishing { publications { mavenJava(MavenPublication) { from components.java - artifact sourcesJar - artifact javadocJar pom { name = project.name description = rootProject.ext.description diff --git a/gradle/test/junit5.gradle b/gradle/test/junit5.gradle index b7ff276..52a3d63 100644 --- a/gradle/test/junit5.gradle +++ b/gradle/test/junit5.gradle @@ -1,12 +1,8 @@ - -def junitVersion = project.hasProperty('junit.version')?project.property('junit.version'):'5.8.2' -def hamcrestVersion = project.hasProperty('hamcrest.version')?project.property('hamcrest.version'):'2.2' - dependencies { - testImplementation "org.junit.jupiter:junit-jupiter-api:${junitVersion}" - testImplementation "org.junit.jupiter:junit-jupiter-params:${junitVersion}" - testImplementation "org.hamcrest:hamcrest-library:${hamcrestVersion}" - testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:${junitVersion}" + testImplementation libs.junit.jupiter.api + testImplementation libs.junit.jupiter.params + testImplementation libs.hamcrest + testRuntimeOnly libs.junit.jupiter.engine } test { diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 7454180..41d9927 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ac0b842..92f06b5 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/netty-http-bouncycastle/build.gradle b/netty-http-bouncycastle/build.gradle index 47ecbf5..d76e74d 100644 --- a/netty-http-bouncycastle/build.gradle +++ b/netty-http-bouncycastle/build.gradle @@ -1,4 +1,4 @@ dependencies { api project(":netty-http-server-api") - api "org.bouncycastle:bcpkix-jdk15on:${project.property('bouncycastle.version')}" + api libs.bouncycastle } diff --git a/netty-http-client/build.gradle b/netty-http-client/build.gradle index 28e9613..c70d00c 100644 --- a/netty-http-client/build.gradle +++ b/netty-http-client/build.gradle @@ -1,15 +1,14 @@ - dependencies { api project(":netty-http-client-api") api project(":netty-http-common") - api "io.netty:netty-handler-proxy:${project.property('netty.version')}" - testImplementation "com.fasterxml.jackson.core:jackson-databind:${project.property('jackson.version')}" - testImplementation "org.conscrypt:conscrypt-openjdk-uber:${project.property('conscrypt.version')}" - testRuntimeOnly "org.bouncycastle:bcpkix-jdk15on:${project.property('bouncycastle.version')}" + api libs.netty.handler.proxy + testImplementation libs.jackson + testImplementation libs.conscrypt + testRuntimeOnly libs.bouncycastle if (System.properties.get('os.name').toLowerCase().contains('linux') && System.properties.get('os.arch').toLowerCase().contains('amd64')) { - testRuntimeOnly "io.netty:netty-tcnative-boringssl-static:${project.property('tcnative.version')}:linux-x86_64" + testRuntimeOnly(variantOf(libs.netty.boringssl) { classifier('linux-x86_64') }) } else { - testRuntimeOnly "io.netty:netty-tcnative-boringssl-static:${project.property('tcnative.version')}" + testRuntimeOnly libs.netty.boringssl } } diff --git a/netty-http-common/build.gradle b/netty-http-common/build.gradle index 240e8a6..e00cd75 100644 --- a/netty-http-common/build.gradle +++ b/netty-http-common/build.gradle @@ -1,4 +1,4 @@ dependencies { - api "org.xbib:net-url:${project.property('xbib.net.version')}" - api "io.netty:netty-codec-http2:${project.property('netty.version')}" + api libs.net.url + api libs.netty.http2 } diff --git a/netty-http-epoll/build.gradle b/netty-http-epoll/build.gradle index 550ac78..5c6e811 100644 --- a/netty-http-epoll/build.gradle +++ b/netty-http-epoll/build.gradle @@ -1,4 +1,4 @@ dependencies { api project(":netty-http-common") - implementation "io.netty:netty-transport-native-epoll:${project.property('netty.version')}:linux-x86_64" + api(variantOf(libs.netty.epoll) { classifier('linux-x86_64') }) } diff --git a/netty-http-epoll/src/main/java/module-info.java b/netty-http-epoll/src/main/java/module-info.java index befd805..48112b7 100644 --- a/netty-http-epoll/src/main/java/module-info.java +++ b/netty-http-epoll/src/main/java/module-info.java @@ -2,7 +2,7 @@ module org.xbib.netty.http.epoll { exports org.xbib.netty.http.epoll; requires org.xbib.netty.http.common; requires io.netty.transport; - requires io.netty.transport.epoll; + requires io.netty.transport.classes.epoll; provides org.xbib.netty.http.common.TransportProvider with org.xbib.netty.http.epoll.EpollTransportProvider; } diff --git a/netty-http-kqueue/build.gradle b/netty-http-kqueue/build.gradle index 9692ada..3db3ece 100644 --- a/netty-http-kqueue/build.gradle +++ b/netty-http-kqueue/build.gradle @@ -1,4 +1,4 @@ dependencies { api project(":netty-http-common") - api "io.netty:netty-transport-native-kqueue:${project.property('netty.version')}:osx-x86_64" + api(variantOf(libs.netty.kqueue) { classifier('osx-x86_64') }) } diff --git a/netty-http-kqueue/src/main/java/module-info.java b/netty-http-kqueue/src/main/java/module-info.java index 625f496..62bc547 100644 --- a/netty-http-kqueue/src/main/java/module-info.java +++ b/netty-http-kqueue/src/main/java/module-info.java @@ -2,7 +2,7 @@ module org.xbib.netty.http.kqueue { exports org.xbib.netty.http.kqueue; requires org.xbib.netty.http.common; requires io.netty.transport; - requires io.netty.transport.kqueue; + requires io.netty.transport.classes.kqueue; provides org.xbib.netty.http.common.TransportProvider with org.xbib.netty.http.kqueue.KqueueTransportProvider; } diff --git a/netty-http-server-rest/build.gradle b/netty-http-server-rest/build.gradle index 31fe05b..05945ab 100644 --- a/netty-http-server-rest/build.gradle +++ b/netty-http-server-rest/build.gradle @@ -1,4 +1,4 @@ dependencies { api project(":netty-http-server") - implementation "org.xbib:guice:${project.property('xbib-guice.version')}" + implementation libs.guice } diff --git a/netty-http-server/build.gradle b/netty-http-server/build.gradle index c7eb8e7..f2af2c6 100644 --- a/netty-http-server/build.gradle +++ b/netty-http-server/build.gradle @@ -4,13 +4,13 @@ dependencies { api project(":netty-http-common") testImplementation project(":netty-http-client") testImplementation project(":netty-http-bouncycastle") - testRuntimeOnly "org.javassist:javassist:${project.property('javassist.version')}" - testRuntimeOnly "org.bouncycastle:bcpkix-jdk15on:${project.property('bouncycastle.version')}" + testRuntimeOnly libs.javassist + testRuntimeOnly libs.bouncycastle if (System.properties.get('os.name').toLowerCase().contains('linux') && System.properties.get('os.arch').toLowerCase().contains('amd64')) { - testRuntimeOnly "io.netty:netty-tcnative-boringssl-static:${project.property('tcnative.version')}:linux-x86_64" + testRuntimeOnly(variantOf(libs.netty.boringssl) { classifier('linux-x86_64') }) } else { - testRuntimeOnly "io.netty:netty-tcnative-boringssl-static:${project.property('tcnative.version')}" + testRuntimeOnly libs.netty.boringssl } testRuntimeOnly project(":netty-http-epoll") testRuntimeOnly project(":netty-http-kqueue") diff --git a/netty-http-server/src/main/java/org/xbib/netty/http/server/protocol/ws2/Http2WebSocketPathNotFoundException.java b/netty-http-server/src/main/java/org/xbib/netty/http/server/protocol/ws2/Http2WebSocketPathNotFoundException.java index aba2ec3..9b05f68 100644 --- a/netty-http-server/src/main/java/org/xbib/netty/http/server/protocol/ws2/Http2WebSocketPathNotFoundException.java +++ b/netty-http-server/src/main/java/org/xbib/netty/http/server/protocol/ws2/Http2WebSocketPathNotFoundException.java @@ -2,6 +2,7 @@ package org.xbib.netty.http.server.protocol.ws2; import io.netty.handler.codec.http.websocketx.WebSocketHandshakeException; +@SuppressWarnings("serial") public final class Http2WebSocketPathNotFoundException extends WebSocketHandshakeException { public Http2WebSocketPathNotFoundException(String message) { diff --git a/settings.gradle b/settings.gradle index f64e994..de0ebbc 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,3 +1,42 @@ +pluginManagement { + plugins { + id('com.gradle.plugin-publish') version('0.18.0') + id('de.marcphilipp.nexus-publish') version('0.4.0') + id('io.codearte.nexus-staging') version('0.21.1') + } +} + +dependencyResolutionManagement { + versionCatalogs { + libs { + version('gradle', '7.4.2') + version('groovy', '3.0.9') + version('spock', '2.0-groovy-3.0') + version('junit', '5.8.2') + version('netty', '4.1.77.Final') + version('netty-tcnative', '2.0.51.Final') + library('groovy-core', 'org.codehaus.groovy', 'groovy').versionRef('groovy') + library('spock-core', 'org.spockframework', 'spock-core').versionRef('spock') + library('spock-junit4', 'org.spockframework', 'spock-junit4').versionRef('spock') + library('junit-jupiter-api', 'org.junit.jupiter', 'junit-jupiter-api').versionRef('junit') + library('junit-jupiter-params', 'org.junit.jupiter', 'junit-jupiter-params').versionRef('junit') + library('junit-jupiter-engine', 'org.junit.jupiter', 'junit-jupiter-engine').versionRef('junit') + library('hamcrest', 'org.hamcrest:hamcrest-library:2.2') + library('netty-http2', 'io.netty', 'netty-codec-http2').versionRef('netty') + library('netty-handler-proxy', 'io.netty', 'netty-handler-proxy').versionRef('netty') + library('netty-epoll', 'io.netty', 'netty-transport-native-epoll').versionRef('netty') + library('netty-kqueue', 'io.netty', 'netty-transport-native-kqueue').versionRef('netty') + library('netty-boringssl', 'io.netty', 'netty-tcnative-boringssl-static').versionRef('netty-tcnative') + library('net-url', 'org.xbib', 'net-url').version('2.1.1') + library('bouncycastle', 'org.bouncycastle', 'bcpkix-jdk18on').version('1.71') + library('conscrypt', 'org.conscrypt', 'conscrypt-openjdk-uber').version('2.5.2') + library('jackson', 'com.fasterxml.jackson.core', 'jackson-databind').version('2.12.6') + library('guice', 'org.xbib', 'guice').version('4.4.2') + library('javassist', 'org.javassist', 'javassist').version('3.28.0-GA') + } + } +} + include 'netty-http-common' include 'netty-http-epoll' include 'netty-http-kqueue'