mirror of
https://github.com/storytold/photocraft.git
synced 2026-10-26 10:57:20 -06:00
* Embed PhotoCraft CLI Windows icon and version metadata The CLI crate now sets build to build.rs and takes winresource 0.1 as a build dependency. On a Windows target the script embeds photocraft.ico and sets ProductName to PhotoCraft, FileDescription to PhotoCraft command-line interface, CompanyName to Learning Machines LLC, the shared copyright line, OriginalFilename to photocraft-cli.exe, and InternalName to photocraft-cli. Version strings keep the Cargo package version, including a pre-release tag, and the numeric file and product versions are major.minor.patch.0. A missing resource compiler prints a cargo warning and the link continues, while PHOTOCRAFT_REQUIRE_WINRES makes the script return an error that names rc.exe or windres. package.ps1 runs check-cli-resources.ps1 after the PE subsystem checks and before signing, including SkipBuild artifacts, and that script checks those VERSIONINFO fields against the package version and compares the icon Windows extracts from the CLI with photocraft.ico drawn at 32x32, without launching the binary. docs/releasing.md records the same CLI resource contract beside the existing GUI one. Refs #613 * Drop the untested check-cli-resources.ps1 release gate It has never run on Windows, and a misfiring 200-line gate in package.ps1 would block releases. The CLI build.rs icon/VERSIONINFO stays; PHOTOCRAFT_REQUIRE_WINRES=1 in package.ps1 already makes a missing resource compiler a build error. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com> Co-authored-by: Brandon Thomas <echelon@gmail.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>