Skip to content

Cannot process releases newer than 7.0.0 with Proguard #496

Open
@sproctor

Description

@sproctor

7.0.0 is working fine. When trying to upgrade, building with proguard produces the following error:

error[1004]: proguard.evaluation.exception.IncompleteClassHierarchyException
  --> io/github/oshai/kotlinlogging/logback/internal/LogbackLoggerWrapper : at(Lio/github/oshai/kotlinlogging/Level;Lio/github/oshai/kotlinlogging/Marker;Lkotlin/jvm/functions/Function1;)V at return
207 |     dup
208 |     astore v4
210 |     getfield #23
213 |     aload_1 v1
214 |     checkcast #125
217 |     invokevirtual #129
220 |     return
  |     ^^^^^^ Can't find common super class of [io.github.oshai.kotlinlogging.Level] (with 3 known super classes: java.lang.Enum, java.lang.Object, io.github.oshai.kotlinlogging.Level) and [io.github.oshai.kotlinlogging.logback.internal.LogbackLogEvent] (with 1 known super classes: io.github.oshai.kotlinlogging.logback.internal.LogbackLogEvent and 1 unknown classes: ch.qos.logback.classic.spi.LoggingEvent)
221 |     iconst_1
Variables: [P0:P0:Lio/github/oshai/kotlinlogging/logback/internal/LogbackLoggerWrapper;=!][P1:P1:Lio/github/oshai/kotlinlogging/Level;=][P2:P2:Lio/github/oshai/kotlinlogging/Marker;][P3:P3:Lkotlin/jvm/functions/Function1;][31:P0:Lio/github/oshai/kotlinlogging/logback/internal/LogbackLoggerWrapper;=!][17:P1:Lio/github/oshai/kotlinlogging/Level;=][15:P2:Lio/github/oshai/kotlinlogging/Marker;]
Stack: 

proguard.evaluation.exception.IncompleteClassHierarchyException: Can't find common super class of [io.github.oshai.kotlinlogging.Level] (with 3 known super classes: java.lang.Enum, java.lang.Object, io.github.oshai.kotlinlogging.Level) and [io.github.oshai.kotlinlogging.logback.internal.LogbackLogEvent] (with 1 known super classes: io.github.oshai.kotlinlogging.logback.internal.LogbackLogEvent and 1 unknown classes: ch.qos.logback.classic.spi.LoggingEvent)
	at proguard.evaluation.value.TypedReferenceValue.findCommonClass(TypedReferenceValue.java:532) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.value.TypedReferenceValue.generalize(TypedReferenceValue.java:296) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.value.TypedReferenceValue.generalize(TypedReferenceValue.java:217) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.value.TracedReferenceValue.generalize(TracedReferenceValue.java:197) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.value.TracedReferenceValue.generalize(TracedReferenceValue.java:115) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.value.ReferenceValue.generalize(ReferenceValue.java:317) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.Variables.generalize(Variables.java:120) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.TracedVariables.generalize(TracedVariables.java:92) ~[proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.PartialEvaluator.evaluateSingleInstructionBlock(PartialEvaluator.java:703) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.PartialEvaluator.evaluateInstructionBlock(PartialEvaluator.java:624) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.PartialEvaluator.evaluateInstructionBlockAndExceptionHandlers(PartialEvaluator.java:599) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.PartialEvaluator.visitCodeAttribute0(PartialEvaluator.java:399) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.evaluation.PartialEvaluator.visitCodeAttribute(PartialEvaluator.java:347) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.preverify.CodePreverifier.visitCodeAttribute0(CodePreverifier.java:109) [proguard-core-9.1.6.jar:7.6.0]
	at proguard.preverify.CodePreverifier.visitCodeAttribute(CodePreverifier.java:82) [proguard-core-9.1.6.jar:7.6.0]
	at proguard.classfile.attribute.CodeAttribute.accept(CodeAttribute.java:105) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.ProgramMethod.attributesAccept(ProgramMethod.java:118) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.attribute.visitor.AllAttributeVisitor.visitProgramMember(AllAttributeVisitor.java:77) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.visitor.MemberVisitor.visitProgramMethod(MemberVisitor.java:47) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.ProgramMethod.accept(ProgramMethod.java:113) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.ProgramClass.methodsAccept(ProgramClass.java:589) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.visitor.AllMethodVisitor.visitAnyClass(AllMethodVisitor.java:39) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.visitor.ClassVisitor.visitProgramClass(ClassVisitor.java:35) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.visitor.ClassVersionFilter.visitProgramClass(ClassVersionFilter.java:69) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.ProgramClass.accept(ProgramClass.java:491) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.classfile.ClassPool.classesAccept(ClassPool.java:218) [proguard-core-9.1.6.jar:9.1.6]
	at proguard.preverify.Preverifier.execute(Preverifier.java:65) [proguard-base-7.6.0.jar:7.6.0]
	at proguard.pass.PassRunner.run(PassRunner.java:24) [proguard-base-7.6.0.jar:7.6.0]
	at proguard.ProGuard.preverify(ProGuard.java:555) [proguard-base-7.6.0.jar:7.6.0]
	at proguard.ProGuard.execute(ProGuard.java:232) [proguard-base-7.6.0.jar:7.6.0]
	at proguard.ProGuard.main(ProGuard.java:648) [proguard-base-7.6.0.jar:7.6.0]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions