FTBFS PermittedSubclasses requires ASM9

Bug #2007171 reported by Hans Joachim Desserud
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
kotlin (Ubuntu)
Fix Released
Undecided
Unassigned
kotlinx-atomicfu (Ubuntu)
Fix Released
Undecided
Unassigned
kotlinx-coroutines (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

kotlinx-atomicfu currently fails to build with the following error message:

Publishing to org.gradle.api.publication.maven.internal.deployer.BaseMavenInstaller@69d70e3c
e: java.lang.UnsupportedOperationException: PermittedSubclasses requires ASM9
 at org.jetbrains.org.objectweb.asm.ClassVisitor.visitPermittedSubclass(ClassVisitor.java:266)
 at org.jetbrains.org.objectweb.asm.ClassReader.accept(ClassReader.java:706)
 at org.jetbrains.org.objectweb.asm.ClassReader.accept(ClassReader.java:424)
 at org.jetbrains.kotlin.load.java.structure.impl.classFiles.BinaryJavaClass.<init>(BinaryJavaClass.kt:76)
 at org.jetbrains.kotlin.load.java.structure.impl.classFiles.BinaryJavaClass.<init>(BinaryJavaClass.kt:40)
 at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCliJavaFileManagerImpl.findClass(KotlinCliJavaFileManagerImpl.kt:115)
 at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCliJavaFileManagerImpl.findClass(KotlinCliJavaFileManagerImpl.kt:85)
 at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCliJavaFileManagerImpl$findClass$$inlined$getOrPut$lambda$1.invoke(KotlinCliJavaFileManagerImpl.kt:113)
 at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCliJavaFileManagerImpl$findClass$$inlined$getOrPut$lambda$1.invoke(KotlinCliJavaFileManagerImpl.kt:48)
 at org.jetbrains.kotlin.load.java.structure.impl.classFiles.ClassifierResolutionContext.resolveClass(ClassifierResolutionContext.kt:60)
 at org.jetbrains.kotlin.load.java.structure.impl.classFiles.ClassifierResolutionContext.resolveByInternalName$frontend_java(ClassifierResolutionContext.kt:101)
 at org.jetbrains.kotlin.load.java.structure.impl.classFiles.BinaryClassSignatureParser$parseParameterizedClassRefSignature$1.invoke(BinaryClassSignatureParser.kt:141)
 at org.jetbrains.kotlin.load.java.structure.impl.classFiles.BinaryClassSignatureParser$parseParameterizedClassRefSignature$1.invoke(BinaryClassSignatureParser.kt:38)
 at kotlin.UnsafeLazyImpl.getValue(Lazy.kt:81)

(see https://launchpad.net/ubuntu/+source/kotlinx-atomicfu/0.11.12-2/+build/25553022 for more details)

When rebuilding on Debian Sid, I get a successful build so whatever is causing the problem seems to be Ubuntu specific. I don't really know why since the asm package (which would be high on the list of suspects) is in sync with Debian...

Furthermore, this leads to the following problems:
kotlinx-coroutines require libkotlinx-atomicfu-java and thus is stuck waiting for dependencies (https://launchpad.net/ubuntu/+source/kotlinx-coroutines/1.0.1-2/+build/25553023)
Both of these packages are build dependencies for kotlin (https://launchpad.net/ubuntu/+source/kotlin/1.3.31+~1.0.1+~0.11.12-6/+build/25587999)

Though it should be noted that prior to the dependency wait problem, kotlin had similar ASM9 issues, so it might be a common problem.

Tags: ftbfs lunar
Revision history for this message
Gianfranco Costamagna (costamagnagianfranco) wrote :

kotlin (1.3.31+~1.0.1+~0.11.12-3) unstable; urgency=medium
 .
   * Team upload.
   * Fixed a compilation error caused by ASM 9.4
   * Fixed the runtime errors with Java 17
   * Build AtomicFU with Java 8 to work around the Java 17 runtime error
   * Install the kotlinx-coroutines-core artifacts from the build directory
   * Link to the unversioned jar of lz4-java

At least this version was needed to bootstrap everything.
I grabbed the kotlin deb from debian, uploaded into the archive, and rebuilt everything after it was installed successfully. Now the bootstrap is finished.

Changed in kotlin (Ubuntu):
status: New → Fix Released
Changed in kotlinx-atomicfu (Ubuntu):
status: New → Fix Released
Changed in kotlinx-coroutines (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.