Skip to content

Commit ca03909

Browse files
GooolerCopilot
andauthored
Deprecate everything under ShadowCopyAction (#2083)
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
1 parent 7d7da27 commit ca03909

6 files changed

Lines changed: 25 additions & 18 deletions

File tree

api/shadow.api

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@ public final class com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAc
238238
}
239239

240240
public abstract class com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar : org/gradle/api/tasks/bundling/Jar {
241+
public static final field CONSTANT_TIME_FOR_ZIP_ENTRIES J
241242
public static final field Companion Lcom/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$Companion;
242243
public static final field SHADOW_JAR_TASK_NAME Ljava/lang/String;
243244
public fun <init> ()V

docs/changes/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
- Remove `afterEvaluate` when adding variants. ([#2056](https://github.com/GradleUp/shadow/pull/2056))
1717
- Deprecate `enableKotlinModuleRemapping` for `ShadowJar`. ([#2073](https://github.com/GradleUp/shadow/pull/2073))
1818
Apply `KotlinModuleMetadataTransformer` explicitly to support relocating inside Kotlin module metadata files.
19+
- Deprecate everything under `ShadowCopyAction`. ([#2083](https://github.com/GradleUp/shadow/pull/2083))
1920

2021
### Fixed
2122

src/functionalTest/kotlin/com/github/jengelman/gradle/plugins/shadow/RelocationTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import assertk.assertions.isNotEmpty
1010
import assertk.assertions.isNotEqualTo
1111
import assertk.fail
1212
import com.github.jengelman.gradle.plugins.shadow.internal.mainClassAttributeKey
13-
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowCopyAction.Companion.CONSTANT_TIME_FOR_ZIP_ENTRIES
13+
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar.Companion.CONSTANT_TIME_FOR_ZIP_ENTRIES
1414
import com.github.jengelman.gradle.plugins.shadow.testkit.containsOnly
1515
import com.github.jengelman.gradle.plugins.shadow.testkit.getBytes
1616
import com.github.jengelman.gradle.plugins.shadow.testkit.requireResourceAsPath

src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/internal/Utils.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.github.jengelman.gradle.plugins.shadow.internal
22

3-
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowCopyAction
3+
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar.Companion.CONSTANT_TIME_FOR_ZIP_ENTRIES
44
import java.io.ByteArrayInputStream
55
import java.io.ByteArrayOutputStream
66
import java.nio.charset.Charset
@@ -39,7 +39,7 @@ internal inline fun zipEntry(
3939
time = lastModified
4040
}
4141
} else {
42-
time = ShadowCopyAction.CONSTANT_TIME_FOR_ZIP_ENTRIES
42+
time = CONSTANT_TIME_FOR_ZIP_ENTRIES
4343
}
4444
block()
4545
}

src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowCopyAction.kt

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import com.github.jengelman.gradle.plugins.shadow.relocation.relocatePath
1212
import com.github.jengelman.gradle.plugins.shadow.transformers.ResourceTransformer
1313
import com.github.jengelman.gradle.plugins.shadow.transformers.TransformerContext
1414
import java.io.File
15-
import java.util.GregorianCalendar
1615
import org.apache.tools.zip.UnixStat
1716
import org.apache.tools.zip.Zip64RequiredException
1817
import org.apache.tools.zip.ZipEntry
@@ -31,11 +30,8 @@ import org.gradle.api.tasks.WorkResults
3130
* Modified from
3231
* [org.gradle.api.internal.file.archive.ZipCopyAction.java](https://github.com/gradle/gradle/blob/b893c2b085046677cf858fb3d5ce00e68e556c3a/platforms/core-configuration/file-operations/src/main/java/org/gradle/api/internal/file/archive/ZipCopyAction.java).
3332
*/
34-
public open class ShadowCopyAction
35-
@Deprecated(
36-
"This constructor should not be used as a public API. Will be made internal in Shadow 10."
37-
)
38-
constructor(
33+
@Deprecated("This should not be used as a public API. Will be made internal in Shadow 10.")
34+
public open class ShadowCopyAction(
3935
private val zipFile: File,
4036
private val zosProvider: (File) -> ZipOutputStream,
4137
private val transformers: Set<ResourceTransformer>,
@@ -223,20 +219,18 @@ constructor(
223219
}
224220

225221
public companion object {
226-
private val logger = Logging.getLogger(ShadowCopyAction::class.java)
222+
@Suppress("DEPRECATION") private val logger = Logging.getLogger(ShadowCopyAction::class.java)
227223
private val multiReleaseRegex = "^META-INF/versions/\\d+/".toRegex()
228224

229225
private val ZipOutputStream.entries: List<ZipEntry>
230226
get() =
231227
this::class.java.getDeclaredField("entries").apply { isAccessible = true }.get(this).cast()
232228

233-
/**
234-
* A copy of
235-
* [org.gradle.api.internal.file.archive.ZipEntryConstants.CONSTANT_TIME_FOR_ZIP_ENTRIES].
236-
*
237-
* 1980-02-01 00:00:00 (318182400000).
238-
*/
239-
public val CONSTANT_TIME_FOR_ZIP_ENTRIES: Long =
240-
GregorianCalendar(1980, 1, 1, 0, 0, 0).timeInMillis
229+
@Deprecated(
230+
message =
231+
"Use `ShadowJar.CONSTANT_TIME_FOR_ZIP_ENTRIES` constant instead. This will be removed in Shadow 10.",
232+
replaceWith = ReplaceWith("ShadowJar.CONSTANT_TIME_FOR_ZIP_ENTRIES"),
233+
)
234+
public val CONSTANT_TIME_FOR_ZIP_ENTRIES: Long = ShadowJar.CONSTANT_TIME_FOR_ZIP_ENTRIES
241235
}
242236
}

src/main/kotlin/com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar.kt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import com.github.jengelman.gradle.plugins.shadow.transformers.ResourceTransform
3030
import com.github.jengelman.gradle.plugins.shadow.transformers.ServiceFileTransformer
3131
import java.io.File
3232
import java.io.IOException
33+
import java.util.GregorianCalendar
3334
import java.util.jar.JarFile
3435
import java.util.zip.ZipException
3536
import java.util.zip.ZipFile
@@ -713,6 +714,16 @@ public abstract class ShadowJar : Jar() {
713714
public companion object {
714715
public const val SHADOW_JAR_TASK_NAME: String = "shadowJar"
715716

717+
/**
718+
* A copy of
719+
* [org.gradle.api.internal.file.archive.ZipEntryConstants.CONSTANT_TIME_FOR_ZIP_ENTRIES].
720+
*
721+
* 1980-02-01 00:00:00 (318182400000).
722+
*/
723+
@JvmField
724+
public val CONSTANT_TIME_FOR_ZIP_ENTRIES: Long =
725+
GregorianCalendar(1980, 1, 1, 0, 0, 0).timeInMillis
726+
716727
@get:JvmSynthetic
717728
public inline val TaskContainer.shadowJar: TaskProvider<ShadowJar>
718729
get() = named(SHADOW_JAR_TASK_NAME, ShadowJar::class.java)

0 commit comments

Comments
 (0)