diff --git a/api/shadow.api b/api/shadow.api index bb7bc55f2..e800309cc 100644 --- a/api/shadow.api +++ b/api/shadow.api @@ -64,32 +64,6 @@ public abstract class com/github/jengelman/gradle/plugins/shadow/ShadowPlugin : public fun apply (Lorg/gradle/api/Project;)V } -public class com/github/jengelman/gradle/plugins/shadow/ShadowStats { - public fun ()V - public fun finishJar ()V - public fun getAverageTimePerJar ()D - public fun getAverageTimeSecsPerJar ()D - public fun getBuildScanData ()Ljava/util/Map; - public fun getJarCount ()I - public fun getJarEndTime ()J - public fun getJarStartTime ()J - public fun getJarTiming ()J - public fun getProcessingJar ()Z - public fun getRelocationString ()Ljava/lang/String; - public fun getRelocations ()Ljava/util/Map; - public fun getTotalTime ()J - public fun getTotalTimeSecs ()D - public fun printStats ()V - public fun relocate (Ljava/lang/String;Ljava/lang/String;)V - public fun setJarCount (I)V - public fun setJarEndTime (J)V - public fun setJarStartTime (J)V - public fun setProcessingJar (Z)V - public fun setTotalTime (J)V - public fun startJar ()V - public fun toString ()Ljava/lang/String; -} - public abstract interface class com/github/jengelman/gradle/plugins/shadow/internal/DependencyFilter : java/io/Serializable { public abstract fun dependency (Ljava/lang/Object;)Lorg/gradle/api/specs/Spec; public abstract fun dependency (Lorg/gradle/api/artifacts/Dependency;)Lorg/gradle/api/specs/Spec; @@ -115,59 +89,31 @@ public abstract interface annotation class com/github/jengelman/gradle/plugins/s } public final class com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext { - public static final field Companion Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Companion; - public fun (Ljava/lang/String;)V - public fun (Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)V - public synthetic fun (Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public static final fun builder ()Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Builder; - public final fun component1 ()Ljava/lang/String; - public final fun component2 ()Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats; - public final fun copy (Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext; - public static synthetic fun copy$default (Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext;Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ILjava/lang/Object;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext; + public static final synthetic fun box-impl (Ljava/lang/String;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext; + public static fun constructor-impl (Ljava/lang/String;)Ljava/lang/String; public fun equals (Ljava/lang/Object;)Z + public static fun equals-impl (Ljava/lang/String;Ljava/lang/Object;)Z + public static final fun equals-impl0 (Ljava/lang/String;Ljava/lang/String;)Z public final fun getClassName ()Ljava/lang/String; - public final fun getStats ()Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats; public fun hashCode ()I + public static fun hashCode-impl (Ljava/lang/String;)I public fun toString ()Ljava/lang/String; -} - -public final class com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Builder { - public fun ()V - public final fun build ()Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext; - public final fun className (Ljava/lang/String;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Builder; - public final fun stats (Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Builder; -} - -public final class com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Companion { - public final fun builder ()Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext$Builder; + public static fun toString-impl (Ljava/lang/String;)Ljava/lang/String; + public final synthetic fun unbox-impl ()Ljava/lang/String; } public final class com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext { - public static final field Companion Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Companion; - public fun (Ljava/lang/String;)V - public fun (Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)V - public synthetic fun (Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public static final fun builder ()Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Builder; - public final fun component1 ()Ljava/lang/String; - public final fun component2 ()Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats; - public final fun copy (Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext; - public static synthetic fun copy$default (Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext;Ljava/lang/String;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ILjava/lang/Object;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext; + public static final synthetic fun box-impl (Ljava/lang/String;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext; + public static fun constructor-impl (Ljava/lang/String;)Ljava/lang/String; public fun equals (Ljava/lang/Object;)Z + public static fun equals-impl (Ljava/lang/String;Ljava/lang/Object;)Z + public static final fun equals-impl0 (Ljava/lang/String;Ljava/lang/String;)Z public final fun getPath ()Ljava/lang/String; - public final fun getStats ()Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats; public fun hashCode ()I + public static fun hashCode-impl (Ljava/lang/String;)I public fun toString ()Ljava/lang/String; -} - -public final class com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Builder { - public fun ()V - public final fun build ()Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext; - public final fun path (Ljava/lang/String;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Builder; - public final fun stats (Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Builder; -} - -public final class com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Companion { - public final fun builder ()Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext$Builder; + public static fun toString-impl (Ljava/lang/String;)Ljava/lang/String; + public final synthetic fun unbox-impl ()Ljava/lang/String; } public abstract interface class com/github/jengelman/gradle/plugins/shadow/relocation/Relocator { @@ -175,8 +121,8 @@ public abstract interface class com/github/jengelman/gradle/plugins/shadow/reloc public abstract fun applyToSourceContent (Ljava/lang/String;)Ljava/lang/String; public abstract fun canRelocateClass (Ljava/lang/String;)Z public abstract fun canRelocatePath (Ljava/lang/String;)Z - public abstract fun relocateClass (Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext;)Ljava/lang/String; - public abstract fun relocatePath (Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext;)Ljava/lang/String; + public abstract fun relocateClass-XBGRxQs (Ljava/lang/String;)Ljava/lang/String; + public abstract fun relocatePath-bvWaKNU (Ljava/lang/String;)Ljava/lang/String; } public final class com/github/jengelman/gradle/plugins/shadow/relocation/Relocator$Companion { @@ -198,8 +144,8 @@ public class com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocat public final fun getExcludes ()Lorg/gradle/api/provider/SetProperty; public final fun getIncludes ()Lorg/gradle/api/provider/SetProperty; public fun include (Ljava/lang/String;)Lcom/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator; - public fun relocateClass (Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext;)Ljava/lang/String; - public fun relocatePath (Lcom/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext;)Ljava/lang/String; + public fun relocateClass-XBGRxQs (Ljava/lang/String;)Ljava/lang/String; + public fun relocatePath-bvWaKNU (Ljava/lang/String;)Ljava/lang/String; } public class com/github/jengelman/gradle/plugins/shadow/tasks/DefaultInheritManifest : com/github/jengelman/gradle/plugins/shadow/tasks/InheritManifest, org/gradle/api/java/archives/Manifest { @@ -227,7 +173,7 @@ public abstract interface class com/github/jengelman/gradle/plugins/shadow/tasks public class com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction : org/gradle/api/internal/file/copy/CopyAction { public static final field Companion Lcom/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction$Companion; - public fun (Ljava/io/File;Lcom/github/jengelman/gradle/plugins/shadow/internal/ZipCompressor;Lorg/gradle/api/internal/DocumentationRegistry;Ljava/lang/String;Ljava/util/Set;Ljava/util/Set;Lorg/gradle/api/tasks/util/PatternSet;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ZLjava/util/Set;)V + public fun (Ljava/io/File;Lcom/github/jengelman/gradle/plugins/shadow/internal/ZipCompressor;Lorg/gradle/api/internal/DocumentationRegistry;Ljava/lang/String;Ljava/util/Set;Ljava/util/Set;Lorg/gradle/api/tasks/util/PatternSet;ZLjava/util/Set;)V public fun execute (Lorg/gradle/api/internal/file/copy/CopyActionProcessingStream;)Lorg/gradle/api/tasks/WorkResult; } @@ -565,20 +511,17 @@ public final class com/github/jengelman/gradle/plugins/shadow/transformers/Trans public static final field Companion Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Companion; public fun (Ljava/lang/String;Ljava/io/InputStream;)V public fun (Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;)V - public fun (Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)V - public synthetic fun (Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public static final fun builder ()Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Builder; public final fun component1 ()Ljava/lang/String; public final fun component2 ()Ljava/io/InputStream; public final fun component3 ()Ljava/util/Set; - public final fun component4 ()Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats; - public final fun copy (Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext; - public static synthetic fun copy$default (Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext;Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;ILjava/lang/Object;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext; + public final fun copy (Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext; + public static synthetic fun copy$default (Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext;Ljava/lang/String;Ljava/io/InputStream;Ljava/util/Set;ILjava/lang/Object;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext; public fun equals (Ljava/lang/Object;)Z public final fun getInputStream ()Ljava/io/InputStream; public final fun getPath ()Ljava/lang/String; public final fun getRelocators ()Ljava/util/Set; - public final fun getStats ()Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats; public fun hashCode ()I public fun toString ()Ljava/lang/String; } @@ -589,7 +532,6 @@ public final class com/github/jengelman/gradle/plugins/shadow/transformers/Trans public final fun inputStream (Ljava/io/InputStream;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Builder; public final fun path (Ljava/lang/String;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Builder; public final fun relocators (Ljava/util/Set;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Builder; - public final fun stats (Lcom/github/jengelman/gradle/plugins/shadow/ShadowStats;)Lcom/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Builder; } public final class com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext$Companion { diff --git a/src/docs/changes/README.md b/src/docs/changes/README.md index 2c713a3be..0d6e55b54 100644 --- a/src/docs/changes/README.md +++ b/src/docs/changes/README.md @@ -14,6 +14,7 @@ **Removed** - **BREAKING CHANGE:** Remove `BaseStreamAction`. ([#1258](https://github.com/GradleUp/shadow/pull/1258)) +- **BREAKING CHANGE:** Remove `ShadowStats`. ([#1264](https://github.com/GradleUp/shadow/pull/1264)) ## [v9.0.0-beta8] (2025-02-08) diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/ShadowStats.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/ShadowStats.kt deleted file mode 100644 index 45406acb7..000000000 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/ShadowStats.kt +++ /dev/null @@ -1,72 +0,0 @@ -package com.github.jengelman.gradle.plugins.shadow - -import org.gradle.api.GradleException - -public open class ShadowStats { - public open var totalTime: Long = 0 - public open var jarStartTime: Long = 0 - public open var jarEndTime: Long = 0 - public open var jarCount: Int = 1 - public open var processingJar: Boolean = false - public open val relocations: MutableMap = mutableMapOf() - - public open val relocationString: String - get() { - return relocations.map { (k, v) -> "$k → $v" } - .sorted() - .joinToString("\n") - } - - public open val jarTiming: Long - get() = jarEndTime - jarStartTime - - public open val totalTimeSecs: Double - get() = totalTime / 1000.0 - - public open val averageTimePerJar: Double - get() = totalTime / jarCount.toDouble() - - public open val averageTimeSecsPerJar: Double - get() = averageTimePerJar / 1000.0 - - public open val buildScanData: Map - get() = mapOf( - "dependencies" to jarCount.toString(), - "relocations" to relocationString, - ) - - public open fun relocate(src: String, dst: String) { - relocations[src] = dst - } - - public open fun startJar() { - if (processingJar) throw GradleException("Can only time one entry at a time") - processingJar = true - jarStartTime = System.currentTimeMillis() - } - - public open fun finishJar() { - if (processingJar) { - jarEndTime = System.currentTimeMillis() - jarCount++ - totalTime += jarTiming - processingJar = false - } - } - - public open fun printStats() { - println(this) - } - - override fun toString(): String { - return """ - ******************* - GRADLE SHADOW STATS - - Total Jars: $jarCount (includes project) - Total Time: ${totalTimeSecs}s [${totalTime}ms] - Average Time/Jar: ${averageTimeSecsPerJar}s [${averageTimePerJar}ms] - ******************* - """.trimIndent() - } -} diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RealStreamAction.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RealStreamAction.kt index 8fb034bb1..c7fb90fe6 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RealStreamAction.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RealStreamAction.kt @@ -1,6 +1,5 @@ package com.github.jengelman.gradle.plugins.shadow.internal -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.relocation.Relocator import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowCopyAction.ArchiveFileTreeElement import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowCopyAction.RelativeArchivePath @@ -34,12 +33,11 @@ internal class RealStreamAction( private val relocators: Set, private val patternSet: PatternSet, private val unusedClasses: Set, - private val stats: ShadowStats, private val zipFile: File, private val preserveFileTimestamps: Boolean, private val logger: Logger, ) : CopyActionProcessingStreamAction { - private val remapper = RelocatorRemapper(relocators, stats) + private val remapper = RelocatorRemapper(relocators) private val visitedFiles = mutableSetOf() init { @@ -100,7 +98,6 @@ internal class RealStreamAction( } private fun processArchive(fileDetails: FileCopyDetails) { - stats.startJar() ZipFile(fileDetails.file).use { archive -> archive.entries.asSequence() .map { @@ -114,7 +111,6 @@ internal class RealStreamAction( } } } - stats.finishJar() } private fun visitArchiveDirectory(archiveDir: RelativeArchivePath) { @@ -242,7 +238,6 @@ internal class RealStreamAction( path = mappedPath, inputStream = steam, relocators = relocators, - stats = stats, ), ) } diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RelocatorRemapper.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RelocatorRemapper.kt index 4e8f59afd..3c2fb20ea 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RelocatorRemapper.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/RelocatorRemapper.kt @@ -1,6 +1,5 @@ package com.github.jengelman.gradle.plugins.shadow.internal -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.relocation.RelocateClassContext import com.github.jengelman.gradle.plugins.shadow.relocation.RelocatePathContext import com.github.jengelman.gradle.plugins.shadow.relocation.Relocator @@ -16,7 +15,6 @@ import org.objectweb.asm.commons.Remapper */ internal class RelocatorRemapper( private val relocators: Set, - private val stats: ShadowStats, ) : Remapper() { private val classPattern: Pattern = Pattern.compile("(\\[*)?L(.+)") @@ -44,10 +42,10 @@ internal class RelocatorRemapper( for (relocator in relocators) { if (relocator.canRelocateClass(newName)) { - val classContext = RelocateClassContext(className = newName, stats = stats) + val classContext = RelocateClassContext(newName) return prefix + relocator.relocateClass(classContext) + suffix } else if (relocator.canRelocatePath(newName)) { - val pathContext = RelocatePathContext(path = newName, stats = stats) + val pathContext = RelocatePathContext(newName) return prefix + relocator.relocatePath(pathContext) + suffix } } diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext.kt index b30c1c31d..7a85ec702 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext.kt @@ -1,22 +1,6 @@ package com.github.jengelman.gradle.plugins.shadow.relocation -import com.github.jengelman.gradle.plugins.shadow.ShadowStats - -public data class RelocateClassContext @JvmOverloads constructor( - val className: String, - val stats: ShadowStats = ShadowStats(), -) { - public class Builder { - private var className = "" - private var stats = ShadowStats() - - public fun className(className: String): Builder = apply { this.className = className } - public fun stats(stats: ShadowStats): Builder = apply { this.stats = stats } - public fun build(): RelocateClassContext = RelocateClassContext(className, stats) - } - - public companion object { - @JvmStatic - public fun builder(): Builder = Builder() - } -} +@JvmInline +public value class RelocateClassContext( + public val className: String, +) diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext.kt index ff8ca3288..7fc499606 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext.kt @@ -1,22 +1,6 @@ package com.github.jengelman.gradle.plugins.shadow.relocation -import com.github.jengelman.gradle.plugins.shadow.ShadowStats - -public data class RelocatePathContext @JvmOverloads constructor( - val path: String, - val stats: ShadowStats = ShadowStats(), -) { - public class Builder { - private var path = "" - private var stats = ShadowStats() - - public fun path(path: String): Builder = apply { this.path = path } - public fun stats(stats: ShadowStats): Builder = apply { this.stats = stats } - public fun build(): RelocatePathContext = RelocatePathContext(path, stats) - } - - public companion object { - @JvmStatic - public fun builder(): Builder = Builder() - } -} +@JvmInline +public value class RelocatePathContext( + public val path: String, +) diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator.kt index f2e9e2931..b3641accd 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator.kt @@ -115,7 +115,6 @@ public open class SimpleRelocator @JvmOverloads constructor( override fun relocatePath(context: RelocatePathContext): String { val path = context.path - context.stats.relocate(pathPattern, shadedPathPattern) return if (rawString) { path.replace(pathPattern.toRegex(), shadedPathPattern) } else { @@ -124,7 +123,6 @@ public open class SimpleRelocator @JvmOverloads constructor( } override fun relocateClass(context: RelocateClassContext): String { - context.stats.relocate(pathPattern, shadedPathPattern) val clazz = context.className return if (rawString) clazz else clazz.replaceFirst(pattern.toRegex(), shadedPattern) } diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction.kt index a0247a6ed..e8fb652b4 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction.kt @@ -1,6 +1,5 @@ package com.github.jengelman.gradle.plugins.shadow.tasks -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.internal.RealStreamAction import com.github.jengelman.gradle.plugins.shadow.internal.RealStreamAction.Companion.CLASS_SUFFIX import com.github.jengelman.gradle.plugins.shadow.internal.ZipCompressor @@ -40,7 +39,6 @@ public open class ShadowCopyAction( private val transformers: Set, private val relocators: Set, private val patternSet: PatternSet, - private val stats: ShadowStats, private val preserveFileTimestamps: Boolean, private val unusedClasses: Set, ) : CopyAction { @@ -62,7 +60,6 @@ public open class ShadowCopyAction( relocators, patternSet, unusedClasses, - stats, zipFile, preserveFileTimestamps, logger, diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar.kt index 27934da76..4172b3cad 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar.kt @@ -1,7 +1,6 @@ package com.github.jengelman.gradle.plugins.shadow.tasks import com.github.jengelman.gradle.plugins.shadow.ShadowBasePlugin -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.internal.DefaultDependencyFilter import com.github.jengelman.gradle.plugins.shadow.internal.DefaultZipCompressor import com.github.jengelman.gradle.plugins.shadow.internal.DependencyFilter @@ -103,9 +102,6 @@ public abstract class ShadowJar : } } - @get:Internal - internal val stats: ShadowStats = ShadowStats() - @get:Internal protected open val rootPatternSet: PatternSet get() = (mainSpec.buildRootResolver() as DefaultCopySpec.DefaultCopySpecResolver).patternSet @@ -268,7 +264,6 @@ public abstract class ShadowJar : from(includedDependencies) injectMultiReleaseAttrIfPresent() super.copy() - logger.info(stats.toString()) } override fun createCopyAction(): CopyAction { @@ -290,7 +285,6 @@ public abstract class ShadowJar : transformers.get(), relocators.get() + packageRelocators, rootPatternSet, - stats, isPreserveFileTimestamps, unusedClasses, ) diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ComponentsXmlResourceTransformer.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ComponentsXmlResourceTransformer.kt index d21bc44e4..458765800 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ComponentsXmlResourceTransformer.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ComponentsXmlResourceTransformer.kt @@ -105,11 +105,10 @@ public open class ComponentsXmlResourceTransformer : Transformer { public const val COMPONENTS_XML_PATH: String = "META-INF/plexus/components.xml" private fun getRelocatedClass(className: String?, context: TransformerContext): String? { - val stats = context.stats if (!className.isNullOrEmpty()) { for (relocator in context.relocators) { if (relocator.canRelocateClass(className)) { - val relocateClassContext = RelocateClassContext(className, stats) + val relocateClassContext = RelocateClassContext(className) return relocator.relocateClass(relocateClassContext) } } diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/Log4j2PluginsCacheFileTransformer.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/Log4j2PluginsCacheFileTransformer.kt index 280b7a344..94ce05001 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/Log4j2PluginsCacheFileTransformer.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/Log4j2PluginsCacheFileTransformer.kt @@ -1,6 +1,5 @@ package com.github.jengelman.gradle.plugins.shadow.transformers -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.internal.zipEntry import com.github.jengelman.gradle.plugins.shadow.relocation.RelocateClassContext import com.github.jengelman.gradle.plugins.shadow.relocation.Relocator @@ -34,7 +33,6 @@ public open class Log4j2PluginsCacheFileTransformer : Transformer { * [Relocator] instances to share across the transformation stages. */ private val tempRelocators = mutableListOf() - private var stats: ShadowStats? = null override fun canTransformResource(element: FileTreeElement): Boolean { return PLUGIN_CACHE_FILE == element.relativePath.pathString @@ -49,10 +47,6 @@ public open class Log4j2PluginsCacheFileTransformer : Transformer { } tempRelocators.addAll(context.relocators) - - if (stats == null) { - stats = context.stats - } } /** @@ -79,7 +73,7 @@ public open class Log4j2PluginsCacheFileTransformer : Transformer { pluginCache.allCategories.values.forEach { currentMap -> currentMap.values.forEach { currentPluginEntry -> val className = currentPluginEntry.className - val relocateClassContext = RelocateClassContext(className, requireNotNull(stats)) + val relocateClassContext = RelocateClassContext(className) tempRelocators.firstOrNull { it.canRelocateClass(className) }?.let { relocator -> // Then we perform that relocation and update the plugin entry to reflect the new value. currentPluginEntry.className = relocator.relocateClass(relocateClassContext) diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer.kt index d633d9334..d4e00ffe7 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer.kt @@ -50,7 +50,7 @@ public open class ServiceFileTransformer( var resource = context.path.substringAfter("$path/") context.relocators.forEach { relocator -> if (relocator.canRelocateClass(resource)) { - val classContext = RelocateClassContext(className = resource, stats = context.stats) + val classContext = RelocateClassContext(className = resource) resource = relocator.relocateClass(classContext) return@forEach } @@ -62,7 +62,7 @@ public open class ServiceFileTransformer( var line = it context.relocators.forEach { relocator -> if (relocator.canRelocateClass(line)) { - val lineContext = RelocateClassContext(className = line, stats = context.stats) + val lineContext = RelocateClassContext(line) line = relocator.relocateClass(lineContext) } } diff --git a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext.kt b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext.kt index 1ee33cd0c..59c412e18 100644 --- a/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext.kt +++ b/src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext.kt @@ -1,6 +1,5 @@ package com.github.jengelman.gradle.plugins.shadow.transformers -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.relocation.Relocator import java.io.InputStream @@ -8,23 +7,19 @@ public data class TransformerContext @JvmOverloads constructor( val path: String, val inputStream: InputStream, val relocators: Set = emptySet(), - val stats: ShadowStats = ShadowStats(), ) { public class Builder { private var path = "" private var inputStream: InputStream? = null private var relocators = emptySet() - private var stats = ShadowStats() public fun path(path: String): Builder = apply { this.path = path } public fun inputStream(inputStream: InputStream): Builder = apply { this.inputStream = inputStream } public fun relocators(relocators: Set): Builder = apply { this.relocators = relocators } - public fun stats(stats: ShadowStats): Builder = apply { this.stats = stats } public fun build(): TransformerContext = TransformerContext( path = path, inputStream = inputStream ?: error("inputStream is required"), relocators = relocators, - stats = stats, ) } diff --git a/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/BaseTransformerTest.kt b/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/BaseTransformerTest.kt index 3a963a537..30bd720dd 100644 --- a/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/BaseTransformerTest.kt +++ b/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/BaseTransformerTest.kt @@ -1,6 +1,5 @@ package com.github.jengelman.gradle.plugins.shadow.transformers -import com.github.jengelman.gradle.plugins.shadow.ShadowStats import com.github.jengelman.gradle.plugins.shadow.internal.createDefaultFileTreeElement import com.github.jengelman.gradle.plugins.shadow.internal.requireResourceAsStream import com.github.jengelman.gradle.plugins.shadow.transformers.Transformer.Companion.create @@ -31,7 +30,6 @@ abstract class BaseTransformerTest { protected companion object { const val MANIFEST_NAME: String = "META-INF/MANIFEST.MF" - val sharedStats = ShadowStats() fun Transformer.canTransformResource(path: String): Boolean { val element = createDefaultFileTreeElement(relativePath = RelativePath.parse(true, path)) diff --git a/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/PropertiesFileTransformerTest.kt b/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/PropertiesFileTransformerTest.kt index d6f900b98..f6b013f5d 100644 --- a/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/PropertiesFileTransformerTest.kt +++ b/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/PropertiesFileTransformerTest.kt @@ -161,7 +161,7 @@ class PropertiesFileTransformerTest : BaseTransformerTest, charset: Charset = Charsets.ISO_8859_1): TransformerContext { val properties = Properties().apply { putAll(input) } - return TransformerContext(path, properties.inputStream(charset), stats = sharedStats) + return TransformerContext(path, properties.inputStream(charset)) } @JvmStatic diff --git a/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformerTest.kt b/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformerTest.kt index bfbaf67ec..bc86d492b 100644 --- a/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformerTest.kt +++ b/src/test/kotlin/com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformerTest.kt @@ -150,7 +150,7 @@ class ServiceFileTransformerTest : BaseTransformerTest() private companion object { fun context(path: String, input: String, vararg relocators: Relocator): TransformerContext { - return TransformerContext(path, input.byteInputStream(), relocators = relocators.toSet(), stats = sharedStats) + return TransformerContext(path, input.byteInputStream(), relocators = relocators.toSet()) } fun ZipFile.getContent(entryName: String): String {