Skip to content

Commit b5bfe0d

Browse files
authored
Merge pull request #135 from JohnLCaron/core-uber
Build core-uber.jar.
2 parents 4cc6fb0 + 008e1cf commit b5bfe0d

File tree

7 files changed

+49
-8
lines changed

7 files changed

+49
-8
lines changed

clibs/src/test/kotlin/com/sunya/netchdf/NetchdfClibExtra.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,7 @@ class NetchdfClibExtra {
4646
compareCdlWithClib(testData + "netchdf/npp/VCBHO_npp_d20030125_t084955_e085121_b00015_c20071213022754_den_OPS_SEG.h5")
4747
}
4848

49-
// this one we could probably fix
5049
@Test
51-
// @Disabled
5250
fun unsolved2() {
5351
val filename = testData + "netchdf/tomas/S3A_OL_CCDB_CHAR_AllFiles.20101019121929_1.nc4"
5452
// showMyHeader(filename)
@@ -80,7 +78,7 @@ class NetchdfClibExtra {
8078
compareCdlWithClib(filename)
8179
}
8280

83-
// @ParameterizedTest
81+
@ParameterizedTest
8482
@MethodSource("params")
8583
fun readNetchdfData(filename: String) {
8684
readNetchdfData(filename, null)

core/build.gradle.kts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,18 @@ kotlin {
2929
jvmToolchain(21)
3030
}
3131

32+
tasks.register<Jar>("uberJar") {
33+
archiveClassifier = "uber"
34+
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
35+
36+
//manifest {
37+
// attributes("Main-Class" to "com.sunya.netchdf.ncdump")
38+
//}
39+
40+
from(sourceSets.main.get().output)
41+
dependsOn(configurations.runtimeClasspath)
42+
from({
43+
configurations.runtimeClasspath.get().filter { it.name.endsWith("jar") }.map { zipTree(it) }
44+
})
45+
}
46+

core/src/main/kotlin/com/sunya/netchdf/NetchdfFile.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,4 @@ fun openNetchdfFile(filename : String, strict : Boolean = false) : Netchdf? {
2121
else -> null // throw RuntimeException(" unsupported NetcdfFileFormat $format")
2222
}
2323
}
24-
}
24+
}

core/src/test/kotlin/com/sunya/netchdf/NetchdfExtra.kt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,13 @@
11
package com.sunya.netchdf
22

3-
import com.sunya.cdm.api.*
43
import com.sunya.cdm.util.Stats
54
import com.sunya.testdata.NetchdfExtraFiles
6-
import org.junit.jupiter.api.Disabled
75
import org.junit.jupiter.api.Test
86
import org.junit.jupiter.params.ParameterizedTest
97
import org.junit.jupiter.params.provider.Arguments
108
import org.junit.jupiter.params.provider.MethodSource
119
import com.sunya.testdata.testData
12-
import com.sunya.testdata.testFilesIn
1310
import org.junit.jupiter.api.AfterAll
14-
import java.util.*
1511
import java.util.stream.Stream
1612

1713
// Compare header using cdl(!strict) with Netchdf and NetcdfClibFile

gradle/libs.versions.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ netchdf = "0.2.0"
33

44
# main dependency versions
55
kotlin = "2.1.10"
6+
kotlinx-cli = "0.3.6"
67
kotlinx-coroutines = "1.8.1"
78
oshai-version = "7.0.0"
89

@@ -20,6 +21,7 @@ kotest = "5.9.1"
2021

2122
# Kotlinx libraries
2223
kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" }
24+
kotlinx-cli = { module = "org.jetbrains.kotlinx:kotlinx-cli", version.ref = "kotlinx-cli" }
2325

2426
# Logging
2527
oshai-logging = { module = "io.github.oshai:kotlin-logging", version.ref = "oshai-version" }

testdata/build.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,12 @@ plugins {
33
}
44

55
dependencies {
6+
api(project(":core"))
7+
68
implementation(libs.oshai.logging)
79
implementation(kotlin("test"))
810
implementation(libs.bundles.jvmtest)
11+
implementation(libs.kotlinx.cli)
912

1013
// runTest() for running suspend functions in tests
1114
implementation(libs.kotlinx.coroutines.test)
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package com.sunya.netchdf.cli
2+
3+
import com.sunya.netchdf.openNetchdfFile
4+
import kotlinx.cli.*
5+
6+
object ncdump {
7+
@JvmStatic
8+
fun main(args: Array<String>) {
9+
val parser = ArgParser("ncdump")
10+
val filename by parser.option(
11+
ArgType.String,
12+
shortName = "in",
13+
description = "Directory containing input election record"
14+
).required()
15+
16+
parser.parse(args)
17+
18+
openNetchdfFile(filename).use { myfile ->
19+
if (myfile == null) {
20+
println("*** not a netchdf file = $filename")
21+
return
22+
}
23+
println("${myfile.type()} $filename ")
24+
println(myfile.cdl())
25+
}
26+
}
27+
}

0 commit comments

Comments
 (0)