gnodet commented on code in PR #599:
URL: https://github.com/apache/maven-jar-plugin/pull/599#discussion_r4089176620
##########
src/main/java/org/apache/maven/plugins/jar/AbstractJarMojo.java:
##########
@@ -50,6 +50,20 @@
* @author Martin Desruisseaux
*/
public abstract class AbstractJarMojo implements
org.apache.maven.api.plugin.Mojo {
+ /**
+ * Minimum Unix time (seconds since epoch) accepted by the {@code jar}
tool.
+ * The {@code jar} tool enforces that all ZIP entry timestamps fall within
the range
+ * {@code 1980-01-01T00:00:02Z} to {@code 2099-12-31T23:59:59Z}.
+ * The lower bound is {@code T00:00:02Z} rather than {@code T00:00:00Z}
because
+ * {@code 1980-01-01T00:00:00Z} is a sentinel value ({@code
DOSTIME_BEFORE_1980}) in the
+ * JDK ZIP implementation that causes extra timezone metadata to be
written, breaking
+ * reproducibility (see JDK-8246129). The next instant after that sentinel
representable
+ * in MS-DOS time (which has 2-second granularity) is {@code T00:00:02Z}.
Review Comment:
Fixed in 020f347: 'causes' → 'caused (fixed in JDK 15, see JDK-8246129)'.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]