danger / danger/kotlin

GitHubCommit: author and commiter can be empty objects

Open
#249 1 comment 0 reactions 1 assignee Claimed by @Vacxe View on GitHub
Dominant language
Kotlin
Stars
542
Forks
48
PR merge metrics
No merged PRs in 30d

Description

```
14:59:34  kotlinx.serialization.MissingFieldException: Fields [id, login, type, avatar_url] are required for type with serial name 'systems.danger.kotlin.models.github.GitHubUser', but they were missing
14:59:34 
14:59:34  at kotlinx.serialization.internal.PluginExceptionsKt.throwMissingFieldException(PluginExceptions.kt:20)
14:59:34  at systems.danger.kotlin.models.github.GitHubUser.(GitHub.kt:294)
14:59:34  at systems.danger.kotlin.models.github.GitHubUser$$serializer.deserialize(GitHub.kt:294)
14:59:34  at systems.danger.kotlin.models.github.GitHubUser$$serializer.deserialize(GitHub.kt:294)
14:59:34  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
14:59:34  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:36)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:79)
14:59:34  at systems.danger.kotlin.models.github.GitHubCommit$$serializer.deserialize(GitHub.kt:195)
14:59:34  at systems.danger.kotlin.models.github.GitHubCommit$$serializer.deserialize(GitHub.kt:195)
14:59:34  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
14:59:34  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:36)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
14:59:34  at kotlinx.serialization.encoding.CompositeDecoder$DefaultImpls.decodeSerializableElement$default(Decoding.kt:535)
14:59:34 
14:59:34  at kotlinx.serialization.internal.ListLikeSerializer.readElement(CollectionSerializers.kt:80)
14:59:34  at kotlinx.serialization.internal.AbstractCollectionSerializer.readElement$default(CollectionSerializers.kt:51)
14:59:34  at kotlinx.serialization.internal.AbstractCollectionSerializer.merge(CollectionSerializers.kt:36)
14:59:34  at kotlinx.serialization.internal.AbstractCollectionSerializer.deserialize(CollectionSerializers.kt:43)
14:59:34  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
14:59:34  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:36)
14:59:34 
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
14:59:34  at systems.danger.kotlin.models.github.GitHub$$serializer.deserialize(GitHub.kt:13)
14:59:34  at systems.danger.kotlin.models.github.GitHub$$serializer.deserialize(GitHub.kt:13)
14:59:34 
14:59:34  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
14:59:34  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:36)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
14:59:34 
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:79)
14:59:34  at systems.danger.kotlin.models.danger.DangerDSL$$serializer.deserialize(DangerDSL.kt:15)
14:59:34  at systems.danger.kotlin.models.danger.DangerDSL$$serializer.deserialize(DangerDSL.kt:15)
14:59:34 
14:59:34  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
14:59:34  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:36)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
14:59:34  at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableElement(AbstractDecoder.kt:70)
14:59:34 
14:59:34  at systems.danger.kotlin.models.danger.DSL$$serializer.deserialize(DangerDSL.kt:10)
14:59:34  at systems.danger.kotlin.models.danger.DSL$$serializer.deserialize(DangerDSL.kt:10)
14:59:34  at kotlinx.serialization.json.internal.PolymorphicKt.decodeSerializableValuePolymorphic(Polymorphic.kt:59)
14:59:34 
14:59:34  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:36)
14:59:34  at kotlinx.serialization.json.Json.decodeFromString(Json.kt:100)
14:59:34  at systems.danger.kotlin.MainDangerRunner.(MainDangerRunner.kt:131)
14:59:34  at systems.danger.kotlin.MainScriptKt.Danger(MainScript.kt:50)
14:59:34 
14:59:34  at Pr_df.(pr.df.kts:40)
```

For Commit object `author` and `committer` can be empty
```
{
...
"author": {},
"committer": {},
..
}
```

That can happens if commit verification have `usigned` status when git configuration missed `--global user.email` parameter

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.