Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ant for openSUSE:Factory checked in 
at 2024-07-19 15:25:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ant (Old)
 and      /work/SRC/openSUSE:Factory/.ant.new.17339 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ant"

Fri Jul 19 15:25:58 2024 rev:97 rq:1188402 version:1.10.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/ant/ant-antlr.changes    2024-05-06 
17:52:23.529201116 +0200
+++ /work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes 2024-07-19 
15:26:13.064514672 +0200
@@ -2 +2,12 @@
-Sat May  4 00:53:40 UTC 2024 - Anton Shvetz <[email protected]>
+Thu Jul 18 12:09:04 UTC 2024 - Fridrich Strba <[email protected]>
+
+- Added patches:
+  * reproducible-jar-mtime.patch
+    + make the modification times of files in a jar file
+      reproducible
+  * reproducible-javadoc.patch
+    + make javadoc generation reproducible: don't generate
+      timestamps, and normalize locale and encoding
+
+-------------------------------------------------------------------
+Sat May  4 00:54:38 UTC 2024 - Anton Shvetz <[email protected]>
ant-junit.changes: same change
ant-junit5.changes: same change
--- /work/SRC/openSUSE:Factory/ant/ant.changes  2024-05-06 17:52:23.813211474 
+0200
+++ /work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes       2024-07-19 
15:26:14.460570219 +0200
@@ -1,0 +2,11 @@
+Thu Jul 18 12:09:04 UTC 2024 - Fridrich Strba <[email protected]>
+
+- Added patches:
+  * reproducible-jar-mtime.patch
+    + make the modification times of files in a jar file
+      reproducible
+  * reproducible-javadoc.patch
+    + make javadoc generation reproducible: don't generate
+      timestamps, and normalize locale and encoding
+
+-------------------------------------------------------------------

New:
----
  reproducible-jar-mtime.patch
  reproducible-javadoc.patch

BETA DEBUG BEGIN:
  New:/work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes-- Added 
patches:
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes:  * 
reproducible-jar-mtime.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes-    + make the 
modification times of files in a jar file
--
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit.changes-- Added patches:
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit.changes:  * 
reproducible-jar-mtime.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit.changes-    + make the 
modification times of files in a jar file
--
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit5.changes-- Added patches:
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit5.changes:  * 
reproducible-jar-mtime.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit5.changes-    + make the 
modification times of files in a jar file
--
/work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes-- Added patches:
/work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes:  * 
reproducible-jar-mtime.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes-    + make the 
modification times of files in a jar file
  New:/work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes-      
reproducible
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes:  * 
reproducible-javadoc.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-antlr.changes-    + make javadoc 
generation reproducible: don't generate
--
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit.changes-      reproducible
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit.changes:  * 
reproducible-javadoc.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit.changes-    + make javadoc 
generation reproducible: don't generate
--
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit5.changes-      reproducible
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit5.changes:  * 
reproducible-javadoc.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant-junit5.changes-    + make javadoc 
generation reproducible: don't generate
--
/work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes-      reproducible
/work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes:  * 
reproducible-javadoc.patch
/work/SRC/openSUSE:Factory/.ant.new.17339/ant.changes-    + make javadoc 
generation reproducible: don't generate
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ant-antlr.spec ++++++
--- /var/tmp/diff_new_pack.FRcLbR/_old  2024-07-19 15:26:15.520612398 +0200
+++ /var/tmp/diff_new_pack.FRcLbR/_new  2024-07-19 15:26:15.524612557 +0200
@@ -46,6 +46,8 @@
 Patch6:         apache-ant-xml-apis.patch
 # PATCH-FEATURE-OPENSUSE debian patch to use SOURCE_DATE_EPOCH for timestamp 
in property files
 Patch7:         reproducible-propertyfile-task.patch
+Patch8:         reproducible-jar-mtime.patch
+Patch9:         reproducible-javadoc.patch
 BuildRequires:  antlr-bootstrap
 BuildRequires:  java-devel >= 1.8
 BuildRequires:  javapackages-local >= 6
@@ -395,6 +397,8 @@
 %patch -P 5 -p1
 %patch -P 6 -p1
 %patch -P 7 -p1
+%patch -P 8 -p1
+%patch -P 9 -p1
 
 # clean jar files
 find . -name "*.jar" -print -delete

ant-junit.spec: same change
ant-junit5.spec: same change
++++++ ant.spec ++++++
--- /var/tmp/diff_new_pack.FRcLbR/_old  2024-07-19 15:26:15.624616536 +0200
+++ /var/tmp/diff_new_pack.FRcLbR/_new  2024-07-19 15:26:15.624616536 +0200
@@ -45,6 +45,8 @@
 Patch6:         apache-ant-xml-apis.patch
 # PATCH-FEATURE-OPENSUSE debian patch to use SOURCE_DATE_EPOCH for timestamp 
in property files
 Patch7:         reproducible-propertyfile-task.patch
+Patch8:         reproducible-jar-mtime.patch
+Patch9:         reproducible-javadoc.patch
 BuildRequires:  antlr-bootstrap
 BuildRequires:  java-devel >= 1.8
 BuildRequires:  javapackages-local >= 6
@@ -394,6 +396,8 @@
 %patch -P 5 -p1
 %patch -P 6 -p1
 %patch -P 7 -p1
+%patch -P 8 -p1
+%patch -P 9 -p1
 
 # clean jar files
 find . -name "*.jar" -print -delete


