icns

Easily create .icns files (Mac Icons) with this Go library or the included CLI.
Log | Files | Refs | LICENSE

commit 7b995cb665238b4cd65050777c8d63d36a5b8b8e
parent 756ab6e2777342468a076de70cf0dccd0ab361fb
Author: Jack Mordaunt <jackmordaunt.dev@gmail.com>
Date:   Sun, 20 Sep 2026 16:52:49 -0300

appicon: record the compiler crash rather than guard against it

A first guess at the trigger would have refused a manifest a shipping app
compiles. The shapes that fail and the ones that do not are written down
instead, since a rule that cannot be defended is worse than none.

Diffstat:
Mappicon/appicon.go | 15+++++++++++++++
1 file changed, 15 insertions(+), 0 deletions(-)

diff --git a/appicon/appicon.go b/appicon/appicon.go @@ -9,6 +9,21 @@ // // Nothing here compiles a bundle. That is actool's work, and it runs only on // macOS; a bundle written by this package is the input it takes. +// +// # A crash worth knowing about +// +// actool from Xcode 26.6 crashes, rather than reporting a problem, on some +// groups that specialise translucency. A group holding only a shadow and +// translucency specialised for the default appearance and for tinted brings +// it down with an exception from inside its own asset selection. The same +// group compiles once it also carries lighting, a blend mode, or a +// translucency for dark, and so does the equivalent group taken from a +// shipping app. +// +// The trigger is not fully characterised, so this package writes what it is +// given and leaves the judgement to the compiler. A bundle that fails to +// compile with an exception rather than an error is worth reshaping before +// it is worth debugging. package appicon import (