diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml
index 6e0e621..ffce61c 100644
--- a/.github/workflows/gradle.yml
+++ b/.github/workflows/gradle.yml
@@ -8,11 +8,11 @@ jobs:
env:
GRADLE_OPTS: "-Dorg.gradle.jvmargs=-XX:MaxMetaspaceSize=512m"
- SONAR_JDK: "11"
+ SONAR_JDK: "17"
strategy:
matrix:
- java-version: [ 11, 18 ]
+ java-version: [ 11, 17, 20 ]
steps:
- uses: actions/checkout@v3
diff --git a/.gitignore b/.gitignore
index 13a066e..0742f86 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,7 +64,6 @@ dist/
ehthumbs.db
fabric.properties
gen/
-gradle.properties
hs_err_pid*
kobaltBuild
kobaltw*-test
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
index 9a55c2d..f8467b4 100644
--- a/.idea/kotlinc.xml
+++ b/.idea/kotlinc.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 2e83306..fc3b4bf 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,4 +1,3 @@
-
diff --git a/build.gradle.kts b/build.gradle.kts
index 35b3a6f..9679566 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -5,18 +5,18 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import java.net.URL
plugins {
- id("com.github.ben-manes.versions") version "0.47.0"
- id("io.gitlab.arturbosch.detekt") version "1.23.0"
+ id("com.github.ben-manes.versions") version "0.48.0"
+ id("io.gitlab.arturbosch.detekt") version "1.23.1"
id("java")
id("java-library")
id("maven-publish")
id("net.thauvin.erik.gradle.semver") version "1.0.4"
- id("org.jetbrains.dokka") version "1.8.20"
- id("org.jetbrains.kotlinx.kover") version "0.7.2"
- id("org.sonarqube") version "4.2.1.3168"
+ id("org.jetbrains.dokka") version "1.9.0"
+ id("org.jetbrains.kotlinx.kover") version "0.7.3"
+ id("org.sonarqube") version "4.3.1.3277"
id("signing")
- kotlin("jvm") version "1.8.22"
- kotlin("kapt") version "1.8.22"
+ kotlin("jvm") version "1.9.10"
+ kotlin("kapt") version "1.9.10"
}
group = "net.thauvin.erik"
@@ -51,12 +51,13 @@ dependencies {
implementation(platform(kotlin("bom")))
implementation("com.squareup.okhttp3:okhttp:${Versions.OKHTTP}")
+ implementation("com.squareup.okio:okio:3.5.0")
implementation("com.squareup.okhttp3:logging-interceptor:${Versions.OKHTTP}")
implementation("org.json:json:20230618")
testImplementation(kotlin("test"))
testImplementation(kotlin("test-junit"))
- testImplementation("com.willowtreeapps.assertk:assertk-jvm:0.26.1")
+ testImplementation("com.willowtreeapps.assertk:assertk-jvm:0.27.0")
}
kapt {
@@ -93,7 +94,7 @@ sonarqube {
property("sonar.organization", "ethauvin-github")
property("sonar.host.url", "https://sonarcloud.io")
property("sonar.sourceEncoding", "UTF-8")
- property("sonar.coverage.jacoco.xmlReportPaths", "${project.buildDir}/reports/kover/report.xml")
+ property("sonar.coverage.jacoco.xmlReportPaths", "${layout.buildDirectory.get()}/repo rts/kover/report.xml")
}
}
@@ -173,7 +174,7 @@ tasks {
register("deploy") {
description = "Copies all needed files to the $deployDir directory."
group = PublishingPlugin.PUBLISH_TASK_GROUP
- dependsOn(clean, wrapper, build, jar)
+ dependsOn(clean, build, jar)
outputs.dir(deployDir)
inputs.files(copyToDeploy)
mustRunAfter(clean)
@@ -197,7 +198,7 @@ tasks {
register("release") {
description = "Publishes version ${project.version} to local repository."
group = PublishingPlugin.PUBLISH_TASK_GROUP
- dependsOn(wrapper, "deploy", gitTag, publishToMavenLocal)
+ dependsOn("deploy", gitTag, publishToMavenLocal)
}
}
diff --git a/config/detekt/baseline.xml b/config/detekt/baseline.xml
index 9943c13..907d890 100644
--- a/config/detekt/baseline.xml
+++ b/config/detekt/baseline.xml
@@ -4,18 +4,18 @@
ConstructorParameterNaming:CreateConfig.kt$CreateConfig$val group_guid: String
ConstructorParameterNaming:CreateConfig.kt$CreateConfig$val long_url: String
- ConstructorParameterNaming:CreateConfig.kt$CreateConfig.Builder$var group_guid: String = Constants.EMPTY
- ConstructorParameterNaming:CreateConfig.kt$CreateConfig.Builder$var long_url: String = Constants.EMPTY
+ ConstructorParameterNaming:CreateConfig.kt$CreateConfig.Builder$private var group_guid: String = Constants.EMPTY
+ ConstructorParameterNaming:CreateConfig.kt$CreateConfig.Builder$private var long_url: String = Constants.EMPTY
ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig$val client_id: String
ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig$val created_at: String
ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig$val created_by: String
ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig$val custom_bitlinks: Array<String>
ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig$val long_url: String
- ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$var client_id: String = Constants.EMPTY
- ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$var created_at: String = Constants.EMPTY
- ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$var created_by: String = Constants.EMPTY
- ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$var custom_bitlinks: Array<String> = emptyArray()
- ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$var long_url: String = Constants.EMPTY
+ ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$private var client_id: String = Constants.EMPTY
+ ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$private var created_at: String = Constants.EMPTY
+ ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$private var created_by: String = Constants.EMPTY
+ ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$private var custom_bitlinks: Array<String> = emptyArray()
+ ConstructorParameterNaming:UpdateConfig.kt$UpdateConfig.Builder$private var long_url: String = Constants.EMPTY
CyclomaticComplexMethod:Bitlinks.kt$Bitlinks$@Synchronized fun update( bitlink: String, references: Map<String, String> = emptyMap(), archived: Boolean = false, tags: Array<String> = emptyArray(), created_at: String = Constants.EMPTY, title: String = Constants.EMPTY, deeplinks: Array<Map<String, String>> = emptyArray(), created_by: String = Constants.EMPTY, long_url: String = Constants.EMPTY, client_id: String = Constants.EMPTY, custom_bitlinks: Array<String> = emptyArray(), link: String = Constants.EMPTY, id: String = Constants.EMPTY, toJson: Boolean = false ): String
FunctionNaming:CreateConfig.kt$CreateConfig.Builder$fun group_guid(group_guid: String)
FunctionParameterNaming:Bitlinks.kt$Bitlinks$bitlink_id: String
@@ -56,5 +56,7 @@
NestedBlockDepth:Utils.kt$Utils$@JvmStatic @JvmOverloads fun call( accessToken: String, endPoint: String, params: Map<String, Any> = emptyMap(), method: Methods = Methods.POST ): CallResponse
NestedBlockDepth:Utils.kt$Utils$private fun parseResponse(response: Response, endPoint: String): CallResponse
TooManyFunctions:UpdateConfig.kt$UpdateConfig$Builder
+ WildcardImport:BitlyTest.kt$import assertk.assertions.*
+ WildcardImport:BitlyTest.kt$import kotlin.test.*
diff --git a/examples/build.gradle.kts b/examples/build.gradle.kts
index acf843e..efb0dbf 100644
--- a/examples/build.gradle.kts
+++ b/examples/build.gradle.kts
@@ -2,8 +2,8 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("application")
- id("com.github.ben-manes.versions") version "0.47.0"
- kotlin("jvm") version "1.8.20"
+ id("com.github.ben-manes.versions") version "0.48.0"
+ kotlin("jvm") version "1.9.10"
}
// ./gradlew run --args='https://erik.thauvin.net/ https://bit.ly/2PsNMAA'
@@ -18,7 +18,7 @@ repositories {
dependencies {
implementation("net.thauvin.erik:bitly-shorten:0.9.4-SNAPSHOT")
- implementation("org.json:json:20230227")
+ implementation("org.json:json:20230618")
}
application {
diff --git a/examples/gradle/wrapper/gradle-wrapper.jar b/examples/gradle/wrapper/gradle-wrapper.jar
index c1962a7..7f93135 100644
Binary files a/examples/gradle/wrapper/gradle-wrapper.jar and b/examples/gradle/wrapper/gradle-wrapper.jar differ
diff --git a/examples/gradle/wrapper/gradle-wrapper.properties b/examples/gradle/wrapper/gradle-wrapper.properties
index 37aef8d..ac72c34 100644
--- a/examples/gradle/wrapper/gradle-wrapper.properties
+++ b/examples/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip
networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/examples/gradlew b/examples/gradlew
index aeb74cb..0adc8e1 100755
--- a/examples/gradlew
+++ b/examples/gradlew
@@ -83,7 +83,8 @@ done
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
-APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
+# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
+APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -130,10 +131,13 @@ location of your Java installation."
fi
else
JAVACMD=java
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+ if ! command -v java >/dev/null 2>&1
+ then
+ die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
+ fi
fi
# Increase the maximum file descriptors if we can.
diff --git a/gradle.properties b/gradle.properties
new file mode 100644
index 0000000..e69de29
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index c1962a7..7f93135 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 37aef8d..ac72c34 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip
networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/gradlew b/gradlew
index aeb74cb..0adc8e1 100755
--- a/gradlew
+++ b/gradlew
@@ -83,7 +83,8 @@ done
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
-APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
+# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
+APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -130,10 +131,13 @@ location of your Java installation."
fi
else
JAVACMD=java
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+ if ! command -v java >/dev/null 2>&1
+ then
+ die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
+ fi
fi
# Increase the maximum file descriptors if we can.
diff --git a/pom.xml b/pom.xml
index 7745c14..bc98a9a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -40,7 +40,7 @@
org.jetbrains.kotlin
kotlin-bom
- 1.8.22
+ 1.9.10
pom
import
@@ -50,7 +50,7 @@
org.jetbrains.kotlin
kotlin-stdlib-jdk8
- 1.8.22
+ 1.9.10
compile
@@ -59,6 +59,12 @@
4.11.0
runtime
+
+ com.squareup.okio
+ okio-jvm
+ 3.5.0
+ runtime
+
com.squareup.okhttp3
logging-interceptor