++++++ reproducible-jar-mtime.patch ++++++
--- apache-ant-1.10.14/src/main/org/apache/tools/ant/taskdefs/Jar.java  
2024-07-16 14:41:00.996055227 +0200
+++ apache-ant-1.10.14/src/main/org/apache/tools/ant/taskdefs/Jar.java  
2024-07-16 14:52:07.583866195 +0200
@@ -450,6 +450,13 @@
         serviceList.add(service);
     }
 
+    private long currentTimeMillisOrSourceDateEpoch() {
+        if ( System.getenv("SOURCE_DATE_EPOCH") != null ) {
+            return 1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"));
+        }
+        return System.currentTimeMillis();
+    }
+
     /**
      * Write SPI Information to JAR
      */
@@ -459,7 +466,7 @@
                 //stolen from writeManifest
                super.zipFile(is, zOut,
                              "META-INF/services/" + service.getType(),
-                             System.currentTimeMillis(), null,
+                             currentTimeMillisOrSourceDateEpoch(), null,
                              ZipFileSet.DEFAULT_FILE_MODE);
            }
         }
@@ -579,7 +586,7 @@
             new ByteArrayInputStream(baos.toByteArray());
         try {
             super.zipFile(bais, zOut, MANIFEST_NAME,
-                          System.currentTimeMillis(), null,
+                          currentTimeMillisOrSourceDateEpoch(), null,
                           ZipFileSet.DEFAULT_FILE_MODE);
         } finally {
             // not really required
@@ -656,7 +663,7 @@
         writer.close();
         try (ByteArrayInputStream bais =
             new ByteArrayInputStream(baos.toByteArray())) {
-            super.zipFile(bais, zOut, INDEX_NAME, System.currentTimeMillis(),
+            super.zipFile(bais, zOut, INDEX_NAME, 
currentTimeMillisOrSourceDateEpoch(),
                           null, ZipFileSet.DEFAULT_FILE_MODE);
         }
     }
--- apache-ant-1.10.14/src/main/org/apache/tools/ant/taskdefs/Zip.java  
2024-07-16 14:41:00.999388566 +0200
+++ apache-ant-1.10.14/src/main/org/apache/tools/ant/taskdefs/Zip.java  
2024-07-17 14:27:00.917945219 +0200
@@ -682,6 +682,7 @@
                     "Failed to create missing parent directory for %s",
                     zipFile);
             }
+            parent.setLastModified(currentTimeMillisOrSourceDateEpoch());
 
             updatedFile = true;
             if (!zipFile.exists() && state.isWithoutAnyResources()) {
@@ -1669,6 +1670,13 @@
             extra);
     }
 
+    private long currentTimeMillisOrSourceDateEpoch() {
+        if ( System.getenv("SOURCE_DATE_EPOCH") != null ) {
+            return 1000 * Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"));
+        }
+        return System.currentTimeMillis();
+    }
+
     /**
      * Add a directory to the zip stream.
      * @param dir  the directory to add to the archive
@@ -1708,7 +1716,7 @@
             } else if (dir != null && dir.isExists()) {
                 ze.setTime(dir.getLastModified() + millisToAdd);
             } else {
-                ze.setTime(System.currentTimeMillis() + millisToAdd);
+                ze.setTime(currentTimeMillisOrSourceDateEpoch() + millisToAdd);
             }
             ze.setSize(0);
             ze.setMethod(ZipEntry.STORED);
@@ -1794,7 +1802,11 @@
 
         if (!skipWriting) {
             final ZipEntry ze = new ZipEntry(vPath);
-            ze.setTime(fixedModTime != null ? modTimeMillis : lastModified);
+            long newLastModified = lastModified;
+            if ( System.getenv("SOURCE_DATE_EPOCH") != null ) {
+                newLastModified = 1000 * 
Long.parseLong(System.getenv("SOURCE_DATE_EPOCH"));
+            }
+            ze.setTime(fixedModTime != null ? modTimeMillis : newLastModified);
             ze.setMethod(doCompress ? ZipEntry.DEFLATED : ZipEntry.STORED);
             // if the input stream doesn't support mark/reset ability, we wrap 
it in a
             // stream that adds that support.

++++++ reproducible-javadoc.patch ++++++
--- apache-ant-1.10.14/src/main/org/apache/tools/ant/taskdefs/Javadoc.java      
2024-07-17 15:06:13.718343866 +0200
+++ apache-ant-1.10.14/src/main/org/apache/tools/ant/taskdefs/Javadoc.java      
2024-07-18 14:51:50.362329096 +0200
@@ -1297,6 +1297,15 @@
     }
 
     /**
+     * Control generation of timestamps.
+     *
+     * @param b if true, don't generate timestamps.
+     */
+    public void setNoTimestamp(final boolean b) {
+        addArgIf(b, "-notimestamp");
+    }
+
+    /**
      * Create link to Javadoc output at the given URL.
      *
      * @return link argument to configure
@@ -1807,6 +1816,19 @@
      */
     @Override
     public void execute() throws BuildException {
+        if (System.getenv("SOURCE_DATE_EPOCH") != null) {
+            java.util.List<String> arguments = 
java.util.Arrays.asList(cmd.getCommandline());
+            if (!arguments.contains("-locale")) {
+                setLocale("en");
+            }
+            if (!arguments.contains("-encoding")) {
+                setEncoding("UTF-8");
+            }
+            if (!arguments.contains("-notimestamp")) {
+                setNoTimestamp(true);
+            }
+        }
+
         checkTaskName();
 
         final List<String> packagesToDoc = new Vector<>();

Reply via email to