This is an automated email from the ASF dual-hosted git repository.

wu-sheng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-horizon-ui.git


The following commit(s) were added to refs/heads/main by this push:
     new 6586a29  release: pin 2017 as the fixed founding year in the 
NOTICE-year fallback
6586a29 is described below

commit 6586a29d71dd1a43104ab400f6c52616308d9e60
Author: Wu Sheng <[email protected]>
AuthorDate: Thu May 21 10:28:55 2026 +0800

    release: pin 2017 as the fixed founding year in the NOTICE-year fallback
    
    Encode SkyWalking's 2017 ASF inception as a FOUNDING_YEAR constant so the
    copyright span always opens at 2017 even on the fallback path (root NOTICE
    unreadable) — previously the fallback emitted only the current year. The
    committed root NOTICE stays the source of truth; output unchanged.
---
 scripts/collect-dist-licenses.mjs | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/scripts/collect-dist-licenses.mjs 
b/scripts/collect-dist-licenses.mjs
index ea311e7..ccc78b8 100644
--- a/scripts/collect-dist-licenses.mjs
+++ b/scripts/collect-dist-licenses.mjs
@@ -203,17 +203,22 @@ function readPkgJson(pkgPath) {
 // Read the copyright year from the committed root NOTICE so the generated
 // binary NOTICE is reproducible (a wall-clock year would drift every Jan 1
 // and break the CI diff).
+// Apache SkyWalking entered the ASF in 2017 — the fixed founding year that
+// opens every SkyWalking copyright span. Only the end year advances.
+const FOUNDING_YEAR = 2017;
+
 function noticeYear() {
   try {
     const txt = readFileSync(resolve(repoRoot, 'NOTICE'), 'utf8');
-    // Capture the full copyright span (e.g. `2017-2026`), not just the
-    // first year — Apache SkyWalking dates from its 2017 ASF inception.
+    // The committed root NOTICE is the source of truth (keeps the binary
+    // NOTICE reproducible). Capture the full span (e.g. `2017-2026`).
     const m = txt.match(/Copyright\s+(\d{4}(?:-\d{4})?)\s+The Apache Software 
Foundation/);
     if (m) return m[1];
   } catch {
-    /* fall through */
+    /* fall through to the founding-year-anchored fallback */
   }
-  return String(new Date().getUTCFullYear());
+  const now = new Date().getUTCFullYear();
+  return now > FOUNDING_YEAR ? `${FOUNDING_YEAR}-${now}` : 
String(FOUNDING_YEAR);
 }
 
 // Apache-produced dependencies whose NOTICE is just the generic ASF

Reply via email to