diff --git a/.github/workflows/style.yml b/.github/workflows/style.yml index c726cb1f21..e8fa5f8dff 100644 --- a/.github/workflows/style.yml +++ b/.github/workflows/style.yml @@ -20,7 +20,7 @@ jobs: key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} restore-keys: | ${{ runner.os }}-gradle- - - name: build-logic Code Style Check with Gradle and Spotless - run: ./gradlew :build-logic:clean :build-logic:spotlessCheck + - name: build-logic-ncj Code Style Check with Gradle and Spotless + run: ./gradlew :build-logic-ncj:clean :build-logic-ncj:spotlessCheck - name: netCDF-Java Code Style Check with Gradle and Spotless run: ./gradlew clean spotlessCheck diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index c4d086fee0..eeee9ed0da 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -22,7 +22,7 @@ jobs: JDK8: /usr/thredds-test-environment/${{ matrix.java-vendor }}8 - name: Prep for artifact upload if: failure() - run: rm -rf build-logic/build/tmp + run: rm -rf build-logic-ncj/build/tmp - uses: actions/upload-artifact@v4 if: failure() with: diff --git a/bufr/build.gradle.kts b/bufr/build.gradle.kts index 9e6a35dd87..3f5a8e4ec5 100644 --- a/bufr/build.gradle.kts +++ b/bufr/build.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("java-library-conventions") - id("protobuf-conventions") + id("ncj-java-library-conventions") + id("ncj-protobuf-conventions") } description = "Reading BUFR files with the NetCDF-java library." @@ -17,22 +17,22 @@ dependencies { api(project(":cdm-core")) - implementation(libs.beust.jcommander) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jdom2) - implementation(libs.protobuf) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.beust.jcommander) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.protobuf) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/build-logic/build.gradle.kts b/build-logic-ncj/build.gradle.kts similarity index 75% rename from build-logic/build.gradle.kts rename to build-logic-ncj/build.gradle.kts index 4f728bf2a2..0e030b454f 100644 --- a/build-logic/build.gradle.kts +++ b/build-logic-ncj/build.gradle.kts @@ -5,13 +5,13 @@ plugins { `kotlin-dsl` - alias(libs.plugins.protobuf) - alias(libs.plugins.spotless) + alias(ncjLibs.plugins.protobuf) + alias(ncjLibs.plugins.spotless) } dependencies { - implementation(plugin(libs.plugins.protobuf)) - implementation(plugin(libs.plugins.spotless)) + implementation(plugin(ncjLibs.plugins.protobuf)) + implementation(plugin(ncjLibs.plugins.spotless)) } spotless { diff --git a/build-logic/settings.gradle.kts b/build-logic-ncj/settings.gradle.kts similarity index 68% rename from build-logic/settings.gradle.kts rename to build-logic-ncj/settings.gradle.kts index a3c7e8aedf..96ec5bc81a 100644 --- a/build-logic/settings.gradle.kts +++ b/build-logic-ncj/settings.gradle.kts @@ -9,7 +9,7 @@ dependencyResolutionManagement { mavenCentral() gradlePluginPortal() } - versionCatalogs { create("libs") { from(files("../gradle/libs.versions.toml")) } } + versionCatalogs { create("ncjLibs") { from(files("../gradle/ncj.libs.versions.toml")) } } } -rootProject.name = "build-logic" +rootProject.name = "build-logic-ncj" diff --git a/build-logic/src/main/kotlin/artifact-publishing-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-artifact-publishing-conventions.gradle.kts similarity index 100% rename from build-logic/src/main/kotlin/artifact-publishing-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-artifact-publishing-conventions.gradle.kts diff --git a/build-logic/src/main/kotlin/base-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-base-conventions.gradle.kts similarity index 93% rename from build-logic/src/main/kotlin/base-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-base-conventions.gradle.kts index 1292d84cdc..5fe03f874b 100644 --- a/build-logic/src/main/kotlin/base-conventions.gradle.kts +++ b/build-logic-ncj/src/main/kotlin/ncj-base-conventions.gradle.kts @@ -9,7 +9,7 @@ val catalogs = extensions.getByType() group = "edu.ucar" -version = catalogs.named("libs").findVersion("netcdf-java").get().requiredVersion +version = catalogs.named("ncjLibs").findVersion("netcdf-java").get().requiredVersion description = "A component to the Unidata netCDF-Java library (aka CDM)." @@ -62,5 +62,5 @@ project.extra["public.artifacts"] = publicArtifacts // will be the bytecode produced by the project for all java compilation // will be used to run the tests (test, not testWithJdkX), generate code coverage reports, etc. // other versions of java can be used to run the tests, but this is configured in -// testing-conventions.gradle.kts +// ncj-testing-conventions.gradle.kts project.extra["project.minimumJdkVersion"] = "8" diff --git a/build-logic/src/main/kotlin/java-base-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-java-base-conventions.gradle.kts similarity index 93% rename from build-logic/src/main/kotlin/java-base-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-java-base-conventions.gradle.kts index 4596a7005f..42471d47f0 100644 --- a/build-logic/src/main/kotlin/java-base-conventions.gradle.kts +++ b/build-logic-ncj/src/main/kotlin/ncj-java-base-conventions.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("base-conventions") - id("testing-conventions") + id("ncj-base-conventions") + id("ncj-testing-conventions") } tasks { diff --git a/build-logic/src/main/kotlin/java-library-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-java-library-conventions.gradle.kts similarity index 94% rename from build-logic/src/main/kotlin/java-library-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-java-library-conventions.gradle.kts index 5dc3d21dbe..513b5ca555 100644 --- a/build-logic/src/main/kotlin/java-library-conventions.gradle.kts +++ b/build-logic-ncj/src/main/kotlin/ncj-java-library-conventions.gradle.kts @@ -4,9 +4,9 @@ */ plugins { - id("java-base-conventions") + id("ncj-java-base-conventions") `java-library` - id("artifact-publishing-conventions") + id("ncj-artifact-publishing-conventions") id("com.diffplug.spotless") } diff --git a/build-logic/src/main/kotlin/platform-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-platform-conventions.gradle.kts similarity index 82% rename from build-logic/src/main/kotlin/platform-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-platform-conventions.gradle.kts index ceb3fc9d6a..dc0fb466b8 100644 --- a/build-logic/src/main/kotlin/platform-conventions.gradle.kts +++ b/build-logic-ncj/src/main/kotlin/ncj-platform-conventions.gradle.kts @@ -7,9 +7,9 @@ import org.gradle.api.publish.maven.MavenPublication import org.gradle.kotlin.dsl.create plugins { - id("base-conventions") + id("ncj-base-conventions") `java-platform` - id("artifact-publishing-conventions") + id("ncj-artifact-publishing-conventions") } publishing { diff --git a/build-logic/src/main/kotlin/protobuf-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-protobuf-conventions.gradle.kts similarity index 60% rename from build-logic/src/main/kotlin/protobuf-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-protobuf-conventions.gradle.kts index 9e02e2b4e1..2b6bf32d5d 100644 --- a/build-logic/src/main/kotlin/protobuf-conventions.gradle.kts +++ b/build-logic-ncj/src/main/kotlin/ncj-protobuf-conventions.gradle.kts @@ -4,13 +4,13 @@ */ plugins { - id("java-base-conventions") + id("ncj-java-base-conventions") id("com.google.protobuf") } -val libs = extensions.getByType(VersionCatalogsExtension::class.java).named("libs") +val libCatalog = extensions.getByType(VersionCatalogsExtension::class.java).named("ncjLibs") -protobuf.protoc { artifact = libs.findLibrary("protobuf-protoc").get().get().toString() } +protobuf.protoc { artifact = libCatalog.findLibrary("protobuf-protoc").get().get().toString() } tasks.withType(JacocoReport::class.java).configureEach { classDirectories.setFrom( diff --git a/build-logic/src/main/kotlin/testing-conventions.gradle.kts b/build-logic-ncj/src/main/kotlin/ncj-testing-conventions.gradle.kts similarity index 99% rename from build-logic/src/main/kotlin/testing-conventions.gradle.kts rename to build-logic-ncj/src/main/kotlin/ncj-testing-conventions.gradle.kts index 63e708ef0f..7f51667e4e 100644 --- a/build-logic/src/main/kotlin/testing-conventions.gradle.kts +++ b/build-logic-ncj/src/main/kotlin/ncj-testing-conventions.gradle.kts @@ -4,7 +4,7 @@ */ plugins { - id("base-conventions") + id("ncj-base-conventions") java jacoco } diff --git a/build.gradle.kts b/build.gradle.kts index 4f2dc83ad9..9df2981100 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("java-base-conventions") - alias(libs.plugins.spotless) + id("ncj-java-base-conventions") + alias(ncjLibs.plugins.spotless) } description = "The Unidata netCDF-Java library (aka CDM)." @@ -19,10 +19,10 @@ tasks.wrapper { } spotless { - // check all gradle build scripts (build-logic has its own formatting check) + // check all gradle build scripts (build-logic-ncj has its own formatting check) kotlinGradle { target("*.gradle.kts", "**/*.gradle.kts") - targetExclude("build-logic/**/*") + targetExclude("build-logic-ncj/**/*") ktfmt().googleStyle() } } diff --git a/cdm-test-utils/build.gradle.kts b/cdm-test-utils/build.gradle.kts index df2f799305..d534a4c4ea 100644 --- a/cdm-test-utils/build.gradle.kts +++ b/cdm-test-utils/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "A collection of reusable classes to be used internally for testing across the various THREDDS projects." @@ -17,11 +17,11 @@ dependencies { implementation(project(":httpservices")) - implementation(libs.jdom2) - implementation(libs.junit4) - implementation(libs.re2j) - implementation(libs.slf4j.api) - implementation(libs.testcontainers) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.junit4) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) + implementation(ncjLibs.testcontainers) } tasks.withType().configureEach { diff --git a/cdm-test/build.gradle.kts b/cdm-test/build.gradle.kts index 6a2ec60213..2d5dc85c18 100644 --- a/cdm-test/build.gradle.kts +++ b/cdm-test/build.gradle.kts @@ -5,7 +5,7 @@ import kotlin.collections.set * See LICENSE for license information. */ -plugins { id("java-base-conventions") } +plugins { id("ncj-java-base-conventions") } description = "Classes for CDM unit and integration testing. Relies on having access to " + @@ -25,21 +25,21 @@ dependencies { testImplementation(project(":netcdf4")) testImplementation(project(":udunits")) - testImplementation(libs.awssdk.s3) - testImplementation(libs.commons.compress) - testImplementation(libs.commons.io) - testImplementation(libs.findbugs.jsr305) - testImplementation(libs.google.truth) - testImplementation(libs.guava) - testImplementation(libs.jdom2) - testImplementation(libs.jj2000) - testImplementation(libs.re2j) - testImplementation(libs.slf4j.api) - testCompileOnly(libs.junit4) + testImplementation(ncjLibs.awssdk.s3) + testImplementation(ncjLibs.commons.compress) + testImplementation(ncjLibs.commons.io) + testImplementation(ncjLibs.findbugs.jsr305) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.guava) + testImplementation(ncjLibs.jdom2) + testImplementation(ncjLibs.jj2000) + testImplementation(ncjLibs.re2j) + testImplementation(ncjLibs.slf4j.api) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } val testVersions = project.extra["project.testLtsVersions"] diff --git a/cdm/core/build.gradle.kts b/cdm/core/build.gradle.kts index 409a9dee47..290f0d5068 100644 --- a/cdm/core/build.gradle.kts +++ b/cdm/core/build.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("java-library-conventions") - id("protobuf-conventions") + id("ncj-java-library-conventions") + id("ncj-protobuf-conventions") } description = @@ -20,29 +20,29 @@ dependencies { implementation(project(":httpservices")) implementation(project(":udunits")) - implementation(libs.beust.jcommander) - implementation(libs.commons.math3) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jdom2) - implementation(libs.jodaTime) - implementation(libs.protobuf) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.beust.jcommander) + implementation(ncjLibs.commons.math3) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.jodaTime) + implementation(ncjLibs.protobuf) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.commons.io) - testImplementation(libs.google.truth) - testImplementation(libs.mockito.core) + testImplementation(ncjLibs.commons.io) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.mockito.core) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } tasks.withType().configureEach { diff --git a/cdm/gcdm/build.gradle.kts b/cdm/gcdm/build.gradle.kts index 586ac8e8e6..4b1ec11458 100644 --- a/cdm/gcdm/build.gradle.kts +++ b/cdm/gcdm/build.gradle.kts @@ -7,10 +7,10 @@ import com.github.psxpaul.task.JavaExecFork import com.google.protobuf.gradle.id plugins { - id("java-library-conventions") + id("ncj-java-library-conventions") application - id("protobuf-conventions") - alias(libs.plugins.execfork) + id("ncj-protobuf-conventions") + alias(ncjLibs.plugins.execfork) } description = "gRPC client and server implementation of CDM Remote Procedure Calls (gCDM)." @@ -22,35 +22,35 @@ dependencies { api(project(":cdm-core")) - implementation(libs.grpc.protobuf) - implementation(libs.grpc.stub) - implementation(libs.slf4j.api) + implementation(ncjLibs.grpc.protobuf) + implementation(ncjLibs.grpc.stub) + implementation(ncjLibs.slf4j.api) - compileOnly(libs.tomcat.annotationsApi) + compileOnly(ncjLibs.tomcat.annotationsApi) runtimeOnly(project(":bufr")) runtimeOnly(project(":grib")) - runtimeOnly(libs.grpc.nettyShaded) - runtimeOnly(libs.logback.classic) + runtimeOnly(ncjLibs.grpc.nettyShaded) + runtimeOnly(ncjLibs.logback.classic) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) testImplementation(project(":netcdf4")) - testImplementation(libs.commons.io) - testImplementation(libs.google.truth) - testImplementation(libs.grpc.testing) - testImplementation(libs.mockito.core) + testImplementation(ncjLibs.commons.io) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.grpc.testing) + testImplementation(ncjLibs.mockito.core) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } -val libCatalog = extensions.getByType(VersionCatalogsExtension::class.java).named("libs") +val libCatalog = extensions.getByType(VersionCatalogsExtension::class.java).named("ncjLibs") protobuf { protoc { artifact = libCatalog.findLibrary("protobuf-protoc").get().get().toString() } @@ -80,7 +80,6 @@ val startDaemon = jvmArgs = listOf("-Xmx512m", "-Djava.awt.headless=true") standardOutput = project.layout.buildDirectory.file("gcdm_logs/gcdm.log") errorOutput = project.layout.buildDirectory.file("gcdm_logs/gcdm-error.log") - // stopAfter = tasks.named("test") waitForPort = 16111 waitForOutput = "Server started, listening on 16111" dependsOn(tasks.testClasses) diff --git a/cdm/image/build.gradle.kts b/cdm/image/build.gradle.kts index b59d4a85ff..d68d677781 100644 --- a/cdm/image/build.gradle.kts +++ b/cdm/image/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "A collection of utilities needed client-side, including IOSPs requiring java.awt." @@ -14,16 +14,16 @@ dependencies { api(project(":cdm-core")) - implementation(libs.slf4j.api) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/cdm/misc/build.gradle.kts b/cdm/misc/build.gradle.kts index 4ed8d02942..cd047b631e 100644 --- a/cdm/misc/build.gradle.kts +++ b/cdm/misc/build.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("java-library-conventions") - id("protobuf-conventions") + id("ncj-java-library-conventions") + id("ncj-protobuf-conventions") } description = "The Common Data Model (CDM) misc IOSPs." @@ -19,23 +19,23 @@ dependencies { implementation(project(":udunits")) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.protobuf) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.protobuf) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) testImplementation(project(":grib")) - testImplementation(libs.commons.io) - testImplementation(libs.google.truth) - testImplementation(libs.mockito.core) + testImplementation(ncjLibs.commons.io) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.mockito.core) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/cdm/radial/build.gradle.kts b/cdm/radial/build.gradle.kts index e98d5bdf68..519f59fef2 100644 --- a/cdm/radial/build.gradle.kts +++ b/cdm/radial/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "The Common Data Model (CDM) radial data IOSPs." @@ -16,23 +16,23 @@ dependencies { implementation(project(":udunits")) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jdom2) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) testImplementation(project(":netcdf4")) - testImplementation(libs.commons.io) - testImplementation(libs.google.truth) - testImplementation(libs.mockito.core) + testImplementation(ncjLibs.commons.io) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.mockito.core) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/cdm/s3/build.gradle.kts b/cdm/s3/build.gradle.kts index eaa2df3e95..c9c0c8e061 100644 --- a/cdm/s3/build.gradle.kts +++ b/cdm/s3/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "The Common Data Model (CDM) AWS S3 support." @@ -14,8 +14,8 @@ dependencies { api(project(":cdm-core")) - implementation(libs.awssdk.apacheClient) - implementation(libs.awssdk.s3) { + implementation(ncjLibs.awssdk.apacheClient) + implementation(ncjLibs.awssdk.s3) { // exclude netty nio client due to open CVEs. See // https://github.com/aws/aws-sdk-java-v2/issues/1632 // we don't use the nio http client in our S3 related code, @@ -24,25 +24,25 @@ dependencies { // their explicit decision to run it. exclude(group = "software.amazon.awssdk", module = "netty-nio-client") } - implementation(libs.awssdk.sts) { + implementation(ncjLibs.awssdk.sts) { // see above comment about awssdk and netty-nio-client exclude(group = "software.amazon.awssdk", module = "netty-nio-client") } - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-radial")) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/cdm/zarr/build.gradle.kts b/cdm/zarr/build.gradle.kts index a50a57706a..68e77bdf32 100644 --- a/cdm/zarr/build.gradle.kts +++ b/cdm/zarr/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Reading Zarr files with the NetCDF-java library." @@ -14,11 +14,11 @@ dependencies { api(project(":cdm-core")) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jackson.core) - implementation(libs.jackson.databind) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jackson.core) + implementation(ncjLibs.jackson.databind) + implementation(ncjLibs.slf4j.api) runtimeOnly(project(":libblosc2-jna")) @@ -27,7 +27,7 @@ dependencies { testImplementation(project(":cdm-s3")) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.awssdk.s3) { + testImplementation(ncjLibs.awssdk.s3) { // exclude netty nio client due to open CVEs. See // https://github.com/aws/aws-sdk-java-v2/issues/1632 // we don't use the nio http client in our S3 related code, @@ -36,12 +36,12 @@ dependencies { // their explicit decision to run it. exclude(group = "software.amazon.awssdk", module = "netty-nio-client") } - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) testRuntimeOnly(project(":libblosc2-native")) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/code-coverage-report/build.gradle.kts b/code-coverage-report/build.gradle.kts index 01a7e674c6..4ada014c1d 100644 --- a/code-coverage-report/build.gradle.kts +++ b/code-coverage-report/build.gradle.kts @@ -9,9 +9,9 @@ description = extra["project.title"] = "Project-wide code coverage report" plugins { - id("java-base-conventions") - alias(libs.plugins.shadow).apply(false) - alias(libs.plugins.cyclonedx.bom).apply(false) + id("ncj-java-base-conventions") + alias(ncjLibs.plugins.shadow).apply(false) + alias(ncjLibs.plugins.cyclonedx.bom).apply(false) id("jacoco-report-aggregation").apply(true) } diff --git a/dap4/build.gradle.kts b/dap4/build.gradle.kts index 490af48335..bdb50cc948 100644 --- a/dap4/build.gradle.kts +++ b/dap4/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Data Access Protocol (DAP) version 4.0 client." @@ -15,17 +15,17 @@ dependencies { implementation(project(":cdm-core")) implementation(project(":httpservices")) - implementation(libs.httpcomponents.httpclient) - implementation(libs.slf4j.api) + implementation(ncjLibs.httpcomponents.httpclient) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/docs/build.gradle.kts b/docs/build.gradle.kts index f1d9f1e2e5..0512d7e6ea 100644 --- a/docs/build.gradle.kts +++ b/docs/build.gradle.kts @@ -6,8 +6,8 @@ import java.io.OutputStream plugins { - id("java-base-conventions") - alias(libs.plugins.spotless) + id("ncj-java-base-conventions") + alias(ncjLibs.plugins.spotless) } description = "Generate the project documentation, including the various flavors of javadocs." @@ -26,15 +26,15 @@ dependencies { testImplementation(project(":opendap")) testImplementation(project(":udunits")) - testImplementation(libs.google.truth) - testImplementation(libs.jdom2) - testImplementation(libs.slf4j.api) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.jdom2) + testImplementation(ncjLibs.slf4j.api) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } // This is the public interface. Future changes to the API will attempt to remain backwards @@ -99,7 +99,8 @@ val buildJavadocAll = title = "NetCDF-Java All API v${version}" destinationDir = layout.buildDirectory.dir("javadocAll").get().asFile - // list of public artifacts managed by build-logic/src/main/kotlin/base-conventions.gradle.kts + // list of public artifacts managed by + // build-logic-ncj/src/main/kotlin/ncj-base-conventions.gradle.kts val publicArtifacts = project.extra.get("public.artifacts") if (publicArtifacts is List<*>) { publicArtifacts.forEach { @@ -116,7 +117,7 @@ val buildJavadocAll = val catalogs = extensions.getByType() val docTheme = - "unidata-jekyll-docs:${catalogs.named("libs").findVersion("unidata-doc-theme").get().requiredVersion}" + "unidata-jekyll-docs:${catalogs.named("ncjLibs").findVersion("unidata-doc-theme").get().requiredVersion}" val isGitHub = System.getenv("GITHUB_ACTIONS") != null val imageBaseUrl = if (isGitHub) "ghcr.io/unidata" else "docker.io/unidata" diff --git a/gradle/libs.versions.toml b/gradle/ncj.libs.versions.toml similarity index 98% rename from gradle/libs.versions.toml rename to gradle/ncj.libs.versions.toml index 52f5ff6297..5aeff427d1 100644 --- a/gradle/libs.versions.toml +++ b/gradle/ncj.libs.versions.toml @@ -117,4 +117,4 @@ execfork = { id = "com.github.psxpaul.execfork", version = "0.2.2"} javacc = { id = "org.javacc.javacc", version = "4.0.1" } protobuf = { id = "com.google.protobuf", version = "0.9.5" } shadow = { id = "com.gradleup.shadow", version = "9.3.1" } -spotless = { id = "com.diffplug.spotless", version = "8.0.0" } +spotless = { id = "com.diffplug.spotless", version = "8.2.1" } diff --git a/grib/build.gradle.kts b/grib/build.gradle.kts index 8a3dff0936..4e381669e3 100644 --- a/grib/build.gradle.kts +++ b/grib/build.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("java-library-conventions") - id("protobuf-conventions") + id("ncj-java-library-conventions") + id("ncj-protobuf-conventions") } description = "Decoder for the GRIB 1 and 2 formats." @@ -19,29 +19,29 @@ dependencies { implementation(project(":libaec-jna")) - implementation(libs.beust.jcommander) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jdom2) - implementation(libs.jj2000) - implementation(libs.jna) - implementation(libs.protobuf) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.beust.jcommander) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.jj2000) + implementation(ncjLibs.jna) + implementation(ncjLibs.protobuf) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) testImplementation(project(":udunits")) - testImplementation(libs.google.truth) - testImplementation(libs.jsoup) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.jsoup) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) testRuntimeOnly(project(":libaec-native")) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/httpservices/build.gradle.kts b/httpservices/build.gradle.kts index e60cfe58e6..22f0293a98 100644 --- a/httpservices/build.gradle.kts +++ b/httpservices/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "HTTP Client Wrappers for the NetCDF-Java library." @@ -12,23 +12,23 @@ extra["project.title"] = "HttpClient Wrappers" dependencies { implementation(platform(project(":netcdf-java-platform"))) - api(libs.guava) - api(libs.httpcomponents.httpclient) + api(ncjLibs.guava) + api(ncjLibs.httpcomponents.httpclient) - implementation(libs.findbugs.jsr305) - implementation(libs.httpcomponents.httpmime) - implementation(libs.re2j) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.httpcomponents.httpmime) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/legacy/build.gradle.kts b/legacy/build.gradle.kts index 85df97f436..b05b76ab07 100644 --- a/legacy/build.gradle.kts +++ b/legacy/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Package that generates a jar file of legacy classes for backwards compatibility" @@ -18,19 +18,19 @@ dependencies { implementation(project(":opendap")) implementation(project(":udunits")) - implementation(libs.amazonaws.s3v1) // For CrawlableDatasetAmazonS3. - implementation(libs.guava) - implementation(libs.jdom2) - implementation(libs.findbugs.jsr305) - implementation(libs.slf4j.api) + implementation(ncjLibs.amazonaws.s3v1) // For CrawlableDatasetAmazonS3. + implementation(ncjLibs.guava) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/native-compression/libaec-jna/build.gradle.kts b/native-compression/libaec-jna/build.gradle.kts index 59035306f1..99b745bc6a 100644 --- a/native-compression/libaec-jna/build.gradle.kts +++ b/native-compression/libaec-jna/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Java bindings for decoding libaec compression using JNA." @@ -12,21 +12,21 @@ extra["project.title"] = "libaec compression decoder using JNA" dependencies { implementation(platform(project(":netcdf-java-platform"))) - api(libs.jna) + api(ncjLibs.jna) - implementation(libs.slf4j.api) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) testRuntimeOnly(project(":libaec-native")) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/native-compression/libaec-native/build.gradle.kts b/native-compression/libaec-native/build.gradle.kts index 097c1bfc1e..24d07f3a83 100644 --- a/native-compression/libaec-native/build.gradle.kts +++ b/native-compression/libaec-native/build.gradle.kts @@ -8,8 +8,8 @@ import java.security.DigestInputStream import java.security.MessageDigest plugins { - id("java-base-conventions") - id("artifact-publishing-conventions") + id("ncj-java-base-conventions") + id("ncj-artifact-publishing-conventions") } group = "edu.ucar.unidata" diff --git a/native-compression/libblosc2-jna/build.gradle.kts b/native-compression/libblosc2-jna/build.gradle.kts index d2e0f47618..830afaa898 100644 --- a/native-compression/libblosc2-jna/build.gradle.kts +++ b/native-compression/libblosc2-jna/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Java bindings for decoding C-Blosc2 compression using JNA." @@ -12,23 +12,23 @@ extra["project.title"] = "C-Blosc2 compression decoder using JNA" dependencies { implementation(platform(project(":netcdf-java-platform"))) - api(libs.jna) + api(ncjLibs.jna) implementation(project(":cdm-core")) - implementation(libs.slf4j.api) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) testRuntimeOnly(project(":libblosc2-native")) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/native-compression/libblosc2-native/build.gradle.kts b/native-compression/libblosc2-native/build.gradle.kts index 8fb65b122b..149c32827e 100644 --- a/native-compression/libblosc2-native/build.gradle.kts +++ b/native-compression/libblosc2-native/build.gradle.kts @@ -8,8 +8,8 @@ import java.security.DigestInputStream import java.security.MessageDigest plugins { - id("java-base-conventions") - id("artifact-publishing-conventions") + id("ncj-java-base-conventions") + id("ncj-artifact-publishing-conventions") } group = "edu.ucar.unidata" diff --git a/netcdf-java-bom/build.gradle.kts b/netcdf-java-bom/build.gradle.kts index 9482fc3540..365e57ea1d 100644 --- a/netcdf-java-bom/build.gradle.kts +++ b/netcdf-java-bom/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("platform-conventions") } +plugins { id("ncj-platform-conventions") } description = "BOM containing the public artifacts that comprise the netCDF-Java Library." @@ -11,7 +11,8 @@ extra["project.title"] = "netCDF-Java BOM" dependencies { constraints { - // list of public artifacts managed by build-logic/src/main/kotlin/base-conventions.gradle.kts + // list of public artifacts managed by + // build-logic-ncj/src/main/kotlin/ncj-base-conventions.gradle.kts val publicArtifacts = project.extra.get("public.artifacts") if (publicArtifacts is List<*>) { publicArtifacts.forEach { api(project(it.toString())) } diff --git a/netcdf-java-platform/build.gradle.kts b/netcdf-java-platform/build.gradle.kts index c7852f460a..460f00d085 100644 --- a/netcdf-java-platform/build.gradle.kts +++ b/netcdf-java-platform/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("platform-conventions") } +plugins { id("ncj-platform-conventions") } description = "BOM containing the public artifacts, and their third-party dependencies, that comprise the netCDF-Java Library." @@ -16,33 +16,33 @@ javaPlatform.allowDependencies() dependencies { api(platform(project(":netcdf-java-bom"))) // covers libs.awssdk.apacheClient, libs.awssdk.s3, and libs.awssdk.sts - api(platform(libs.awssdk.bom)) + api(platform(ncjLibs.awssdk.bom)) // covers libs.jackson.core, libs.jackson.databind - api(platform(libs.jackson.bom)) + api(platform(ncjLibs.jackson.bom)) constraints { - api(libs.amazonaws.s3v1) // legacy subproject - api(libs.beust.jcommander) - api(libs.commons.math3) - api(libs.findbugs.jsr305) - api(libs.grpc.protobuf) - api(libs.grpc.stub) - api(libs.guava) - api(libs.httpcomponents.httpclient) - api(libs.httpcomponents.httpmime) - api(libs.jdom2) - api(libs.jj2000) - api(libs.jna) - api(libs.jodaTime) - api(libs.protobuf) - api(libs.re2j) - api(libs.slf4j.api) - api(libs.sensorweb.xmlGmlV321) - api(libs.sensorweb.xmlOmV20) - api(libs.sensorweb.xmlSamplingV20) - api(libs.sensorweb.xmlSweCommonV20) - api(libs.sensorweb.xmlWaterMLV20) - api(libs.ssec.visad) - api(libs.ssec.visadMcidasSlimUcarNs) + api(ncjLibs.amazonaws.s3v1) // legacy subproject + api(ncjLibs.beust.jcommander) + api(ncjLibs.commons.math3) + api(ncjLibs.findbugs.jsr305) + api(ncjLibs.grpc.protobuf) + api(ncjLibs.grpc.stub) + api(ncjLibs.guava) + api(ncjLibs.httpcomponents.httpclient) + api(ncjLibs.httpcomponents.httpmime) + api(ncjLibs.jdom2) + api(ncjLibs.jj2000) + api(ncjLibs.jna) + api(ncjLibs.jodaTime) + api(ncjLibs.protobuf) + api(ncjLibs.re2j) + api(ncjLibs.slf4j.api) + api(ncjLibs.sensorweb.xmlGmlV321) + api(ncjLibs.sensorweb.xmlOmV20) + api(ncjLibs.sensorweb.xmlSamplingV20) + api(ncjLibs.sensorweb.xmlSweCommonV20) + api(ncjLibs.sensorweb.xmlWaterMLV20) + api(ncjLibs.ssec.visad) + api(ncjLibs.ssec.visadMcidasSlimUcarNs) } } diff --git a/netcdf-java-testing-platform/build.gradle.kts b/netcdf-java-testing-platform/build.gradle.kts index 661680c780..fbbb5852b3 100644 --- a/netcdf-java-testing-platform/build.gradle.kts +++ b/netcdf-java-testing-platform/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("platform-conventions") } +plugins { id("ncj-platform-conventions") } description = "Platform containing the test-only dependencies of the public artifacts that comprise the netCDF-Java Library. Published for use by the THREDDS Data Server." @@ -15,19 +15,19 @@ javaPlatform.allowDependencies() dependencies { // covers libs.junit5.vintageEngine, libs.junit5.platformLauncher - api(platform(libs.junit5.bom)) + api(platform(ncjLibs.junit5.bom)) constraints { api((project(":cdm-test-utils"))) - api(libs.commons.compress) - api(libs.commons.io) - api(libs.google.truth) - api(libs.grpc.testing) - api(libs.jsoup) - api(libs.junit4) - api(libs.logback.classic) - api(libs.mockito.core) - api(libs.pragmatists.junitparams) + api(ncjLibs.commons.compress) + api(ncjLibs.commons.io) + api(ncjLibs.google.truth) + api(ncjLibs.grpc.testing) + api(ncjLibs.jsoup) + api(ncjLibs.junit4) + api(ncjLibs.logback.classic) + api(ncjLibs.mockito.core) + api(ncjLibs.pragmatists.junitparams) } } diff --git a/netcdf4/build.gradle.kts b/netcdf4/build.gradle.kts index 3b3f6b94e8..2047e2006c 100644 --- a/netcdf4/build.gradle.kts +++ b/netcdf4/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "An IOSP for NetCDF-4 that loads the C library to read and write files." @@ -39,23 +39,23 @@ dependencies { implementation(project(":cdm-core")) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jna) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jna) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) - testImplementation(libs.jdom2) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.jdom2) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } val testVersions = project.extra["project.testLtsVersions"] diff --git a/opendap/build.gradle.kts b/opendap/build.gradle.kts index 4fac5b7934..25fd7af7f1 100644 --- a/opendap/build.gradle.kts +++ b/opendap/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Open-source Project for a Network Data Access Protocol, modified " + @@ -24,21 +24,21 @@ dependencies { api(project(":cdm-core")) api(project(":httpservices")) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jdom2) - implementation(libs.slf4j.api) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) - testImplementation(libs.pragmatists.junitparams) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.pragmatists.junitparams) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/opendap/src/test/java/opendap/test/TestDapParser.java b/opendap/src/test/java/opendap/test/TestDapParser.java index 9ff5305466..43cfa51d61 100644 --- a/opendap/src/test/java/opendap/test/TestDapParser.java +++ b/opendap/src/test/java/opendap/test/TestDapParser.java @@ -12,6 +12,7 @@ import opendap.dap.DDS; import opendap.dap.parsers.ParseException; import org.junit.Assert; +import org.junit.Ignore; import org.junit.Test; import org.junit.experimental.categories.Category; import org.junit.runner.RunWith; @@ -106,6 +107,7 @@ public void testDapParser(String extension, String baseextension) throws Excepti } @Test + @Ignore("dods.mbari.org has been extremely unstable for the past several months") @Parameters(method = "extensionValues") @Category(NeedsExternalResource.class) public void testDapParserSpecial(String extension, String baseextension) throws Exception { diff --git a/settings.gradle.kts b/settings.gradle.kts index 23c6b2469c..73a4036620 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -25,9 +25,10 @@ dependencyResolutionManagement { } } } + versionCatalogs { create("ncjLibs") { from(files("gradle/ncj.libs.versions.toml")) } } } -includeBuild("build-logic") +includeBuild("build-logic-ncj") rootProject.name = "netcdf-java" diff --git a/uber-jars/build.gradle.kts b/uber-jars/build.gradle.kts index cff780abde..6a96f1d2eb 100644 --- a/uber-jars/build.gradle.kts +++ b/uber-jars/build.gradle.kts @@ -8,9 +8,9 @@ import java.security.MessageDigest import org.cyclonedx.gradle.CyclonedxDirectTask plugins { - id("java-base-conventions") - alias(libs.plugins.shadow).apply(false) - alias(libs.plugins.cyclonedx.bom).apply(false) + id("ncj-java-base-conventions") + alias(ncjLibs.plugins.shadow).apply(false) + alias(ncjLibs.plugins.cyclonedx.bom).apply(false) } description = diff --git a/udunits/build.gradle.kts b/udunits/build.gradle.kts index c2a15e8205..8010dfb9fd 100644 --- a/udunits/build.gradle.kts +++ b/udunits/build.gradle.kts @@ -4,8 +4,8 @@ */ plugins { - id("java-library-conventions") - alias(libs.plugins.javacc) + id("ncj-java-library-conventions") + alias(ncjLibs.plugins.javacc) } description = @@ -21,15 +21,15 @@ extra["project.url"] = "https://www.unidata.ucar.edu/software/udunits/" dependencies { implementation(platform(project(":netcdf-java-platform"))) - implementation(libs.findbugs.jsr305) + implementation(ncjLibs.findbugs.jsr305) testImplementation(platform(project(":netcdf-java-testing-platform"))) - testImplementation(libs.slf4j.api) + testImplementation(ncjLibs.slf4j.api) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } diff --git a/uibase/build.gradle.kts b/uibase/build.gradle.kts index 1c789653de..9900d141ef 100644 --- a/uibase/build.gradle.kts +++ b/uibase/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "UI elements that are independent of the CDM." @@ -12,31 +12,31 @@ project.extra["project.title"] = "UI base library" dependencies { implementation(platform(project(":netcdf-java-platform"))) - implementation(libs.bounce) - implementation(libs.findbugs.jsr305) - implementation(libs.guava) - implementation(libs.jfree.jcommon) - implementation(libs.jfree.jfreechart) - implementation(libs.jgoodies.forms) - implementation(libs.jdom2) - implementation(libs.lgooddatepicker) - implementation(libs.protobuf) - implementation(libs.slf4j.api) + implementation(ncjLibs.bounce) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.guava) + implementation(ncjLibs.jfree.jcommon) + implementation(ncjLibs.jfree.jfreechart) + implementation(ncjLibs.jgoodies.forms) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.lgooddatepicker) + implementation(ncjLibs.protobuf) + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-core")) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.commons.io) - testImplementation(libs.google.truth) - testImplementation(libs.mockito.core) + testImplementation(ncjLibs.commons.io) + testImplementation(ncjLibs.google.truth) + testImplementation(ncjLibs.mockito.core) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } tasks.test { diff --git a/uicdm/build.gradle.kts b/uicdm/build.gradle.kts index a2a7efa435..5a33c1fc34 100644 --- a/uicdm/build.gradle.kts +++ b/uicdm/build.gradle.kts @@ -7,7 +7,7 @@ import java.text.SimpleDateFormat import java.util.Date plugins { - id("java-library-conventions") + id("ncj-java-library-conventions") application } @@ -30,16 +30,16 @@ dependencies { implementation(project(":uibase")) implementation(project(":waterml")) - implementation(libs.bounce) - implementation(libs.jdom2) - implementation(libs.jgoodies.forms) - implementation(libs.jfree.jfreechart) - implementation(libs.findbugs.jsr305) - implementation(libs.lgooddatepicker) - implementation(libs.protobuf) - implementation(libs.re2j) - implementation(libs.slf4j.api) - implementation(libs.xmlbeans) + implementation(ncjLibs.bounce) + implementation(ncjLibs.jdom2) + implementation(ncjLibs.jgoodies.forms) + implementation(ncjLibs.jfree.jfreechart) + implementation(ncjLibs.findbugs.jsr305) + implementation(ncjLibs.lgooddatepicker) + implementation(ncjLibs.protobuf) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) + implementation(ncjLibs.xmlbeans) runtimeOnly(project(":cdm-mcidas")) runtimeOnly(project(":cdm-radial")) @@ -49,16 +49,16 @@ dependencies { runtimeOnly(project(":libaec-native")) runtimeOnly(project(":libblosc2-native")) - runtimeOnly(libs.logback.classic) + runtimeOnly(ncjLibs.logback.classic) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } application { mainClass = "ucar.nc2.ui.ToolsUI" } diff --git a/visad/mcidas/build.gradle.kts b/visad/mcidas/build.gradle.kts index 2311296f85..980eaf7a49 100644 --- a/visad/mcidas/build.gradle.kts +++ b/visad/mcidas/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Mcidas and Gempak IOSPs." @@ -17,19 +17,19 @@ dependencies { implementation(project(":grib")) implementation(project(":udunits")) - implementation(libs.guava) - implementation(libs.re2j) - implementation(libs.slf4j.api) - implementation(libs.ssec.visadMcidasSlimUcarNs) + implementation(ncjLibs.guava) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) + implementation(ncjLibs.ssec.visadMcidasSlimUcarNs) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testImplementation(libs.google.truth) + testImplementation(ncjLibs.google.truth) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/visad/vis5d/build.gradle.kts b/visad/vis5d/build.gradle.kts index 2cb7a901bd..e1cc69c999 100644 --- a/visad/vis5d/build.gradle.kts +++ b/visad/vis5d/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Vis5D IOSP." @@ -16,17 +16,17 @@ dependencies { implementation(project(":cdm-mcidas")) - implementation(libs.guava) - implementation(libs.re2j) - implementation(libs.slf4j.api) - implementation(libs.ssec.visad) + implementation(ncjLibs.guava) + implementation(ncjLibs.re2j) + implementation(ncjLibs.slf4j.api) + implementation(ncjLibs.ssec.visad) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) } diff --git a/waterml/build.gradle.kts b/waterml/build.gradle.kts index ea67a8f7c5..f0abda189b 100644 --- a/waterml/build.gradle.kts +++ b/waterml/build.gradle.kts @@ -3,7 +3,7 @@ * See LICENSE for license information. */ -plugins { id("java-library-conventions") } +plugins { id("ncj-java-library-conventions") } description = "Converts CDM DSGs to WaterML 2.0 timeseries and vice-versa." @@ -14,23 +14,23 @@ dependencies { api(project(":cdm-core")) - implementation(libs.guava) - implementation(libs.sensorweb.xmlGmlV321) { exclude(group = "stax", module = "stax-api") } - implementation(libs.sensorweb.xmlOmV20) { exclude(group = "stax", module = "stax-api") } - implementation(libs.sensorweb.xmlSamplingV20) { exclude(group = "stax", module = "stax-api") } - implementation(libs.sensorweb.xmlSweCommonV20) { exclude(group = "stax", module = "stax-api") } - implementation(libs.sensorweb.xmlWaterMLV20) { exclude(group = "stax", module = "stax-api") } - implementation(libs.slf4j.api) + implementation(ncjLibs.guava) + implementation(ncjLibs.sensorweb.xmlGmlV321) { exclude(group = "stax", module = "stax-api") } + implementation(ncjLibs.sensorweb.xmlOmV20) { exclude(group = "stax", module = "stax-api") } + implementation(ncjLibs.sensorweb.xmlSamplingV20) { exclude(group = "stax", module = "stax-api") } + implementation(ncjLibs.sensorweb.xmlSweCommonV20) { exclude(group = "stax", module = "stax-api") } + implementation(ncjLibs.sensorweb.xmlWaterMLV20) { exclude(group = "stax", module = "stax-api") } + implementation(ncjLibs.slf4j.api) testImplementation(platform(project(":netcdf-java-testing-platform"))) testImplementation(project(":cdm-test-utils")) - testCompileOnly(libs.junit4) + testCompileOnly(ncjLibs.junit4) - testRuntimeOnly(libs.junit5.platformLauncher) - testRuntimeOnly(libs.junit5.vintageEngine) - testRuntimeOnly(libs.logback.classic) + testRuntimeOnly(ncjLibs.junit5.platformLauncher) + testRuntimeOnly(ncjLibs.junit5.vintageEngine) + testRuntimeOnly(ncjLibs.logback.classic) } spotless {