[KT-85690] Fixing deserialization and serialization on jklib pipeline so it actually runs#5892
Conversation
Code Owners
|
16c6829 to
6bdf902
Compare
| ) | ||
|
|
||
| val compilationArtifact = JKlibIrCompilationPhase.invokeToplevel(phaseConfig, context, serializationArtifact) | ||
| val compilationArtifact = JKlibIrCompilationPhase.executePhase(serializationArtifact) |
There was a problem hiding this comment.
Using executePhase is better than using invokeTopLevel in the facades, this leverages the natural pipeline structure for error handling. And its consistent with other facades.
We are changing this in both Facades serialization, SerializationCliJKlibFacade.kt, and deserialization, JKlibIrCompilationCliFacade.kt.
| // ^^^^ member scope of kotlin.Int is different for JVM and JKlib stdlibs | ||
|
|
||
| val test = Int.MIN_VALUE | ||
| val test = Int.MIN_VALUE No newline at end of file |
There was a problem hiding this comment.
Nits: missing new line at the end of the file
|
/safe-merge --fixup |
05a7277 to
6932c1f
Compare
|
Quality gate is triggered at https://buildserver.labs.intellij.net/build/931464799 — use this link to get full insight. Quality gate was triggered with the following revisions:
|
|
Triggered a retry attempt №1 out of 1. |
|
Quality gate finished successfully (recovered via retry). |
Problem
Currently the serialization and deserialization phases, though declared in the test pipeline doesn't run.
This is due to global defaults not having the right artifact kind which is important for backend phases like deserialization as well as these phases not declaring the right type.
Solution
State Artifact.KLib as the defaultArtifact in global imports and casting in facades and between phases as necessary.
Additional Fix
Using invokeTopLevel in the Facades, rather than using executePhase throws when phases return null but shows no errors.
We are changing this in both Facades:
serialization, SerializationCliJKlibFacade.kt, and deserialization, JKlibIrCompilationCliFacade.kt
It also matches how other Facades in other pipelines work