Post

Replies

Boosts

Views

Activity

Reply to CFBundleIdentifier Collision submitting app with Canon EDSDK
A 100K foot question. I am trying to submit this for notarization so I can distribute the App on the Mac App Store. I believe this requires that I bundle the framework within my App. Is that the way Apple foresees signed 3rd party frameworks being distributed?  The notarization process appears to require everything so bundled to have unique identifiers and be signed with my Developer Certificate. It seems to ignore "Disable Library Validation Entitlement” even though it is listed as one of the App’s entitlements. However, changing the signing and identifiers breaks the framework. How are other users of 3rd party frameworks handling this?
Aug ’21
Reply to CFBundleIdentifier Collision submitting app with Canon EDSDK
I could also remove the "Disable Library Validation" and run with a fully hardened runtime. IMO this is an incorrect approach. Disabling library validation only makes sense in a limited set of circumstances [1] and using a third-party framework is not one of them I think this was caught in a double negative. I currently have to use Disable Library Validation since my current build uses the Library with Canon Signing. If I change the signing to my own then I will be able to run with a fully enabled Hardened Runtime
Aug ’21
Reply to CFBundleIdentifier Collision submitting app with Canon EDSDK
I verified that I can (and should) resign the 3 parts as follows. Doing so allows you to run with a fully hardened runtime. where Ψ is the name of an apple distribution certificate my-machine  Framework % codesign -vvv -f --remove-signature EDSDK.framework/Versions/A/CHHLLite.bundle  EDSDK.framework/Versions/A/CHHLLite.bundle: replacing existing signature EDSDK.framework/Versions/A/CHHLLite.bundle: signed  [] my-machine  Framework % codesign -vvv -f --remove-signature EDSDK.framework/Versions/A/EdsImage.bundle  EDSDK.framework/Versions/A/EdsImage.bundle: replacing existing signature EDSDK.framework/Versions/A/EdsImage.bundle: signed  [] my-machine  Framework % codesign -vvv -f --remove-signature EDSDK.framework/Versions/A/EDSDK           EDSDK.framework/Versions/A/EDSDK: replacing existing signature EDSDK.framework/Versions/A/EDSDK: signed  [] my-machine  Framework % codesign -f -v -s Ψ EDSDK.framework/Versions/A/EdsImage.bundle EDSDK.framework/Versions/A/EdsImage.bundle: signed bundle with Mach-O thin (x86_64) [com.canon.EdsImage] my-machine  Framework % codesign -f -v -s Ψ EDSDK.framework/Versions/A/CHHLLite.bundle  EDSDK.framework/Versions/A/CHHLLite.bundle: signed bundle with Mach-O thin (x86_64) [jp.co.canon.CHHLLite] my-machine  Framework % codesign -f -v -s Ψ EDSDK.framework/Versions/A/EDSDK           EDSDK.framework/Versions/A/EDSDK: signed bundle with Mach-O thin (x86_64) [com.canon.edsdk] In Xcode you should select Frameworks, Libraries,.. to "embed and sign", Link Binary with libraries, and Embed Frameworks Note that the subject issue remains open.
Aug ’21
Reply to Not able to find user generated alerts in XCTest on Ventura
I used the Accessibility tool and the alert shows This worked fine when I ran the test under Catalina/Big Sur It is not a system dialog. It is one that my app posts when a scenario condition is not met. I am not sure what you are asking WRT the bundle of the test run. The code I am currently using does the search as found = app.alerts.firstMatch.waitForExistence(timeout: 5.0) let ackdialog = app.alerts.firstMatch I have also tried posting the dialog using beginSheetModal and then searching for a sheet.
Jun ’23
Reply to Not able to find user generated alerts in XCTest on Ventura
this is what Xcode sees The alert is actually queued for display while the Total Eclipse Editor dialog is being created and then displayed once that window appears when it is legal to post alerts. In other words it appears immediately, but I added the fudge of waiting since I am now running on a Studio instead of a Mac Pro 2013. The "Save Prefs" button is the previous configuration dialog.
Jun ’23
Reply to XCODE 15.0.1 causes "different Team ID" when loading 3rd party framework
I have some more info on this. The 3rd party developer package contains a framework and two bundles. The framework IS getting resigned to agree with my certificate but the bundles have not been. The framework tries to load one of the bundles which causes /Users/{user}/Library/Developer/Xcode/DerivedData/CaptureEclipse-evfrpkqsoswzwsgrcttvdaqskqfx/Build/Products/Debug/CaptureEclipse.app/Contents/Frameworks/{vendor}.framework/Versions/A/{vendor}Image.bundle/Contents/MacOS/{vendor}Image' not valid for use in process: mapping process and mapped file (non-platform) have different Team IDs) At the moment this does not appear to be fatal {for me} since neither my app nor the framework seems to call into the bundle, but this is likely causing log entries. I tried adding the bundles as Embedded content and as "Copy Bundle Resources" but neither made a difference I ported by project back to Ventura and Monterey machines so I could test with Xcode 14 and 13. I must have not noticed these errors before.
Dec ’23