I haven't been able to notarize my macOS app for the past two days. Now, I believe this is an issue with the notarization process because I've tried notarizing the default app that's provided whenever you open a new Swift application, but that completely failed as well.
And I've been waiting for the past two days and it's been stuck on in progress. This is the second time this has happened to me in the past two months and oftentimes I have to wait more than a day or two for the notarization to occur. I just, I don't understand why it's deadlocked like this.
I've done nothing. I haven't changed my certificates. I haven't done any different configurations within my Mac. The last time that this happened, the issue went away after two days, but my biggest concern right now is that if this happens whenever we need to urgently push updates, we can't.
I have absolutely no idea what to do and I'm just extremely frustrated because this is happening right before our launch day. I've been stuck on notarizing again for the past two days and I've seen no progress, I've seen no responses from support emails and the ones that do aren't even applicable to my current scenario.
Notarization
RSS for tagNotarization is the process of scanning Developer ID-signed software for malicious components before distribution outside of the Mac App Store.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Starting a few hours ago (roughly 2:45PM Eastern time) we began experiencing elevated latency with the Developer ID Notary Service. There is nothing listed on the developer system status page about degraded performance or a service outage.
Operations that usually take ~15 minutes, are stacking up for hours.
The oldest pending entry we have was created at 2:45PM Eastern:
createdDate: 2025-06-24T18:45:22.539Z
id: 5209a4d2-eae4-4714-aa8e-6961677ff2e
We currently have 27 pending builds in the notary service since we are required to notarize internal builds to ensure we satisfy our requirements so this is creating an issue for us.
My notarization submission been "In Progress" status for over 30 minutes now. I thought this process should be much faster.
see:
xcrun notarytool history --apple-id "devxxfishpond.sh" --team-id "XMXG6C4xxx" --password "hedi-xzkt-xxxxxxxx"
Successfully received submission history.
history
--------------------------------------------------
createdDate: 2025-07-22T05:32:06.213Z
id: ac32c72d-c799-4936-a090-aca4f8d3c3c3
name: Fishpond.zip
status: In Progress
--------------------------------------------------
createdDate: 2025-07-20T10:20:22.228Z
id: 38bb9dfb-a8e2-4174-b330-f79c985f3a93
name: Fishpond.zip
status: In Progress
--------------------------------------------------
createdDate: 2025-07-20T09:05:26.709Z
id: bba156d0-7ecd-4c24-863f-834da08a8916
name: Fishpond.zip
status: In Progress
--------------------------------------------------
createdDate: 2025-07-20T08:56:47.509Z
id: 3d5c97ac-fd76-4cc3-85ee-bac8a92ea412
name: Fishpond.zip
status: Invalid
Topic:
Code Signing
SubTopic:
Notarization
Tried notarizing my app yesterday afternoon via Mac terminal, and when I came back to work this morning it was still "In Process...". I closed terminal, and checked appleid.apple.com, and it was asking me to reset my password- maybe because the notarization timed out?
Either way, I reset my password, generated a new app-specific password and tried notarizing the app again, but it's now been 3 hours and it's still "In Process..." again.
When I check the status via terminal, nothing seems off- and the status is In Progress.
How can I determine if there's a bigger issue I need to fix before notarizing?
UUID: e7ae29c8-2478-41a3-93b4-3f274de643d0
Topic:
Code Signing
SubTopic:
Notarization
I am building an electron app bundled with python. My code signing was fast, but when it came to notarization, it has already taken over 6+ hours. How can I speed things up?
I have an application that I have been signing, notarizing and distributing to beta testers for a year with no issues, note: I have never got stapling to work I always get a error 65 in the process. But up until yesterday that hasn't been an issue and online verification has always worked. Yesterday morning around 9am online gatekeeper verification has been failing with:
APP not opened,
apple cannot verify app is free of malware. etc
this keeps happening, with every build I try. redownloading previously successful builds show the same behavior
I know I can allow in privacy and security, but heading towards launch I dont want to have to tell users to do that.
has there been a change in how gatekeeper works or issues with the service?
any help with this or getting stapling working would be very appreciated!
My notary service has been stuck for more than 5 hours. Is it taking long time because the notary service is down or because i am a new user
I've submitted my app, signed with a new Developer Id Certificate for a distribution outside of the App Store, 88 hours ago.
xcrun notarytool history ...
Shows the submission as "In Progress".
xcrun notarytool log ...
Tells me "Submission log is not yet available or submissionId does not exist".
I don't know if that's expected for an "In Progress" submission.
As far as I can tell the signing worked without problems. I'm using the Tauri toolchain, which under its hood is using notarytool.
How long can I expect this to take? If there is a problem with my submission does the status just stay on "In Progress" or do I get an error?
Thanks
Topic:
Code Signing
SubTopic:
Notarization
I'm currently observing a problem similar to this thread https://developer.apple.com/forums/thread/737334
The difference is that this is happening after updating a system extension.
Basically same error, sysextd complains it can not check that the system extension is notarized: macOS Error 3 + Error code=-67050.
I think macOS (Sequoia 15.3.2 or 15.7.2 if it matters) is wrong in this case for the following reasons:
when using spctl assess -t install, the system extension is reported to be correctly notarized.
when restarting the Mac, the updated system extension is correctly checked and staged.
if I run spctl assess before sysextd tries to check the system extension, it works.
I'm currently thinking of 2 reasons why the check does not work:
sysextd is somehow trying to work with a cached assessment that has become invalid after the system extension was updated.
macOS needs way more time between the update of the files and the request to update the staged extension. I tried adding a 5-second delay. This does not seem to work or at least reliably.
I tried just touching the system extension, no positive result. Unfortunately, in macOS Sequoia, it is not possible anymore to reset-default using spctl and see if it solves the issue, at least the next time the update is performed.
[Q] Is there some magic operation that would help macOS correctly check the notarization of an updated system extension?
Hello Team,
I am building an Electron app and building platform-related installers line exe, appimage and dmg. To build an installer, I am using the electron builder library.
When I do code signing and notarization, the signing process gets stuck without any error. I have verified certificate and other information are correct. Below are more details.
Versions
@electron/notarize": "^2.5.0
@electron/rebuild": "3.3.0
electron": "26.2.1
electron-builder": "^25.1.8
electron-devtools-installer": "3.2.0
Current Setup
CircleCI pipeline
Developer ID Application certificate is properly installed and verified
Notarization is configured in both package.json and build arguments
I see the last log as below where it gets stuck without any error.
• selecting signing options file=release/build/mac-arm64/xxxx Assistant.app entitlements=assets/entitlements.mac.plist hardenedRuntime=true timestamp=http://timestamp.apple.com/ts01 requirements=undefined additionalArguments=[]
Package.json
"build": {
"productName": "xxxxx - Your AI Work xxxxx",
"executableName": "xxxx xxxxx",
"artifactName": "xxxxx-Assistant-${version}-${arch}.${ext}",
"appId": "org.erb.xxxx",
"asar": true,
"asarUnpack": "**\\*.{node,dll}",
"files": [
"dist",
"node_modules",
"package.json",
"assets/tray.ico",
"!**/*.lproj/**/*",
"!**/locale.pak",
"!locales/**/*"
],
"afterSign": ".erb/scripts/notarize.js",
"mac": {
"timestamp": "http://timestamp.apple.com/ts01",
"identity": "xxxxx Technology Inc (xxxxxxxx)",
"target": [
"dmg",
"zip"
],
"electronLanguages": [
"en-US"
],
"icon": "build/mac-icon/Logo512x512.icns",
"type": "distribution",
"hardenedRuntime": true,
"entitlements": "assets/entitlements.mac.plist",
"entitlementsInherit": "assets/entitlements.mac.plist",
"gatekeeperAssess": false
},
"dmg": {
"icon": "build/mac-icon/xxxxxxLogo512x512.icns",
"contents": [
{
"x": 130,
"y": 220
},
{
"x": 410,
"y": 220,
"type": "link",
"path": "/Applications"
}
]
},
"directories": {
"app": "release/app",
"buildResources": "assets",
"output": "release/build"
},
"extraResources": [
"./assets/**"
]
}
Entitlement
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<!-- Required for Electron/Chromium JIT -->
<key>com.apple.security.cs.allow-jit</key>
<true/>
<!-- Required for basic Electron functionality -->
<key>com.apple.security.inherit</key>
<true/>
<!-- Required for network communication (REST APIs) -->
<key>com.apple.security.network.client</key>
<true/>
</dict>
</plist>
I have made the following verification.
I already tried on multiple macos with different processors.
Verified on a high-speed network.
Certificate is exported to .p12 and verified.
All Env Variables are set with the correct value. (APPLE_APP_SPECIFIC_PASSWORD+APPLE_ID+APPLE_TEAM_ID )
I have tried with CSC_LINK/CSC_KEY_PASSWORD + Keystore as well.
Appriciate any help.
Hi guys,
I got an error about mac notarization result return 132.
here is the stack trace on the logs:
2025-02-25 02:53:55,503 ERROR [org.ecl.cbi.ws.mac.not.xcr.not.NotarytoolNotarizer] (macos-notarization-service-pool-thread-13) Error while parsing the output after the upload of '/tmp/macos-notarization-service/pending-files/myapplication.dmg' to the Apple notarization service: org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file.
at java.xml/com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:204)
at java.xml/com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:178)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:400)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:327)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1465)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:1013)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605)
at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825)
at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1224)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:637)
at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:326)
at java.xml/javax.xml.parsers.SAXParser.parse(SAXParser.java:197)
at org.eclipse.cbi.ws.macos.notarization.xcrun.common.PListDict.fromXML(PListDict.java:134)
at org.eclipse.cbi.ws.macos.notarization.xcrun.notarytool.NotarytoolNotarizer.analyzeSubmissionResult(NotarytoolNotarizer.java:39)
at org.eclipse.cbi.ws.macos.notarization.xcrun.common.NotarizationTool.upload(NotarizationTool.java:50)
at org.eclipse.cbi.ws.macos.notarization.xcrun.common.Notarizer.lambda$uploadFailsafe$3(Notarizer.java:65)
at net.jodah.failsafe.Functions.lambda$get$0(Functions.java:48)
at net.jodah.failsafe.RetryPolicyExecutor.lambda$supply$0(RetryPolicyExecutor.java:66)
at net.jodah.failsafe.Execution.executeSync(Execution.java:128)
at net.jodah.failsafe.FailsafeExecutor.call(FailsafeExecutor.java:379)
at net.jodah.failsafe.FailsafeExecutor.get(FailsafeExecutor.java:68)
at org.eclipse.cbi.ws.macos.notarization.xcrun.common.Notarizer.uploadFailsafe(Notarizer.java:65)
at org.eclipse.cbi.ws.macos.notarization.NotarizationService.lambda$notarize$0(NotarizationService.java:192)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Do you know why?
If you have any thread or documents telling about the details of return values of the command: 'xcrun notarytool submit'
I'm developing an app using Electron Builder for a potential port to Windows in the future. I've had a heck of a time getting credentials to work and felt like I was in some sort of time loop doing the same things over and over again to no avail. I finally was able to sign my app, sign the .dmg and start the notarization process. That was last night and it still says "In Progress". If anyone is able to push it through, that would be awesome! (id: 2520e724-7069-408a-9ea4-60b23e8435a7)
I saw another thread on here where people stated it was taking forever, I'm not sure if this is just because its my first time, but I was hoping to get a beta out to testers this weekend. I just need a version that doesn't get flagged as "Malware" by Gatekeeper. This is just for a standalone macOS application, not the App Store.
Is there a reason that this process takes an absurd amount of time? Will it always be like this or is this just a fluke and it was a bad time to try?
Hi,
I've code-signed my app and notarized it, and created a DMG, and when I slacked it or airdropped it to someone for testing the FIRST time they open it, they get a warning that it was Slacked or airdropped to them and do they want to open it. if they say yes everything is fine. So looking through here someone said I need to sign the app and then make a dmg and sign the dmg and then send that for notorization and then staple that. So I did, and I still get a warning the first tie someone try's to run it.
What am I doing wrong? I know I can buy software and not get a warning from apple. so how do I get my app to work correctly like that?
Hi,
I'm getting error 65 upon stapling and I am suspecting that non-default trust settings may be the reason as outlined here:
Unfortunately whatever I do, I can't seem to reset the trust settings to their default values (removing the blue/white "+"), I'm not being asked for credentials upon closing the certificate window. I have also tried to unlock the System Roots key chain, to no avail.
Also, when running
security dump-trust-settings -d
I get
Number of trust settings : 0
for all certificates.
Any ideas as to what I may be doing wrong? Is there any other setting that may be involved?
Thanks!
Topic:
Code Signing
SubTopic:
Notarization
Hey there,
I'm experiencing an issue with notarization of my macOS application, which is blocking a release.
We have signing/notarization hooked up to our CI process, both for prior releases as well as development builds (at the trunk tip). The notarization process has typically taken anywhere from a few minutes to a few tens of minutes, but for our most recent release, it's taking an unreasonably long time.
I've compiled the submission info for each build (+ reattempted notarizations) below. What's interesting is that the oldest one was accepted- however, it timed out our CI process, so we never actually released it.
Subsequent builds are more or less identical in terms of their content, however, they've been stewing in the notarization process for over 13 hours in some cases.
% xcrun notarytool info 67413dae-64f5-4372-972d-e0ac158e18e3
Successfully received submission info
createdDate: 2025-04-02T16:28:25.999Z
id: 67413dae-64f5-4372-972d-e0ac158e18e3
name: Warp Vault.app.zip
status: In Progress
% xcrun notarytool info 0c72b243-4a8d-4976-a97b-75689d7e2497
Successfully received submission info
createdDate: 2025-04-02T05:49:05.861Z
id: 0c72b243-4a8d-4976-a97b-75689d7e2497
name: Warp Vault.app.zip
status: In Progress
% xcrun notarytool info 8e2edfc2-58bc-4b33-bc8e-078155759a81
Successfully received submission info
createdDate: 2025-04-02T05:23:28.870Z
id: 8e2edfc2-58bc-4b33-bc8e-078155759a81
name: Warp Vault.app.zip
status: In Progress
% xcrun notarytool info 8fb17b0c-ace4-4b6f-bef8-68d22696814d
Successfully received submission info
createdDate: 2025-04-02T05:07:48.187Z
id: 8fb17b0c-ace4-4b6f-bef8-68d22696814d
name: Warp Vault.app.zip
status: Accepted
At the time of checking, the UTC date was:
% TZ="UTC" date
Wed Apr 2 18:42:14 UTC 2025
It's interesting to me that the notarization process is taking this long. We've notarized many development builds (with debugging flags enabled) in the time between our last public release and our attempt to notarize this one. What's more, the original build for this release was notarized within the span of about 15 minutes, but subsequent submissions of the same build have hung for tens of hours.
My two questions are:
How can I get our pending notarizations "unstuck"?, and
To prevent these types of hangs in the future, should I also routinely build/sign/notarize non-debug builds of my application during the development process?
Best regards and many thanks,
Charlton
Thanks in advance for any hint to solve the following account problem:
I tried to store credentials for notarizing.
Presumably with the wrong combination of entries (similar to signing) – using the name of my university instead of my Apple Account.
xcrun notarytool store-credentials "notarytool-password" --apple-id "Berliner Hochschule fuer Technik" --team-id "8YAW3HL2QP" --password "my Apple-Account-pw"
.. retried assuming a syntax error (like missing ").
Got the error message:
This process stores your credentials securely in the Keychain. You reference these credentials later using a profile name.
Validating your credentials...
`Error: HTTP status code: 401. Your Apple ID has been locked. Visit iForgot to reset your account (https://iforgot.apple.com), then generate a new app-specific password. Ensure that all authentication arguments are correct.`
Happy to see: Signing is not affected and I still an can log in to my account on developer.apple.com. So notarizing “only” seems to be affected.
But how to reset the account to resolve the issue?
The iforgot.apple.com link does not help - I provided my iPhone-number but did not receive further messages – neither on the iPhone nor on my “developer” macbook.
Many thanks in advance
All the best
Florian
Context: large platform-agnostic CLI tool built as a handcrafted bundle (not via an Xcode project) that has been successfully codesigned, stapled, and zipped; macOS 14.7.5 syspolicy_check reports
App passed all pre-distribution checks and is ready for distribution.
However, running the executable in the Terminal produces a "cannot be opened because the developer cannot be verified" popup. The executable does succeed after manually clearing its quarantine attribute.
Having worked through Resolving Gatekeeper Problems, the only detail logged in the Console is
Adding Gatekeeper denial breadcrumb (direct): ... bundle_id: NOT_A_BUNDLE.
Experimental observations: a minimized trivial CLI executable with a similar bundle layout and name successfully executes without being rejected, and oddly, renaming the original bundle from "name" to "name.suffix" allows it to be successfully executed.
It's unclear why the bundle name would affect Gatekeeper only in some circumstances, and we'd greatly prefer not to rename the bundle for compatibility reasons, so it would be good if there were some way to get further diagnostic detail leading to a workaround - thank you.
I have built my application for arm and x64 so I have two files called DeepSkyStacker.app in different directories.
I have followed the instructions to notarise the arm version of the app, but an concerned about what I should do to notarise the other one - do I just zip that up and then run:
xcrun notarytool submit "DeepSkyStacker.zip" --keychain-profile "Notary Profile for DeepSkyStacker" --wait
xcrun stapler staple DeepSkyStacker.app
again or will that mess everything up?
Related to that can I use the Notary Profile I created for DeepSkyStacker to notarise other apps that are part of the same product (DeepSkyStackerLive and DeepSkyStackerCL)??
Thanks
David
Topic:
Code Signing
SubTopic:
Notarization
Once I have built my macOS .app and signed it I run notarytool using this simple shell script:
#!/bin/sh
ditto -c -k --keepParent "$1.app" "$1.zip"
xcrun notarytool submit "$1.zip" --keychain-profile "Notary Profile for DeepSkyStacker" --wait
xcrun stapler staple $1.app
rm -f $1.zip
How can I export that "keychain-profile" (notary profile) so I can use it in CI/CD actions? Clearly I don't wish to expose the full invocation of xcrun notarytool store-credentials.
Topic:
Code Signing
SubTopic:
Notarization