From 12e259816c3f7cc03d1294ad452a3ee969595e3e Mon Sep 17 00:00:00 2001 From: AJ-Gonzalez Date: Sat, 3 Oct 2026 09:58:49 -0600 Subject: [PATCH] fix(packaging): make build_macos_signed.sh entitlements check pass codesign -d --entitlements - now prefixes a text header line, so the plist parse hit InvalidFileException; --xml emits clean XML (same workaround as release.yml). Python 3.14's plistlib.load also rejects a non-seekable pipe, so buffer stdin first. Without this the script exits before the dmg step after a successful build and ad-hoc sign. --- packaging/build_macos_signed.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/build_macos_signed.sh b/packaging/build_macos_signed.sh index e1566049e..a073354fd 100755 --- a/packaging/build_macos_signed.sh +++ b/packaging/build_macos_signed.sh @@ -121,8 +121,8 @@ else -s "$DEVELOPER_ID" "$APP" fi codesign --verify --deep --strict --verbose=2 "$APP" -codesign -d --entitlements - "$APP/Contents/PlugIns/DWGThumbnail.appex" \ - | python3 -c 'import plistlib, sys; assert plistlib.load(sys.stdin.buffer).get("com.apple.security.app-sandbox") is True' +codesign -d --entitlements - --xml "$APP/Contents/PlugIns/DWGThumbnail.appex" \ + | python3 -c 'import io, plistlib, sys; assert plistlib.load(io.BytesIO(sys.stdin.buffer.read())).get("com.apple.security.app-sandbox") is True' echo "==> dmg" DMG="$DIST/OpenCADStudio-v$VERSION-macos-arm64.dmg"