Post not yet marked as solved
When I upload a mac app for developer ID notarization, I get an error saying:
App Store Connect Operation Error
You must first sign the relevant contracts online (1048)
Why would App Store contracts be relevant to distribution outside the App Store?
Post not yet marked as solved
I had been using SMLoginItemSetEnabled to launch a helper app, and it was working, but stopped working recently, possibly associated with Big Sur updates. The helper is of the "UI Agent" type, and neither app is sandboxed. I see things like this in the console log:
Nov 30 16:03:01 MacBook-Pro com.apple.xpc.launchd[1] (com.frameforge.crash-catcher.1.debug[8065]): Could not find and/or execute program specified by service: 149: Could not find a bundle of the given identifier through LaunchServices: com.frameforge.crash-catcher.1.debug
Nov 30 16:03:01 MacBook-Pro com.apple.xpc.launchd[1] (com.frameforge.crash-catcher.1.debug[8065]): Service exited with abnormal code: 78
Nov 30 16:03:01 MacBook-Pro com.apple.xpc.launchd[1] (com.frameforge.crash-catcher.1.debug): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
It's weird that it says it couldn't find the bundle, because LSCopyApplicationURLsForBundleIdentifier was able to find it. I tried changing the bundle ID of the helper in case old copies were confusing things.
I have seen the advice to test plug-in registration problems in a virtual machine, but my main app requires OpenGL, which is not supported by Mac-on-Mac virtualization.
Post not yet marked as solved
NSViewFocusDidChangeNotification is deprecated since 10.4, and the docs say "Instead use NSViewBoundsDidChangeNotification and NSViewFrameDidChangeNotification to get the same information provided by this notification." But doesn't that mean that I'd have to set up notifications not only on the view of interest, but on its superview, and its superview's superview, and all the way up the chain? Basically I want to be notified whenever the result of [myView convertRectToBacking:myView.bounds] might change.
I had been using @available( macOS 11.0, * ) to test for Big Sur, but as of the Xcode 12 GM, that doesn't seem to work any more. Whereas @available( macOS 10.16, * ) does work. Is that the right thing to use, or is it a bug?
Sometimes I have a progress bar that shows progress on a certain task, and then resets to the minimum when starting a new task. But there is a new behavior (new in Big Sur, I think) that smooths out the display of a progress bar, such that if you reset the bar to its minimum, it animates backward instead of jumping back. I hate this, it looks like my app is making negative progress. I tried doing [CATransaction flush] after changing the bar value, and that had no effect. What can I do?
When I retrieve a password from a keychain using SecKeychainFindGenericPassword, I get two requests for the keychain password, worded slightly differently:
<app> wants to use your confidential information stored in <item name> in your keychain.
<app> wants to access key <item name> in your keychain.
Why do I get these two prompts, and is there any way to get just one?
Post not yet marked as solved
I have a project with targets that use different versions of a private framework. When I do a build, all seems well. The problem is when the Xcode 11.4 IDE does its quick compile to find syntax errors in the source file being edited. (I'm sure there's some technical term for that, which I've forgotten.) In a certain C++ source, I'm getting incorrect syntax errors, apparently due to the wrong version of the private framework being used. I've double-checked that the framework search paths are correct in each target, and I'm linking to the right thing in each target. I've tried nuking derived data and build data folders to no avail. Any suggestions?
Post not yet marked as solved
The System Status page says that notarization is alive, but I submitted a small app for notarization more than half an hour ago and it is still "processing".
Post not yet marked as solved
The Xcode 11 release notes (and I think the Catalina release notes) say "Scripting language runtimes such as Python, Ruby, and Perl are included in macOS for compatibility with legacy software. In future versions of macOS, scripting language runtimes won’t be available by default, and may require you to install an additional package. If your software depends on scripting languages, it’s recommended that you bundle the runtime within the app."It would be helpful if someone could explain exactly how to do that. (i'm particularly interested in Python.) I'd also need to know how to test that it's really working, when testing on a macOS version that does have scripting languages built in.
When I notarize one of my apps, some members of the app package produce a warning saying "ditto: Couldn't read pkzip local header". These files do NOT have a .zip extension, but are a modified kind of zip archive. Why is the notarization server trying to look inside them? If I changed the file format further so that they couldn't be recognized as zip archives, would that make notarization "happy"?As I understand it, notarization warnings are likely to become errors in January, so I'd like to get this sorted out.
Post not yet marked as solved
My app is failing to render under Mojave 10.14.3 when built with Xcode 10.1. It's fine under High Sierra, and it's fine if I build using Xcode 9.4.1. I THINK it was working under Mojave 10.14.2. If I transplant the 10.13 SDK from Xcode 9 to Xcode 10 and build with that, it works.I wanted to run under OpenGL Profiler to look for OpenGL errors, but then it hangs on -[NSOpenGLContext flushBuffer].
Post not yet marked as solved
I have some code that uses AVAssetWriter to build a video file from images. It works fine on my machines, but consistently fails for one user. What happens is that at some point the pixelBufferBool property of the AVAssetWriterInputPixelBufferAdaptor becomes nil. At that point, the error property of the AVAssetWriter is AVErrorUnknown (-11800), and the underlying error code is -12769, which I think means kCMBufferQueueError_InvalidBuffer.Creation of the AVAssetWriterInput looks like this:AVAssetWriterInput* videoWriterInput = [AVAssetWriterInput
assetWriterInputWithMediaType: AVMediaTypeVideo
outputSettings: @{
AVVideoCodecKey: AVVideoCodecH264,
AVVideoWidthKey: @(spec.width),
AVVideoHeightKey: @(_imageHeight)
}];Creation of the AVAssetWriterInputPixelBufferAdaptor:AVAssetWriterInputPixelBufferAdaptor* adaptor = [[[AVAssetWriterInputPixelBufferAdaptor alloc]
initWithAssetWriterInput: videoWriterInput
sourcePixelBufferAttributes: @{
(NSString*) kCVPixelBufferCGBitmapContextCompatibilityKey: @YES,
(NSString*) kCVPixelBufferCGImageCompatibilityKey: @YES,
(NSString*) kCVPixelBufferPixelFormatTypeKey: @(kCVPixelFormatType_32ARGB),
(NSString*) kCVPixelBufferWidthKey: @(spec.width),
(NSString*) kCVPixelBufferHeightKey: @(_imageHeight),
(NSString*) kCVPixelBufferBytesPerRowAlignmentKey: @(4)
}] autorelease];Any suggestions on what could be wrong or how to track it down?
Post not yet marked as solved
I'm trying to create a movie with a video track and a text track, using AVAssetWriter and two instances of AVAssetWriterInput. After writing one text sample, the readyForMoreMediaData of the text track is always NO, no matter how long I wait, though the AVAssetWriter has status AVAssetWriterStatusWriting and the video track remains ready for input. What could cause this? (I'm running Mac OS Sierra.)P.S. This problem doesn't always happen, it depends upon the data. It seems more likely to happen if the video is simple, say less than a dozen samples.
Post not yet marked as solved
Every time I try to search in Xcode 9 beta 4's documentation window, it crashes. Surely it's not just me? It happens on the 3rd character I type, in libswiftCore.dylib on the dispatch queue Promise.callbackQueue.