Skip to content

Commit a371f6d

Browse files
committed
update kotlin to 1.3.72
fix ios warnings
1 parent 25b869e commit a371f6d

File tree

15 files changed

+80
-79
lines changed

15 files changed

+80
-79
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ The Firebase Kotlin SDK uses Kotlin serialization to read and write custom class
6464
```groovy
6565
plugins {
6666
kotlin("multiplatform") // or kotlin("jvm") or any other kotlin plugin
67-
kotlin("plugin.serialization") version "1.3.70"
67+
kotlin("plugin.serialization") version "1.3.72"
6868
}
6969
```
7070

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import de.undercouch.gradle.tasks.download.Download
22
import org.apache.tools.ant.taskdefs.condition.Os
33

44
plugins {
5-
kotlin("multiplatform") version "1.3.70" apply false
5+
kotlin("multiplatform") version "1.3.72" apply false
66
id("de.undercouch.download").version("3.4.3")
77
id("base")
88
}

firebase-app/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
"dependencies": {
2626
"@gitlive/firebase-common": "0.1.0",
2727
"firebase": "7.14.0",
28-
"kotlin": "1.3.70",
28+
"kotlin": "1.3.72",
2929
"kotlinx-coroutines-core": "1.3.4"
3030
}
3131
}

firebase-auth/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
"dependencies": {
2626
"@gitlive/firebase-app": "0.1.0",
2727
"firebase": "7.14.0",
28-
"kotlin": "1.3.70",
28+
"kotlin": "1.3.72",
2929
"kotlinx-coroutines-core": "1.3.4"
3030
}
3131
}

