Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency org.jetbrains.kotlin.multiplatform to v1.8.22 #252

Merged
merged 4 commits into from
Jun 26, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions collections/api/collections.api
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ public final class com/juul/tuulbox/collections/SynchronizedMap : java/util/Map,
public fun get (Ljava/lang/Object;)Ljava/lang/Object;
public fun getEntries ()Ljava/util/Set;
public fun getKeys ()Ljava/util/Set;
public final fun getLock ()Ljava/util/concurrent/locks/ReentrantLock;
public fun getSize ()I
public fun getValues ()Ljava/util/Collection;
public fun isEmpty ()Z
Expand Down
8 changes: 4 additions & 4 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ android-compile = "31"
coroutines = "1.7.1"
jacoco = "0.8.7"
jvm-toolchain = "8"
kotlin = "1.8.10"
kotlin = "1.8.22"
ktor = "2.3.1"

[libraries]
Expand All @@ -19,8 +19,8 @@ ktor-mock = { module = "io.ktor:ktor-client-mock", version.ref = "ktor" }
[plugins]
android-library = { id = "com.android.library", version = "8.0.2" }
android-publish = { id = "com.vanniktech.maven.publish", version = "0.25.2" }
atomicfu = { id = "kotlinx-atomicfu", version = "0.20.2" }
binary-compatibility-validator = { id = "binary-compatibility-validator", version = "0.8.0" }
atomicfu = { id = "kotlinx-atomicfu", version = "0.21.0" }
binary-compatibility-validator = { id = "binary-compatibility-validator", version = "0.13.0" }
dokka = { id = "org.jetbrains.dokka", version = "1.8.20" }
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
kotlinter = { id = "org.jmailen.kotlinter", version = "3.14.0" }
kotlinter = { id = "org.jmailen.kotlinter", version = "3.15.0" }
5 changes: 4 additions & 1 deletion logging-ktor-client/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ kotlin {
iosSimulatorArm64()

sourceSets {
all {
languageSettings.optIn("com.juul.tuulbox.logging.TuulboxInternal")
}

val commonMain by getting {
dependencies {
api(projects.logging)
Expand All @@ -33,7 +37,6 @@ kotlin {

val commonTest by getting {
dependencies {
implementation(projects.loggingTest)
implementation(projects.test)
implementation(kotlin("test-common"))
implementation(kotlin("test-annotations-common"))
Expand Down
37 changes: 0 additions & 37 deletions logging-test/api/logging-test.api

This file was deleted.

27 changes: 0 additions & 27 deletions logging-test/build.gradle.kts

This file was deleted.

40 changes: 40 additions & 0 deletions logging/api/logging.api
Original file line number Diff line number Diff line change
@@ -1,3 +1,40 @@
public final class com/juul/tuulbox/logging/Call {
public fun <init> (Lcom/juul/tuulbox/logging/LogLevel;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Lcom/juul/tuulbox/logging/ReadMetadata;)V
public final fun component1 ()Lcom/juul/tuulbox/logging/LogLevel;
public final fun component2 ()Ljava/lang/String;
public final fun component3 ()Ljava/lang/String;
public final fun component4 ()Ljava/lang/Throwable;
public final fun component5 ()Lcom/juul/tuulbox/logging/ReadMetadata;
public final fun copy (Lcom/juul/tuulbox/logging/LogLevel;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Lcom/juul/tuulbox/logging/ReadMetadata;)Lcom/juul/tuulbox/logging/Call;
public static synthetic fun copy$default (Lcom/juul/tuulbox/logging/Call;Lcom/juul/tuulbox/logging/LogLevel;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Lcom/juul/tuulbox/logging/ReadMetadata;ILjava/lang/Object;)Lcom/juul/tuulbox/logging/Call;
public fun equals (Ljava/lang/Object;)Z
public final fun getLevel ()Lcom/juul/tuulbox/logging/LogLevel;
public final fun getMessage ()Ljava/lang/String;
public final fun getMetadata ()Lcom/juul/tuulbox/logging/ReadMetadata;
public final fun getTag ()Ljava/lang/String;
public final fun getThrowable ()Ljava/lang/Throwable;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public class com/juul/tuulbox/logging/CallListLogger : com/juul/tuulbox/logging/Logger {
public fun <init> ()V
public fun assert (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
public fun debug (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
public fun error (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
public final fun getAllCalls ()Ljava/util/List;
public final fun getAssertCalls ()Ljava/util/List;
public final fun getDebugCalls ()Ljava/util/List;
public final fun getErrorCalls ()Ljava/util/List;
public final fun getInfoCalls ()Ljava/util/List;
public fun getMinimumLogLevel ()Lcom/juul/tuulbox/logging/LogLevel;
public final fun getVerboseCalls ()Ljava/util/List;
public final fun getWarnCalls ()Ljava/util/List;
public fun info (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
public fun verbose (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
public fun warn (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
}

public final class com/juul/tuulbox/logging/ConsoleLogger : com/juul/tuulbox/logging/Logger {
public static final field INSTANCE Lcom/juul/tuulbox/logging/ConsoleLogger;
public fun assert (Ljava/lang/String;Ljava/lang/String;Lcom/juul/tuulbox/logging/ReadMetadata;Ljava/lang/Throwable;)V
Expand Down Expand Up @@ -111,6 +148,9 @@ public abstract interface class com/juul/tuulbox/logging/TagGenerator {
public abstract fun getTag ()Ljava/lang/String;
}

public abstract interface annotation class com/juul/tuulbox/logging/TuulboxInternal : java/lang/annotation/Annotation {
}

public abstract interface class com/juul/tuulbox/logging/WriteMetadata {
public abstract fun set (Lcom/juul/tuulbox/logging/Key;Ljava/lang/Object;)V
}
Expand Down
5 changes: 4 additions & 1 deletion logging/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,14 @@ kotlin {
iosSimulatorArm64()

sourceSets {
all {
languageSettings.optIn("com.juul.tuulbox.logging.TuulboxInternal")
}

val commonMain by getting

val commonTest by getting {
dependencies {
implementation(projects.loggingTest)
implementation(kotlin("test-common"))
implementation(kotlin("test-annotations-common"))
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.juul.tuulbox.logging

@TuulboxInternal
public data class Call(
val level: LogLevel,
val tag: String,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package com.juul.tuulbox.logging
import kotlinx.atomicfu.atomic
import kotlinx.atomicfu.getAndUpdate

@TuulboxInternal
public open class CallListLogger : Logger {

private val atomicAllCalls = atomic(emptyList<Call>())
Expand Down
13 changes: 13 additions & 0 deletions logging/src/commonMain/kotlin/TuulboxInternal.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.juul.tuulbox.logging

import kotlin.RequiresOptIn.Level.ERROR
import kotlin.annotation.AnnotationRetention.BINARY

/**
* Marks a class as internal to Tuulbox. These APIs are left `public` so they may be used by other
* modules, but should not be used outside (by consumers) of Tuulbox.
*/
@MustBeDocumented
@Retention(value = BINARY)
@RequiresOptIn(level = ERROR)
public annotation class TuulboxInternal
4 changes: 2 additions & 2 deletions logging/src/jsMain/kotlin/StackTraceTagGenerator.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ internal object StackTraceTagGenerator : TagGenerator, HideFromStackTraceTag {
*
* FIXME: This could probably be much more robust, but at least it's not nothing.
*/
private val stackTraceLineMatcher = Regex("""^\s{4}at (\w+)\..*$""")
private val stackTraceLineMatcher = Regex("""^\s{4,}at .*?\$(\w+?)[_.].*$""")

override fun getTag(): String {
// FIXME: This should implement support for [HideFromStackTrace] instead of hard-coding a known depth
val line = Throwable().stackTraceToString().lineSequence()
.drop(3)
.drop(4)
.first()

return when (val match = stackTraceLineMatcher.matchEntire(line)) {
Expand Down
1 change: 0 additions & 1 deletion settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ include(
"logging",
"logging-android",
"logging-ktor-client",
"logging-test",
"functional",
"temporal",
"test",
Expand Down
1 change: 1 addition & 0 deletions temporal/api/android/temporal.api
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
public final class com/juul/tuulbox/temporal/BroadcastTemporalFlowKt {
public static final fun getTemporalEventFilter ()Landroid/content/IntentFilter;
public static final fun temporalFlow (Lkotlin/jvm/functions/Function0;)Lkotlinx/coroutines/flow/Flow;
}

Expand Down