From 2afaccac9b992e5b5877499423a25621e833f81f Mon Sep 17 00:00:00 2001 From: Sparsh Sam <110058692+sparshsam@users.noreply.github.com> Date: Sun, 2 Aug 2026 21:17:01 -0400 Subject: [PATCH] fix(build): resolve MSIX source icon under assets/branding after v1.2.5 move - create_msix_placeholder_pngs.py looked for assets/pdfreader_by_sparsh.ico and assets/icon-150x150.png, which the v1.2.5 branding restructure moved to assets/branding/. The release workflow's MSIX build failed with "No source icon found". Now searches both assets/ and assets/branding/, preferring the .ico and falling back to the PNG. Co-Authored-By: Claude --- tools/create_msix_placeholder_pngs.py | 30 ++++++++++++++------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/tools/create_msix_placeholder_pngs.py b/tools/create_msix_placeholder_pngs.py index 58b5904..76d7295 100644 --- a/tools/create_msix_placeholder_pngs.py +++ b/tools/create_msix_placeholder_pngs.py @@ -38,22 +38,24 @@ def make_png_rect(img: Image.Image, width: int, height: int) -> Image.Image: def main(): root = Path(__file__).resolve().parents[1] - source_path = root / "assets" / "pdfreader_by_sparsh.ico" output_dir = Path(sys.argv[1]) if len(sys.argv) > 1 else root / "assets" - # Load from .ico or find source PNG - if source_path.exists(): - img = Image.open(source_path) - # .ico loads first frame; get full size - img = img.convert("RGBA") - else: - # Fallback: try a source PNG - png_path = root / "assets" / "icon-150x150.png" - if png_path.exists(): - img = Image.open(png_path).convert("RGBA") - else: - print("ERROR: No source icon found. Run tools/create_icon.py first.") - sys.exit(1) + # Source icon lives under assets/ or assets/branding/ (moved during the + # v1.2.5 asset restructuring). Try both locations so MSIX builds keep + # working regardless of layout. Prefer the .ico, fall back to a PNG. + img = None + for icon_dir in (root / "assets", root / "assets" / "branding"): + ico = icon_dir / "pdfreader_by_sparsh.ico" + if ico.exists(): + img = Image.open(ico).convert("RGBA") + break + png = icon_dir / "icon-150x150.png" + if png.exists(): + img = Image.open(png).convert("RGBA") + break + if img is None: + print("ERROR: No source icon found. Run tools/create_icon.py first.") + sys.exit(1) output_dir.mkdir(parents=True, exist_ok=True)