Skip to content

Commit ee76295

Browse files
patrick-dedicationautonomousapps
authored andcommitted
fix: FindKotlinMagicTask and JarExploder to consistently exclude module-info.class
1 parent 52ed66a commit ee76295

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

src/main/kotlin/com/autonomousapps/internal/JarExploder.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ package com.autonomousapps.internal
44

55
import com.autonomousapps.internal.asm.ClassReader
66
import com.autonomousapps.internal.utils.asSequenceOfClassFiles
7+
import com.autonomousapps.internal.utils.filterToClassFiles
78
import com.autonomousapps.internal.utils.getLogger
89
import com.autonomousapps.model.internal.KtFile
910
import com.autonomousapps.model.internal.PhysicalArtifact
@@ -78,7 +79,8 @@ internal class JarExploder(
7879
ktFiles = KtFile.fromDirectory(artifact.file)
7980

8081
artifact.file.walkBottomUp()
81-
.filter { it.isFile && it.name.endsWith(".class") }
82+
.filter { it.isFile }
83+
.filterToClassFiles()
8284
.map { classFile ->
8385
ClassNameAndAnnotationsVisitor(logger).apply {
8486
val reader = classFile.inputStream().use { ClassReader(it.readBytes()) }

src/main/kotlin/com/autonomousapps/internal/utils/collections.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,14 @@ internal fun Iterable<ZipEntry>.asSequenceOfClassFiles(): Sequence<ZipEntry> {
5858

5959
// Can't use Iterable<File> because of signature clash with Iterable<ZipEntry> above.
6060
internal fun Collection<File>.asSequenceOfClassFiles(): Sequence<File> {
61-
return asSequence().filter { it.extension == "class" && !it.name.endsWith("module-info.class") }
61+
return asSequence().filterToClassFiles()
6262
}
6363

64+
internal fun Sequence<File>.filterToClassFiles(): Sequence<File> {
65+
return filter { it.extension == "class" && !it.name.endsWith("module-info.class") }
66+
}
67+
68+
6469
internal fun Iterable<File>.filterToClassFiles(): List<File> {
6570
return filter { it.extension == "class" && !it.name.endsWith("module-info.class") }
6671
}

src/main/kotlin/com/autonomousapps/tasks/FindKotlinMagicTask.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,8 @@ internal class KotlinMagicFinder(
222222
}
223223

224224
artifact.file.walkBottomUp()
225-
.filter { it.isFile && it.name.endsWith(".class") }
225+
.filter { it.isFile }
226+
.filterToClassFiles()
226227
.mapNotNull { classFile ->
227228
val kotlinMagic = readClass(
228229
classFile.inputStream().use { ClassReader(it.readBytes()) },

0 commit comments

Comments
 (0)