Skip to content

Commit d538736

Browse files
committed
Always use package.json for WLED_VERSION
Ensures consistency between UI and metadata; fixes release bin names.
1 parent b268aea commit d538736

File tree

2 files changed

+11
-14
lines changed

2 files changed

+11
-14
lines changed

pio-scripts/output_bins.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import os
33
import shutil
44
import gzip
5+
import json
56

67
OUTPUT_DIR = "build_output{}".format(os.path.sep)
78
#OUTPUT_DIR = os.path.join("build_output")
@@ -22,7 +23,8 @@ def create_release(source):
2223
release_name_def = _get_cpp_define_value(env, "WLED_RELEASE_NAME")
2324
if release_name_def:
2425
release_name = release_name_def.replace("\\\"", "")
25-
version = _get_cpp_define_value(env, "WLED_VERSION")
26+
with open("package.json", "r") as package:
27+
version = json.load(package)["version"]
2628
release_file = os.path.join(OUTPUT_DIR, "release", f"WLED_{version}_{release_name}.bin")
2729
release_gz_file = release_file + ".gz"
2830
print(f"Copying {source} to {release_file}")

pio-scripts/set_metadata.py

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -76,15 +76,13 @@ def get_github_repo():
7676
# Any other unexpected error
7777
return None
7878

79-
PACKAGE_FILE = "package.json"
80-
81-
def get_version():
82-
try:
83-
with open(PACKAGE_FILE, "r") as package:
84-
return json.load(package)["version"]
85-
except (FileNotFoundError, KeyError, json.JSONDecodeError):
86-
return None
87-
79+
# WLED version is managed by package.json; this is picked up in several places
80+
# - It's integrated in to the UI code
81+
# - Here, for wled_metadata.cpp
82+
# - The output_bins script
83+
# We always take it from package.json to ensure consistency
84+
with open("package.json", "r") as package:
85+
WLED_VERSION = json.load(package)["version"]
8886

8987
def has_def(cppdefs, name):
9088
""" Returns true if a given name is set in a CPPDEFINES collection """
@@ -104,10 +102,7 @@ def add_wled_metadata_flags(env, node):
104102
if repo:
105103
cdefs.append(("WLED_REPO", f"\\\"{repo}\\\""))
106104

107-
if not has_def(cdefs, "WLED_VERSION"):
108-
version = get_version()
109-
if version:
110-
cdefs.append(("WLED_VERSION", version))
105+
cdefs.append(("WLED_VERSION", WLED_VERSION))
111106

112107
# This transforms the node in to a Builder; it cannot be modified again
113108
return env.Object(

0 commit comments

Comments
 (0)