Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package seamonkey for openSUSE:Factory 
checked in at 2023-10-02 20:06:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/seamonkey (Old)
 and      /work/SRC/openSUSE:Factory/.seamonkey.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "seamonkey"

Mon Oct  2 20:06:24 2023 rev:25 rq:1114607 version:2.53.17.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/seamonkey/seamonkey.changes      2023-09-22 
21:50:21.531274497 +0200
+++ /work/SRC/openSUSE:Factory/.seamonkey.new.28202/seamonkey.changes   
2023-10-02 20:08:59.116239564 +0200
@@ -1,0 +2,5 @@
+Thu Sep 28 20:29:03 UTC 2023 - Bernhard Wiedemann <bwiedem...@suse.com>
+
+- Add reproducible.patch to override build date (boo#1047218)
+
+-------------------------------------------------------------------

New:
----
  reproducible.patch

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

Other differences:
------------------
++++++ seamonkey.spec ++++++
--- /var/tmp/diff_new_pack.7rTqJ7/_old  2023-10-02 20:09:02.096346737 +0200
+++ /var/tmp/diff_new_pack.7rTqJ7/_new  2023-10-02 20:09:02.096346737 +0200
@@ -92,6 +92,7 @@
 Patch3:         mozilla-ntlm-full-path.patch
 Patch4:         seamonkey-lto.patch
 Patch5:         seamonkey-man-page.patch
+Patch6:         reproducible.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 PreReq:         /bin/sh coreutils
 Provides:       seamonkey-mail = %{version}
@@ -223,6 +224,7 @@
 %patch3 -p2
 %patch4 -p1
 %patch5 -p0
+%patch6 -p1
 
 cat << EOF > .mozconfig
 mk_add_options MOZILLA_OFFICIAL=1

++++++ reproducible.patch ++++++
https://github.com/mozilla/gecko-dev/commit/025982b6714051c747dcb9600d6e5c92d2dcaf7b

>From 025982b6714051c747dcb9600d6e5c92d2dcaf7b Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.courno...@gmail.com>
Date: Thu, 16 Mar 2023 14:01:58 +0000
Subject: [PATCH] Bug 1817032 - Honor SOURCE_DATE_EPOCH to build langpacks
 reproducibly. r=eem...@mozilla.com

Differential Revision: https://phabricator.services.mozilla.com/D169979
---
 .../mozbuild/action/langpack_manifest.py        | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py 
b/python/mozbuild/mozbuild/action/langpack_manifest.py
index f82a329cc..10e42fe99 100644
--- a/python/mozbuild/mozbuild/action/langpack_manifest.py
+++ b/python/mozbuild/mozbuild/action/langpack_manifest.py
@@ -16,6 +16,7 @@ import os
 import json
 import io
 import datetime
+import time
 import requests
 import mozversioncontrol
 import mozpack.path as mozpath
@@ -36,9 +37,17 @@ def write_file(path, content):
 pushlog_api_url = "{0}/json-rev/{1}"
 
 
+def get_build_date():
+    """Return the current date or SOURCE_DATE_EPOCH, if set."""
+    return datetime.datetime.utcfromtimestamp(
+        int(os.environ.get("SOURCE_DATE_EPOCH", time.time()))
+    )
+
+
 ###
-# Retrievers a UTC datetime of the push for the current commit
-# from a mercurial clone directory.
+# Retrieves a UTC datetime of the push for the current commit from a
+# mercurial clone directory. The SOURCE_DATE_EPOCH environment
+# variable is honored, for reproducibility.
 #
 # Args:
 #    path (str) - path to a directory
@@ -54,7 +63,7 @@ def get_dt_from_hg(path):
     with mozversioncontrol.get_repository_object(path=path) as repo:
         phase = repo._run("log", "-r", ".", "-T" "{phase}")
         if phase.strip() != "public":
-            return datetime.datetime.utcnow()
+            return get_build_date()
         repo_url = repo._run("paths", "default")
         repo_url = repo_url.strip().replace("ssh://", "https://";)
         repo_url = repo_url.replace("hg://", "https://";)
@@ -99,7 +108,7 @@ def get_timestamp_for_locale(path):
         dt = get_dt_from_hg(path)
 
     if dt is None:
-        dt = datetime.datetime.utcnow()
+        dt = get_build_date()
 
     dt = dt.replace(microsecond=0)
     return dt.strftime("%Y%m%d%H%M%S")

Reply via email to