From 58e5d2738c6cdd8f241edf120e61503c4724edf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Montiel=20Cardona?= Date: Sat, 11 Jul 2026 02:50:55 -0600 Subject: [PATCH] ci(publish): stamp a rolling BUSL Change Date (release + 4 years) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Each published version now gets its Change Date set to the release date plus four years at pack time, so every release carries its own full 4-year BUSL window before converting to MIT — instead of a fixed date that would shrink the window for later releases. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/publish.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index c840086..99147f9 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -60,6 +60,22 @@ jobs: --no-build --logger "console;verbosity=normal" + # ── Rolling BUSL Change Date: stamp each packed license file with + # (release date + 4 years) so every published version gets a full + # 4-year BUSL window before it converts to the Change License (MIT). ── + - name: Stamp BUSL Change Date (release + 4 years) + run: | + CHANGE_DATE=$(date -u -d "+4 years" +%Y-%m-%d) + stamped=0 + for f in LICENSE-BUSL.txt LICENSE; do + if [ -f "$f" ] && grep -qE '^Change Date:' "$f"; then + sed -i -E "s|^(Change Date: +).*|\1$CHANGE_DATE|" "$f" + echo "$f -> Change Date $CHANGE_DATE" + stamped=1 + fi + done + [ "$stamped" = 1 ] || { echo "::error::no BUSL license file with a Change Date found"; exit 1; } + # ── Pack ──────────────────────────────────────────────────────────────── - name: Pack RP2040Sharp run: >