firebase-auth/src/iosMain/kotlin/dev/gitlive/firebase/auth/auth.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ actual class FirebaseAuth internal constructor(val ios: FIRAuth) {
4545

4646
actual class AuthResult internal constructor(val ios: FIRAuthDataResult) {
4747
actual val user: FirebaseUser?
48-
get() = ios.user?.let { FirebaseUser(it) }
48+
get() = FirebaseUser(ios.user)
4949
}
5050

5151
actual class FirebaseUser internal constructor(val ios: FIRUser) {

firebase-common/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ plugins {
88
id("com.android.library")
99
kotlin("multiplatform")
1010
kotlin("native.cocoapods")
11-
kotlin("plugin.serialization") version "1.3.70"
11+
kotlin("plugin.serialization") version "1.3.72"
1212
}
1313

1414
android {

firebase-common/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"homepage": "https://github.com/GitLiveApp/firebase-kotlin-multiplatform-sdk",
2525
"dependencies": {
2626
"firebase": "7.14.0",
27-
"kotlin": "1.3.70",
27+
"kotlin": "1.3.72",
2828
"kotlinx-coroutines-core": "1.3.4",
2929
"kotlinx-serialization-kotlinx-serialization-runtime": "0.20.0"
3030
}

firebase-common/src/commonMain/kotlin/dev/gitlive/firebase/decoders.kt

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ fun <T> decode(strategy: DeserializationStrategy<T>, value: Any?): T {
2424
return FirebaseDecoder(value).decode(strategy)
2525
}
2626

27-
expect fun FirebaseDecoder.structureDecoder(desc: SerialDescriptor, vararg typeParams: KSerializer<*>): CompositeDecoder
27+
expect fun FirebaseDecoder.structureDecoder(descriptor: SerialDescriptor, vararg typeParams: KSerializer<*>): CompositeDecoder
2828

2929
class FirebaseDecoder(internal val value: Any?) : Decoder {
3030

@@ -34,7 +34,7 @@ class FirebaseDecoder(internal val value: Any?) : Decoder {
3434
override val updateMode: UpdateMode = UpdateMode.BANNED
3535

3636
@Suppress("UNCHECKED_CAST")
37-
override fun beginStructure(desc: SerialDescriptor, vararg typeParams: KSerializer<*>) = structureDecoder(desc, *typeParams)
37+
override fun beginStructure(descriptor: SerialDescriptor, vararg typeParams: KSerializer<*>) = structureDecoder(descriptor, *typeParams)
3838

3939
override fun decodeString() = decodeString(value)
4040

@@ -54,7 +54,7 @@ class FirebaseDecoder(internal val value: Any?) : Decoder {
5454

5555
override fun decodeChar() = decodeChar(value)
5656

57-
override fun decodeEnum(enumDescription: SerialDescriptor) = decodeEnum(value, enumDescription)
57+
override fun decodeEnum(enumDescriptor: SerialDescriptor) = decodeEnum(value, enumDescriptor)
5858

5959
override fun decodeNotNullMark() = decodeNotNullMark(value)
6060

@@ -67,68 +67,68 @@ class FirebaseDecoder(internal val value: Any?) : Decoder {
6767
class FirebaseClassDecoder(
6868
size: Int,
6969
private val containsKey: (name: String) -> Boolean,
70-
get: (desc: SerialDescriptor, index: Int) -> Any?
70+
get: (descriptor: SerialDescriptor, index: Int) -> Any?
7171
) : FirebaseCompositeDecoder(size, get) {
7272
private var index: Int = 0
7373

7474
override fun decodeSequentially() = false
7575

76-
override fun decodeElementIndex(desc: SerialDescriptor): Int =
77-
(index until desc.elementsCount)
78-
.firstOrNull { !desc.isElementOptional(it) || containsKey(desc.getElementName(it)) }
76+
override fun decodeElementIndex(descriptor: SerialDescriptor): Int =
77+
(index until descriptor.elementsCount)
78+
.firstOrNull { !descriptor.isElementOptional(it) || containsKey(descriptor.getElementName(it)) }
7979
?.also { index = it + 1 }
8080
?: READ_DONE
8181
}
8282

8383
open class FirebaseCompositeDecoder constructor(
8484
private val size: Int,
85-
private val get: (desc: SerialDescriptor, index: Int) -> Any?
85+
private val get: (descriptor: SerialDescriptor, index: Int) -> Any?
8686
): CompositeDecoder {
8787

8888
override val context = EmptyModule
8989
override val updateMode = UpdateMode.OVERWRITE
9090

9191
override fun decodeSequentially() = true
9292

93-
override fun decodeElementIndex(desc: SerialDescriptor): Int = throw NotImplementedError()
93+
override fun decodeElementIndex(descriptor: SerialDescriptor): Int = throw NotImplementedError()
9494

95-
override fun decodeCollectionSize(desc: SerialDescriptor) = size
95+
override fun decodeCollectionSize(descriptor: SerialDescriptor) = size
9696

97-
override fun <T> decodeSerializableElement(desc: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T>): T =
98-
deserializer.deserialize(FirebaseDecoder(get(desc, index)))
97+
override fun <T> decodeSerializableElement(descriptor: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T>): T =
98+
deserializer.deserialize(FirebaseDecoder(get(descriptor, index)))
9999

100-
override fun <T : Any> decodeNullableSerializableElement(desc: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T?>): T? =
101-
if(decodeNotNullMark(get(desc, index))) decodeSerializableElement(desc, index, deserializer) else decodeNull(get(desc, index))
100+
override fun <T : Any> decodeNullableSerializableElement(descriptor: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T?>): T? =
101+
if(decodeNotNullMark(get(descriptor, index))) decodeSerializableElement(descriptor, index, deserializer) else decodeNull(get(descriptor, index))
102102

103103
// fun decodeNullableSerializableElement(index: Int): Any? = get(UnitDescriptor, index)?.let { value ->
104104
// value.firebaseSerializer().let { decodeSerializableElement<Any>(it.descriptor, index, it) }
105105
// }
106106

107-
override fun <T> updateSerializableElement(desc: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T>, old: T): T =
108-
deserializer.deserialize(FirebaseDecoder(get(desc, index)))
107+
override fun <T> updateSerializableElement(descriptor: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T>, old: T): T =
108+
deserializer.deserialize(FirebaseDecoder(get(descriptor, index)))
109109

110-
override fun <T : Any> updateNullableSerializableElement(desc: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T?>, old: T?): T? =
111-
if(decodeNotNullMark(get(desc, index))) decodeSerializableElement(desc, index, deserializer) else decodeNull(get(desc, index))
110+
override fun <T : Any> updateNullableSerializableElement(descriptor: SerialDescriptor, index: Int, deserializer: DeserializationStrategy<T?>, old: T?): T? =
111+
if(decodeNotNullMark(get(descriptor, index))) decodeSerializableElement(descriptor, index, deserializer) else decodeNull(get(descriptor, index))
112112

113-
override fun decodeBooleanElement(desc: SerialDescriptor, index: Int) = decodeBoolean(get(desc, index))
113+
override fun decodeBooleanElement(descriptor: SerialDescriptor, index: Int) = decodeBoolean(get(descriptor, index))
114114

115-
override fun decodeByteElement(desc: SerialDescriptor, index: Int) = decodeByte(get(desc, index))
115+
override fun decodeByteElement(descriptor: SerialDescriptor, index: Int) = decodeByte(get(descriptor, index))
116116

117-
override fun decodeCharElement(desc: SerialDescriptor, index: Int) = decodeChar(get(desc, index))
117+
override fun decodeCharElement(descriptor: SerialDescriptor, index: Int) = decodeChar(get(descriptor, index))
118118

119-
override fun decodeDoubleElement(desc: SerialDescriptor, index: Int) = decodeDouble(get(desc, index))
119+
override fun decodeDoubleElement(descriptor: SerialDescriptor, index: Int) = decodeDouble(get(descriptor, index))
120120

121-
override fun decodeFloatElement(desc: SerialDescriptor, index: Int) = decodeFloat(get(desc, index))
121+
override fun decodeFloatElement(descriptor: SerialDescriptor, index: Int) = decodeFloat(get(descriptor, index))
122122

123-
override fun decodeIntElement(desc: SerialDescriptor, index: Int) = decodeInt(get(desc, index))
123+
override fun decodeIntElement(descriptor: SerialDescriptor, index: Int) = decodeInt(get(descriptor, index))
124124

125-
override fun decodeLongElement(desc: SerialDescriptor, index: Int) = decodeLong(get(desc, index))
125+
override fun decodeLongElement(descriptor: SerialDescriptor, index: Int) = decodeLong(get(descriptor, index))
126126

127-
override fun decodeShortElement(desc: SerialDescriptor, index: Int) = decodeShort(get(desc, index))
127+
override fun decodeShortElement(descriptor: SerialDescriptor, index: Int) = decodeShort(get(descriptor, index))
128128

129-
override fun decodeStringElement(desc: SerialDescriptor, index: Int) = decodeString(get(desc, index))
129+
override fun decodeStringElement(descriptor: SerialDescriptor, index: Int) = decodeString(get(descriptor, index))
130130

131-
override fun decodeUnitElement(desc: SerialDescriptor, index: Int) = decodeUnit(get(desc, index))
131+
override fun decodeUnitElement(descriptor: SerialDescriptor, index: Int) = decodeUnit(get(descriptor, index))
132132

133133
override fun endStructure(descriptor: SerialDescriptor) {
134134
}
@@ -180,9 +180,9 @@ private fun decodeChar(value: Any?) = when(value) {
180180
else -> throw SerializationException("Expected $value to be char")
181181
}
182182

183-
private fun decodeEnum(value: Any?, enumDescription: SerialDescriptor) = when(value) {
183+
private fun decodeEnum(value: Any?, enumDescriptor: SerialDescriptor) = when(value) {
184184
is Number -> value.toInt()
185-
is String -> enumDescription.getElementIndexOrThrow(value)
185+
is String -> enumDescriptor.getElementIndexOrThrow(value)
186186
else -> throw SerializationException("Expected $value to be enum")
187187
}
188188

firebase-common/src/commonMain/kotlin/dev/gitlive/firebase/encoders.kt

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ fun encode(value: Any?, shouldEncodeElementDefault: Boolean, positiveInfinity: A
1515
FirebaseEncoder(shouldEncodeElementDefault, positiveInfinity).apply { encode(it.firebaseSerializer(), it) }.value
1616
}
1717

18-
expect fun FirebaseEncoder.structureEncoder(desc: SerialDescriptor, vararg typeParams: KSerializer<*>): CompositeEncoder
18+
expect fun FirebaseEncoder.structureEncoder(descriptor: SerialDescriptor, vararg typeParams: KSerializer<*>): CompositeEncoder
1919

2020
class FirebaseEncoder(internal val shouldEncodeElementDefault: Boolean, positiveInfinity: Any) : TimestampEncoder(positiveInfinity), Encoder {
2121

2222
var value: Any? = null
2323

2424
override val context = EmptyModule
2525

26-
override fun beginStructure(desc: SerialDescriptor, vararg typeParams: KSerializer<*>) = structureEncoder(desc, *typeParams)
26+
override fun beginStructure(descriptor: SerialDescriptor, vararg typeSerializers: KSerializer<*>) = structureEncoder(descriptor, *typeSerializers)
2727

2828
override fun encodeBoolean(value: Boolean) {
2929
this.value = value
@@ -41,8 +41,8 @@ class FirebaseEncoder(internal val shouldEncodeElementDefault: Boolean, positive
4141
this.value = encodeTimestamp(value)
4242
}
4343

44-
override fun encodeEnum(enumDescription: SerialDescriptor, ordinal: Int) {
45-
this.value = enumDescription.getElementName(ordinal)
44+
override fun encodeEnum(enumDescriptor: SerialDescriptor, index: Int) {
45+
this.value = enumDescriptor.getElementName(index)
4646
}
4747

4848
override fun encodeFloat(value: Float) {
@@ -90,7 +90,7 @@ open class FirebaseCompositeEncoder constructor(
9090
private val shouldEncodeElementDefault: Boolean,
9191
positiveInfinity: Any,
9292
private val end: () -> Unit = {},
93-
private val set: (desc: SerialDescriptor, index: Int, value: Any?) -> Unit
93+
private val set: (descriptor: SerialDescriptor, index: Int, value: Any?) -> Unit
9494
): TimestampEncoder(positiveInfinity), CompositeEncoder {
9595

9696
override val context = EmptyModule
@@ -105,31 +105,31 @@ open class FirebaseCompositeEncoder constructor(
105105

106106
override fun shouldEncodeElementDefault(descriptor: SerialDescriptor, index: Int) = shouldEncodeElementDefault
107107

108-
override fun <T : Any> encodeNullableSerializableElement(desc: SerialDescriptor, index: Int, serializer: SerializationStrategy<T>, value: T?) =
109-
set(desc, index, value?.let { FirebaseEncoder(shouldEncodeElementDefault, positiveInfinity).apply { encode(serializer, value) }.value })
108+
override fun <T : Any> encodeNullableSerializableElement(descriptor: SerialDescriptor, index: Int, serializer: SerializationStrategy<T>, value: T?) =
109+
set(descriptor, index, value?.let { FirebaseEncoder(shouldEncodeElementDefault, positiveInfinity).apply { encode(serializer, value) }.value })
110110

111-
override fun <T> encodeSerializableElement(desc: SerialDescriptor, index: Int, serializer: SerializationStrategy<T>, value: T) =
112-
set(desc, index, FirebaseEncoder(shouldEncodeElementDefault, positiveInfinity).apply { encode(serializer, value) }.value)
111+
override fun <T> encodeSerializableElement(descriptor: SerialDescriptor, index: Int, serializer: SerializationStrategy<T>, value: T) =
112+
set(descriptor, index, FirebaseEncoder(shouldEncodeElementDefault, positiveInfinity).apply { encode(serializer, value) }.value)
113113

114-
override fun encodeBooleanElement(desc: SerialDescriptor, index: Int, value: Boolean) = set(desc, index, value)
114+
override fun encodeBooleanElement(descriptor: SerialDescriptor, index: Int, value: Boolean) = set(descriptor, index, value)
115115

116-
override fun encodeByteElement(desc: SerialDescriptor, index: Int, value: Byte) = set(desc, index, value)
116+
override fun encodeByteElement(descriptor: SerialDescriptor, index: Int, value: Byte) = set(descriptor, index, value)
117117

118-
override fun encodeCharElement(desc: SerialDescriptor, index: Int, value: Char) = set(desc, index, value)
118+
override fun encodeCharElement(descriptor: SerialDescriptor, index: Int, value: Char) = set(descriptor, index, value)
119119

120-
override fun encodeDoubleElement(desc: SerialDescriptor, index: Int, value: Double) = set(desc, index, encodeTimestamp(value))
120+
override fun encodeDoubleElement(descriptor: SerialDescriptor, index: Int, value: Double) = set(descriptor, index, encodeTimestamp(value))
121121

122-
override fun encodeFloatElement(desc: SerialDescriptor, index: Int, value: Float) = set(desc, index, value)
122+
override fun encodeFloatElement(descriptor: SerialDescriptor, index: Int, value: Float) = set(descriptor, index, value)
123123

124-
override fun encodeIntElement(desc: SerialDescriptor, index: Int, value: Int) = set(desc, index, value)
124+
override fun encodeIntElement(descriptor: SerialDescriptor, index: Int, value: Int) = set(descriptor, index, value)
125125

126-
override fun encodeLongElement(desc: SerialDescriptor, index: Int, value: Long) = set(desc, index, value)
126+
override fun encodeLongElement(descriptor: SerialDescriptor, index: Int, value: Long) = set(descriptor, index, value)
127127

128-
override fun encodeShortElement(desc: SerialDescriptor, index: Int, value: Short) = set(desc, index, value)
128+
override fun encodeShortElement(descriptor: SerialDescriptor, index: Int, value: Short) = set(descriptor, index, value)
129129

130-
override fun encodeStringElement(desc: SerialDescriptor, index: Int, value: String) = set(desc, index, value)
130+
override fun encodeStringElement(descriptor: SerialDescriptor, index: Int, value: String) = set(descriptor, index, value)
131131

132-
override fun encodeUnitElement(desc: SerialDescriptor, index: Int) = set(desc, index, Unit)
132+
override fun encodeUnitElement(descriptor: SerialDescriptor, index: Int) = set(descriptor, index, Unit)
133133

134134
}
135135

firebase-common/src/commonMain/kotlin/dev/gitlive/firebase/serializers.kt

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -36,18 +36,18 @@ class FirebaseMapSerializer : KSerializer<Map<String, Any?>> {
3636

3737
@Suppress("UNCHECKED_CAST")
3838
@ImplicitReflectionSerializer
39-
override fun serialize(encoder: Encoder, obj: Map<String, Any?>) {
40-
map = obj
41-
keys = obj.keys.toList()
42-
val collectionEncoder = encoder.beginCollection(descriptor, obj.size)
39+
override fun serialize(encoder: Encoder, value: Map<String, Any?>) {
40+
map = value
41+
keys = value.keys.toList()
42+
val collectionEncoder = encoder.beginCollection(descriptor, value.size)
4343
keys.forEachIndexed { index, key ->
44-
val value = map.getValue(key)
45-
val serializer = (value?.firebaseSerializer() ?: UnitSerializer().nullable) as KSerializer<Any?>
44+
val listValue = map.getValue(key)
45+
val serializer = (listValue?.firebaseSerializer() ?: UnitSerializer().nullable) as KSerializer<Any?>
4646
String.serializer().let {
4747
collectionEncoder.encodeSerializableElement(it.descriptor, index * 2, it, key)
4848
}
4949
collectionEncoder.encodeNullableSerializableElement(
50-
serializer.descriptor, index * 2 + 1, serializer, value
50+
serializer.descriptor, index * 2 + 1, serializer, listValue
5151
)
5252
}
5353
collectionEncoder.endStructure(descriptor)
@@ -81,25 +81,26 @@ class FirebaseListSerializer : KSerializer<Iterable<Any?>> {
8181

8282
@Suppress("UNCHECKED_CAST")
8383
@ImplicitReflectionSerializer
84-
override fun serialize(encoder: Encoder, obj: Iterable<Any?>) {
85-
list = obj.toList()
84+
override fun serialize(encoder: Encoder, value: Iterable<Any?>) {
85+
list = value.toList()
8686
val collectionEncoder = encoder.beginCollection(descriptor, list.size)
87-
list.forEachIndexed { index, value ->
88-
val serializer = (value?.firebaseSerializer() ?: UnitSerializer().nullable) as KSerializer<Any>
87+
list.forEachIndexed { index, listValue ->
88+
val serializer = (listValue?.firebaseSerializer() ?: UnitSerializer().nullable) as KSerializer<Any>
8989
collectionEncoder.encodeNullableSerializableElement(
90-
serializer.descriptor, index, serializer, value
90+
serializer.descriptor, index, serializer, listValue
9191
)
9292
}
9393
collectionEncoder.endStructure(descriptor)
9494
}
9595

9696
override fun deserialize(decoder: Decoder): List<Any?> {
97-
val collectionDecoder = decoder.beginStructure(descriptor) as FirebaseCompositeDecoder
98-
val list = mutableListOf<Any?>()
97+
throw NotImplementedError()
98+
// val collectionDecoder = decoder.beginStructure(descriptor) as FirebaseCompositeDecoder
99+
// val list = mutableListOf<Any?>()
99100
// list.forEachIndexed { index, _ ->
100101
// list.add(index, collectionDecoder.decodeNullableSerializableElement(index))
101102
// }
102-
return list
103+
// return list
103104
}
104105
}
105106

0 commit comments

Comments
 (0)