From d7cf202568a1bbe89fddb27fd8acff0954d3b07f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 17:46:48 +0000 Subject: [PATCH 1/7] Initial plan From 00aaae3800831ede436863c2835b9ed4d4fe4929 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 17:49:15 +0000 Subject: [PATCH 2/7] Merge version scripts and update nightly tag from -mdev to -nightly Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com> --- package.json | 2 +- pio-scripts/set_nightly_version.py | 11 ----------- pio-scripts/set_version.py | 21 +++++++++++++++++++++ platformio.ini | 1 - 4 files changed, 22 insertions(+), 13 deletions(-) delete mode 100644 pio-scripts/set_nightly_version.py diff --git a/package.json b/package.json index f3e5f4340e..fbae7ecc0a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wled", - "version": "14.7.2-mdev", + "version": "14.7.2-nightly", "description": "Tools for WLED-MM project", "main": "tools/cdata.js", "directories": { diff --git a/pio-scripts/set_nightly_version.py b/pio-scripts/set_nightly_version.py deleted file mode 100644 index 176cd98848..0000000000 --- a/pio-scripts/set_nightly_version.py +++ /dev/null @@ -1,11 +0,0 @@ -Import('env') -import os -from datetime import datetime, timezone - -# Only set VERSION if this is a nightly build (indicated by environment variable) -if os.environ.get('WLED_NIGHTLY_BUILD') == 'true': - # VERSION format: yymmddb (b = build number, 0 for nightly) - version_code = datetime.now(timezone.utc).strftime("%y%m%d") + "0" - env.Append(BUILD_FLAGS=[f"-DWLED_BUILD_VERSION={version_code}"]) - print(f"Nightly build: Setting VERSION to {version_code}") - diff --git a/pio-scripts/set_version.py b/pio-scripts/set_version.py index 1d8e076ea8..7391271b59 100644 --- a/pio-scripts/set_version.py +++ b/pio-scripts/set_version.py @@ -1,8 +1,29 @@ Import('env') import json +import os +from datetime import datetime, timezone PACKAGE_FILE = "package.json" with open(PACKAGE_FILE, "r") as package: version = json.load(package)["version"] + + # Handle nightly build + if os.environ.get('WLED_NIGHTLY_BUILD') == 'true': + # VERSION format: yymmddb (b = build number, 0 for nightly) + version_code = datetime.now(timezone.utc).strftime("%y%m%d") + "0" + env.Append(BUILD_FLAGS=[f"-DWLED_BUILD_VERSION={version_code}"]) + print(f"Nightly build: Setting VERSION to {version_code}") + + # Update version tag: replace "-mdev" with "-nightly" or append "-nightly" if no tag + if "-mdev" in version: + version = version.replace("-mdev", "-nightly") + elif "-" in version: + # Has some other tag, replace it with -nightly + version = version.split("-")[0] + "-nightly" + else: + # No tag present, append -nightly + version = version + "-nightly" + print(f"Nightly build: Using version string {version}") + env.Append(BUILD_FLAGS=[f"-DWLED_VERSION={version}"]) diff --git a/platformio.ini b/platformio.ini index d32b791708..674049a572 100644 --- a/platformio.ini +++ b/platformio.ini @@ -224,7 +224,6 @@ ldscript_16m14m = eagle.flash.16m14m.ld [scripts_defaults] extra_scripts = pre:pio-scripts/set_version.py - pre:pio-scripts/set_nightly_version.py pre:pio-scripts/build_ui.py pre:pio-scripts/conditional_usb_mode.py pre:pio-scripts/set_repo.py From 4e48a31815bf97df388ad147b48a19f0fdc0a590 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 17:52:45 +0000 Subject: [PATCH 3/7] Refactor set_version.py for better code organization Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com> --- pio-scripts/set_version.py | 41 +++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/pio-scripts/set_version.py b/pio-scripts/set_version.py index 7391271b59..f5abb6064b 100644 --- a/pio-scripts/set_version.py +++ b/pio-scripts/set_version.py @@ -1,29 +1,30 @@ -Import('env') +Import('env') # PlatformIO-specific import import json import os from datetime import datetime, timezone PACKAGE_FILE = "package.json" +# Read version from package.json with open(PACKAGE_FILE, "r") as package: version = json.load(package)["version"] + +# Handle nightly build +if os.environ.get('WLED_NIGHTLY_BUILD') == 'true': + # VERSION format: yymmddb (b = build number, 0 for nightly) + version_code = datetime.now(timezone.utc).strftime("%y%m%d") + "0" + env.Append(BUILD_FLAGS=[f"-DWLED_BUILD_VERSION={version_code}"]) + print(f"Nightly build: Setting VERSION to {version_code}") - # Handle nightly build - if os.environ.get('WLED_NIGHTLY_BUILD') == 'true': - # VERSION format: yymmddb (b = build number, 0 for nightly) - version_code = datetime.now(timezone.utc).strftime("%y%m%d") + "0" - env.Append(BUILD_FLAGS=[f"-DWLED_BUILD_VERSION={version_code}"]) - print(f"Nightly build: Setting VERSION to {version_code}") - - # Update version tag: replace "-mdev" with "-nightly" or append "-nightly" if no tag - if "-mdev" in version: - version = version.replace("-mdev", "-nightly") - elif "-" in version: - # Has some other tag, replace it with -nightly - version = version.split("-")[0] + "-nightly" - else: - # No tag present, append -nightly - version = version + "-nightly" - print(f"Nightly build: Using version string {version}") - - env.Append(BUILD_FLAGS=[f"-DWLED_VERSION={version}"]) + # Update version tag: replace "-mdev" with "-nightly" or append "-nightly" if no tag + if "-mdev" in version: + version = version.replace("-mdev", "-nightly") + elif "-" in version: + # Has some other tag, replace it with -nightly + version = version.split("-")[0] + "-nightly" + else: + # No tag present, append -nightly + version = version + "-nightly" + print(f"Nightly build: Using version string {version}") + +env.Append(BUILD_FLAGS=[f"-DWLED_VERSION={version}"]) From 9c881e0f7ee20b836153011e11de90b2e006c323 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 17:53:42 +0000 Subject: [PATCH 4/7] Improve version tag handling for multi-hyphen versions Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com> --- pio-scripts/set_version.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pio-scripts/set_version.py b/pio-scripts/set_version.py index f5abb6064b..5a68ba29c6 100644 --- a/pio-scripts/set_version.py +++ b/pio-scripts/set_version.py @@ -5,7 +5,6 @@ PACKAGE_FILE = "package.json" -# Read version from package.json with open(PACKAGE_FILE, "r") as package: version = json.load(package)["version"] @@ -20,8 +19,8 @@ if "-mdev" in version: version = version.replace("-mdev", "-nightly") elif "-" in version: - # Has some other tag, replace it with -nightly - version = version.split("-")[0] + "-nightly" + # Replace any existing tag with -nightly (handles multiple hyphens correctly) + version = version.rsplit("-", 1)[0] + "-nightly" else: # No tag present, append -nightly version = version + "-nightly" From 16d3d10bb327af95c8fc56607725458466bad9f2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 17:58:20 +0000 Subject: [PATCH 5/7] Revert package.json to keep original -mdev tag Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com> --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fbae7ecc0a..f3e5f4340e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wled", - "version": "14.7.2-nightly", + "version": "14.7.2-mdev", "description": "Tools for WLED-MM project", "main": "tools/cdata.js", "directories": { From 7c68b206ab045d763aed8cd7571ce7a407df1513 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 18:05:29 +0000 Subject: [PATCH 6/7] Remove redundant -mdev check as suggested by @softhack007 Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com> --- pio-scripts/set_version.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pio-scripts/set_version.py b/pio-scripts/set_version.py index 5a68ba29c6..794e8756a1 100644 --- a/pio-scripts/set_version.py +++ b/pio-scripts/set_version.py @@ -15,10 +15,8 @@ env.Append(BUILD_FLAGS=[f"-DWLED_BUILD_VERSION={version_code}"]) print(f"Nightly build: Setting VERSION to {version_code}") - # Update version tag: replace "-mdev" with "-nightly" or append "-nightly" if no tag - if "-mdev" in version: - version = version.replace("-mdev", "-nightly") - elif "-" in version: + # Update version tag: replace existing tag with "-nightly" or append "-nightly" if no tag + if "-" in version: # Replace any existing tag with -nightly (handles multiple hyphens correctly) version = version.rsplit("-", 1)[0] + "-nightly" else: From 74aab68e612837fa34a10cd4ecc0c12aa54658f5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 25 Jan 2026 19:28:55 +0000 Subject: [PATCH 7/7] Make environment variable check more robust as suggested by @softhack007 Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com> --- pio-scripts/set_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pio-scripts/set_version.py b/pio-scripts/set_version.py index 794e8756a1..4f9dc0ce64 100644 --- a/pio-scripts/set_version.py +++ b/pio-scripts/set_version.py @@ -9,7 +9,7 @@ version = json.load(package)["version"] # Handle nightly build -if os.environ.get('WLED_NIGHTLY_BUILD') == 'true': +if os.environ.get('WLED_NIGHTLY_BUILD', '').lower() in ('true', '1', 'yes'): # VERSION format: yymmddb (b = build number, 0 for nightly) version_code = datetime.now(timezone.utc).strftime("%y%m%d") + "0" env.Append(BUILD_FLAGS=[f"-DWLED_BUILD_VERSION={version_code}"])