Dive into the vast array of tools and services available to developers.

Posts under General subtopic

Post

Replies

Boosts

Views

Activity

pkgbuild on Tahoe fails to build packages if any directory name contains non-ascii characters
pkgbuild on Tahoe (26.3.1) fails to build packages if any directory name contains non-ascii characters. pkgbuild is able to build successfully with the same source data on previous versions on macOS, so this is a regression and prevents us from build able to build our products on macOS 26. Example that demonstrates the issue: mkdir -p MyAppData/Taishōgoto echo "Testing" >> MyAppData/Taishōgoto/Content.txt pkgbuild --identifier com.example.MyAppData --install-location '/Library/Application Support/MyAppData' --root MyAppData myappdata.pkg Error messages: parent directory ./Taishōgoto does not exist pkgbuild: error: Cannot write package to "myappdata.pkg". (The file “package.bom” couldn’t be saved in the folder “NSIRD_pkgbuild_52fPuN”.) I have submitted this via Feedback Assistant (FB22312299). I have not found a workaround. Tried copying pkgbuild from Sequoia but the problem persisted, probably because the buggy code is in PackageKit rather than the tool itself.
3
0
74
2w
Create Ios app using Xojo
I have created and Ios app using xojo, and run using the Xcode simulator. I want to test it on my phone and don't seed to put it on the app store as it is for personal use. I've seen pages that indicate a free apple developer option is available for a limited time but can't for the live of me get my app to actually run on my phone. I've tried both apple configurator and xcode to add my app with no luck
5
0
136
May ’25
Could you please add a feedback/question feature for the Apple Developer Documentation?
Routinely I'll have additional questions when browsing the Apple Developer Documentation. Would be really convenient if we could just submit that feedback from the documentation webpage itself, Apple could have the data, and potentially down the line address it; but at least you'd have the data. For example, I'm looking at the documentation for AttributedString: https://aninterestingwebsite.com/documentation/foundation/attributedstringprotocol/index(_:offsetbycharacters:) Now, I would like to know what would happen if the distance brought the position past the end, what would be returned. Because it's non-optional which I imagine would imply nil would be returned if the parameters were invalid. But it doesn't say. I run into these small missing behavioral details with some regularity and imagine others do as well. It would be really great if we could just submit that discrepancy and perhaps see some numbers on the page of the total number of discrepancies submitted or something so we can see that it's not just us and have some peace of mind that based on the amount of feedback submitted there's a higher chance that this discrepancy will be addressed in the future.
2
0
118
Apr ’25
Associating file extension with my application
My application uses a text file with an extension of .dssfilelist. On Linux I would register the Mime type and associate it with the application in the .desktop file. <?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="text/dssfilelist"> <comment>DeepSkyStacker file-list file</comment> <glob pattern="*.dssfilelist" /> </mime-type> </mime-info> I believe that I need to add stuff to the Info.plist for my application, but I also understand that CFBundleTypeExtensions is deprecated. So please could you show me what I now need to add to the Info.plist file so that these files will be registered as "text/dssfilelist" type and associated with my application and to associate a .icns file with it?
19
0
578
May ’25
Inconsistency in returning nanoseconds in /bin/date
I am using macOS’s /bin/date command, both in Terminal and via AppleScript (do shell script). I noticed inconsistent behaviour with the %N format specifier for nanoseconds: • On some Macs, date +%s%N returns numeric nanoseconds as expected. • On other Macs, the same command returns a literal N or fails when coerced to a number. • This occurs across different macOS versions and on both Intel and Apple Silicon machines. My understanding is that macOS ships BSD date, which does not officially document %N. I am trying to determine: 1. Is %N in /bin/date officially supported on macOS, and if so, on which versions? 2. If %N is not supported, what is Apple’s recommended, portable method for obtaining sub-second or millisecond timestamps in shell scripts or AppleScript across all macOS versions?
1
0
268
Jan ’26
Host-Only Networking and Port Forwarding Support in macOS Virtualization Framework
I’ve developed a virtual machine manager application using the macOS Virtualization framework. The application currently supports both NAT and bridged networking configurations. I’m now looking to implement host-only networking, where the guest VM can communicate with the host but not with external networks. Is this networking mode supported by the Virtualization framework, and if so, what is the recommended approach to set it up? Additionally, I would like to implement port forwarding from the host to the guest (e.g., redirecting traffic from a specific port on the host to a port on the guest). Is there a way to configure port forwarding using the built-in APIs of the Virtualization framework, or would this require a custom networking solution? Any guidance or best practices for implementing these features within the constraints of the framework would be greatly appreciated.
4
0
180
May ’25
How do I get HomeKit accessories to show up in the iOS Simulator?
I'm finding developing for HomeKit using the iOS Simulator utterly confounding. All of my home's actual HomeKit accessories show up fine when I run the HomeKit app I'm developing on my actual phone. But none show up when I run my app in the iOS Simulator. Maybe that's how it's supposed to be? I decided to run the HomeKit Accessory Simulator in an attempt to get something to show up in the iOS Simulator, but the accessories I've created there don't show up in the Simulator either. How do I get devices to show up in the iOS Simulator? Thanks.
1
0
424
Jun ’25
My Apple developer certificates expire soon. Is it necessary to create new certificates?
My Apple developer certificates(4 certificates) expire soon. I'm developing an application for iOS but the application is not yet released in the App Store, only Testflight releases for private testing. Is it necessary to create 4 new certificates or can I edit the current certificates so that they don't expire soon?
1
0
158
Oct ’25
Apple-hosted managed assets
Hi, anyone managed to make this work? https://aninterestingwebsite.com/documentation/backgroundassets Trying for past few days and can't make it work. Following their official documentation, also this video https://www.youtube.com/watch?v=M3jpgZrB1uo, but it seems I am stuck at: try await AssetPackManager.shared.ensureLocalAvailability(of: assetPack) What I did: Manifest files created, info.plist configured, asset pack created and uploaded to appstoreconnect via transporter, successfully assigned to app and ready for internal testing. Added to my code: let assetPack = try await AssetPackManager.shared.assetPack(withID: "Tutorial") try await AssetPackManager.shared.ensureLocalAvailability(of: assetPack) let videoData = try AssetPackManager.shared.contents(at: "Videos/Introduction.m4v") but no luck at all.... is anywhere any demo project available to download to compare with my project?
3
0
458
Oct ’25
Why is my device, in a free developer account under the age of majority, allowing beta updates?
I am a developer with a free developer account, and my account is under the legal age of majority. I know that, according to the terms in Section 6 of the Apple Developer Agreement, I must be the legal age of majority to use pre-release software, and yet the Software Update section of Settings on my device would allow me to install a beta release of iOS 26. Is there a way for me to hide/remove this option without signing out of my account, and not have it appear again as an option until I reach the age of majority?
1
0
105
Dec ’25
Why does a Swift test think my simple struct is main actor-isolated?
My experience with Swift 6 strict concurrency so far doesn't match my understanding of implicit MainActor isolation semantics. This is a cross-post from StackOverflow. I will link answers between both forums. TL;DR Build succeeds when testing a struct declared in the test module, but fails when the struct is moved to the main module: Main actor-isolated property … cannot be accessed from outside the actor. Steps to reproduce Open up Xcode 26 beta 2 on macOS 26 (probably also ok on current stables). Create a new Swift app with Swift testing, no storage. Call it WhatTheSwift. Set the Swift Language Version on all three targets to Swift 6. Update the default test file to be this: import Testing @testable import WhatTheSwift struct WhatTheSwiftTests { @Test func example() async throws { let thing = Thing(foo: "bar") #expect(thing.foo == "bar") } } struct Thing { let foo: String } That should build fine, and the tests should pass. Now, move the Thing declaration into its own Thing.swift file in the WhatTheSwift module, and try running the test again. You should see this: Observations Marking the test @MainActor allows the test to pass, suggesting the compiler actually wants to isolate Thing.foo to the main actor. My question Why? And why only when Thing is in a different module?
2
0
285
Jun ’25
zsh终端中执行python3或pip3命令,弹出Install Command Line Developer Tools弹窗安装
OS:macOS15.5 CPU:Apple M1 Pro zsh终端中执行python或pip命令,提示未找到命令,但执行python3或pip3命令,预期也是提示未找到命令,实际结果弹出Install Command Line Developer Tools弹窗安装,网上查阅资料,删除/usr/bin/python3、/usr/bin/pip3、/usr/local/bin/python3、/usr/local/bin/pip3文件即可达到预期,但无权限删除/usr/bin/python3与/usr/bin/pip3文件,尝试过root账号、进行系统恢复模式暂时禁用SIP解决方案,都无法解决;🙏大佬指点一二;
1
0
254
Jun ’25
Is there a way for two users to make development builds on separate accounts for one app?
Tech stack: React Native + Expo. We are using two solo developer accounts (not a business or team account). Context: Friend and I set out to make an app together. Friend created app and set it up on Apple. We worked on it together. He controlled devops (builds and submission). Friend no longer can commit to development. Wants to transfer to me. I create apple developer account. After app transfer, my phone (deviceid) underwent a 14 day soft ban preventing builds. That has since been lifted. There seems to be something in place preventing me from making dev builds on the original dev bundleid. It says it's still owned by him despite the app transfer. Bottom line: what needs to happen so I can make dev builds? Nice to have: we can both make dev builds under the same bundleid
1
0
254
Dec ’25
Gnu Fortran and Mac OS Sequoia
I observed the following problem: A scientific code to perform Reverse Monte Carlo simulations (‘rmcxas’) compiled with the most up to date version of gcc/gfortran and Xcode including command line tools on Mac OS Sequoia 15.4 on a Macbook air with M4 processor generates the following problem upon starting it in a terminal: dyld[10154]: dyld cache '(null)' not loaded: syscall to map cache into shared region failed dyld[10154]: Library not loaded: /usr/lib/libSystem.B.dylib Referenced from: <0144F82E-003C-37A9-A544-9AE6336E549B> /Users/markuswinterer/bin/rmcxas Reason: tried: '/usr/lib/libSystem.B.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/libSystem.B.dylib' (no such file), '/usr/lib/libSystem.B.dylib' (no such file, no dyld cache), '/usr/local/lib/libSystem.B.dylib' (no such file) zsh: abort rmcxas This occurs only about every 5th time the code is started. Help would be highly appreciated.
2
0
154
May ’25
Capacitor iOS Plugin with MobileVLCKit – Swift Plugin Not Recognized from Angular
Hi everyone, I'm developing a Capacitor plugin to display an RTSP video stream using MobileVLCKit on iOS. The Android side works perfectly, but I can’t get the iOS plugin to work — it seems my Swift file is not being detected or recognized, even though I’ve followed the official steps. What works: I followed the Capacitor Plugin Development Guide. I implemented the Android version of the plugin in Java inside the android/ folder. Everything works perfectly from Angular: the plugin is recognized and calls execute correctly. The issue on iOS: I implemented the iOS part in Swift, using the official MobileVLCKit documentation. I initially placed my RtspVlcPlugin.swift file in the plugin’s iOS folder, as the docs suggest. Then I moved it directly into the main app’s ios/App/App/ folder next to AppDelegate.swift and tried manual registration. The problem: Even though I manually register the plugin with: if let bridge = self.window?.rootViewController as? CAPBridgeViewController { bridge.bridge?.registerPluginInstance(RtspVlcPlugin()) print("✅ Plugin RtspVlcPlugin registered manually.") } It prints the registration message just fine. BUT from Angular, the plugin is not recognized: Capacitor.Plugins.RtspVlcPlugin has no methods, and I get this error: "code":"UNIMPLEMENTED" I also tried declaring @objc(RtspVlcPlugin) and extending CAPPlugin. I’ve verified RtspVlcPlugin.swift is added to the target and compiled. The Swift file doesn’t seem to register or expose any methods to Angular. I even tried adding the code without using a plugin at all — just creating a Swift class and using it via the AppDelegate, but it still doesn't expose any callable methods. My Swift code (RtspVlcPlugin.swift): import Capacitor import MobileVLCKit @objc(RtspVlcPlugin) public class RtspVlcPlugin: CAPPlugin, VLCMediaPlayerDelegate { var mediaPlayer: VLCMediaPlayer? var containerView: UIView? var spinner: UIActivityIndicatorView? @objc func iniciar(_ call: CAPPluginCall) { guard let urlStr = call.getString("url"), let x = call.getDouble("x"), let y = call.getDouble("y"), let w = call.getDouble("width"), let h = call.getDouble("height"), let url = URL(string: urlStr) else { call.reject("Missing parameters") return } DispatchQueue.main.async { self.containerView?.removeFromSuperview() let cont = UIView(frame: CGRect(x: x, y: y, width: w, height: h)) cont.backgroundColor = .black cont.layer.cornerRadius = 16 cont.clipsToBounds = true let sp = UIActivityIndicatorView(style: .large) sp.center = CGPoint(x: w/2, y: h/2) sp.color = .white sp.startAnimating() cont.addSubview(sp) self.spinner = sp self.containerView = cont self.bridge?.viewController?.view.addSubview(cont) let player = VLCMediaPlayer() player.delegate = self player.drawable = cont player.media = VLCMedia(url: url) self.mediaPlayer = player player.play() call.resolve() } } @objc func cerrar(_ call: CAPPluginCall) { DispatchQueue.main.async { self.mediaPlayer?.stop() self.mediaPlayer = nil self.spinner?.stopAnimating() self.spinner?.removeFromSuperview() self.spinner = nil self.containerView?.removeFromSuperview() self.containerView = nil call.resolve() } } public func mediaPlayerStateChanged(_ aNotification: Notification!) { guard let player = mediaPlayer, player.state == .playing, let sp = spinner else { return } DispatchQueue.main.async { sp.stopAnimating() sp.removeFromSuperview() self.spinner = nil } } } In the Angular project, I’m using the plugin by manually registering it with registerPlugin from @capacitor/core. Specifically, in the service where I need it, I do the following: import { registerPlugin } from '@capacitor/core'; const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin'); After this, I try to call the methods defined in the iOS plugin, like RtspVlcPlugin.iniciar({ ... }), but I get an UNIMPLEMENTED error, which suggests that the plugin is not exposing its methods properly to the Angular/Capacitor environment. That makes me believe the problem lies in how the Swift file is integrated or registered, rather than how it is used from Angular. I’d appreciate any guidance on how to properly expose a Swift-based Capacitor plugin’s methods so that they are accessible from Angular. Is there any additional registration step or metadata I might be missing on the iOS side?
1
0
202
Jul ’25
How to call a Swift file directly from Angular using Capacitor?
Hi everyone, I’m working on a Capacitor app built with Angular, and I’m trying to call a Swift class directly from the root of the iOS project (next to AppDelegate.swift) without using a full Capacitor plugin structure. The Swift file is called RtspVlcPlugin.swift and looks like this: import Capacitor @objc(RtspVlcPlugin) public class RtspVlcPlugin: CAPPlugin { @objc func iniciar(_ call: CAPPluginCall) { call.resolve() } } In AppDelegate.swift I register it like this: if let bridge = self.window?.rootViewController as? CAPBridgeViewController { bridge.bridge?.registerPluginInstance(RtspVlcPlugin()) print("✅ RtspVlcPlugin registered.") } The registration message prints correctly in Xcode logs. But from Angular, when I try to call it like this: import { registerPlugin } from '@capacitor/core'; const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin'); RtspVlcPlugin.iniciar({ ... }); I get this error: {"code":"UNIMPLEMENTED"} So, even though the plugin is registered manually, it’s not exposing any methods to the Angular/Capacitor runtime. My question is: What is the correct way to access a manually created Swift class (in the root of the iOS project) from Angular via Capacitor? Thanks in advance!
1
0
169
Jul ’25
Alternatives to exports file for using Xcode frameworks in iOS
Hi, I have an iOS project with the following app targets: main iOS application a notification service extension 5 static libs containing some swift files with public methods 1 dynamic framework with above static libs as dependencies. The framework only contains 2 files - a default .h file and 1 .exp file. This exports file contains mangled-names of all the public methods that are exposed by the 5 static libs present as framework's dependencies. I obtained these symbols using the nm command for each static lib. The main iOS app target has 2 dependencies - the framework and the notification extension. The notification extension only depends on the framework. This setup works perfectly fine. I wanted to understand: If using the exports file is the only way to make this setup work? If not, what else can I do? What way does Apple recommend? According to my requirements, I only need at-most 2-3 functions to be exposed by the framework - thus using a exports file just for that seems to bug me. Thank you.
3
0
210
Dec ’25
I can't find speech recognition option in + capability
How to add speech recognition in + capability in Xcode there is no "Speech Recognition" in the list.
Replies
1
Boosts
0
Views
139
Activity
Jun ’25
pkgbuild on Tahoe fails to build packages if any directory name contains non-ascii characters
pkgbuild on Tahoe (26.3.1) fails to build packages if any directory name contains non-ascii characters. pkgbuild is able to build successfully with the same source data on previous versions on macOS, so this is a regression and prevents us from build able to build our products on macOS 26. Example that demonstrates the issue: mkdir -p MyAppData/Taishōgoto echo "Testing" >> MyAppData/Taishōgoto/Content.txt pkgbuild --identifier com.example.MyAppData --install-location '/Library/Application Support/MyAppData' --root MyAppData myappdata.pkg Error messages: parent directory ./Taishōgoto does not exist pkgbuild: error: Cannot write package to "myappdata.pkg". (The file “package.bom” couldn’t be saved in the folder “NSIRD_pkgbuild_52fPuN”.) I have submitted this via Feedback Assistant (FB22312299). I have not found a workaround. Tried copying pkgbuild from Sequoia but the problem persisted, probably because the buggy code is in PackageKit rather than the tool itself.
Replies
3
Boosts
0
Views
74
Activity
2w
Create Ios app using Xojo
I have created and Ios app using xojo, and run using the Xcode simulator. I want to test it on my phone and don't seed to put it on the app store as it is for personal use. I've seen pages that indicate a free apple developer option is available for a limited time but can't for the live of me get my app to actually run on my phone. I've tried both apple configurator and xcode to add my app with no luck
Replies
5
Boosts
0
Views
136
Activity
May ’25
CLI and macOS version compatibility matrix
Looking for a dynamic table that displays the latest supported CLI versions with the version of macOS. Specifically, is CLI 15.3 supported on Ventura 13.7.8? More generally, what is the lastest version of CLI supported on macOS <version_goes_here>
Replies
1
Boosts
0
Views
390
Activity
Oct ’25
Could you please add a feedback/question feature for the Apple Developer Documentation?
Routinely I'll have additional questions when browsing the Apple Developer Documentation. Would be really convenient if we could just submit that feedback from the documentation webpage itself, Apple could have the data, and potentially down the line address it; but at least you'd have the data. For example, I'm looking at the documentation for AttributedString: https://aninterestingwebsite.com/documentation/foundation/attributedstringprotocol/index(_:offsetbycharacters:) Now, I would like to know what would happen if the distance brought the position past the end, what would be returned. Because it's non-optional which I imagine would imply nil would be returned if the parameters were invalid. But it doesn't say. I run into these small missing behavioral details with some regularity and imagine others do as well. It would be really great if we could just submit that discrepancy and perhaps see some numbers on the page of the total number of discrepancies submitted or something so we can see that it's not just us and have some peace of mind that based on the amount of feedback submitted there's a higher chance that this discrepancy will be addressed in the future.
Replies
2
Boosts
0
Views
118
Activity
Apr ’25
Associating file extension with my application
My application uses a text file with an extension of .dssfilelist. On Linux I would register the Mime type and associate it with the application in the .desktop file. <?xml version="1.0" encoding="UTF-8"?> <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info"> <mime-type type="text/dssfilelist"> <comment>DeepSkyStacker file-list file</comment> <glob pattern="*.dssfilelist" /> </mime-type> </mime-info> I believe that I need to add stuff to the Info.plist for my application, but I also understand that CFBundleTypeExtensions is deprecated. So please could you show me what I now need to add to the Info.plist file so that these files will be registered as "text/dssfilelist" type and associated with my application and to associate a .icns file with it?
Replies
19
Boosts
0
Views
578
Activity
May ’25
accedentlyy deleted info.plist
hey I accidentally deleted my info.plist with holds my app version and other critical things and I don't know how to get it back or how to recode it
Replies
5
Boosts
0
Views
112
Activity
Jun ’25
Inconsistency in returning nanoseconds in /bin/date
I am using macOS’s /bin/date command, both in Terminal and via AppleScript (do shell script). I noticed inconsistent behaviour with the %N format specifier for nanoseconds: • On some Macs, date +%s%N returns numeric nanoseconds as expected. • On other Macs, the same command returns a literal N or fails when coerced to a number. • This occurs across different macOS versions and on both Intel and Apple Silicon machines. My understanding is that macOS ships BSD date, which does not officially document %N. I am trying to determine: 1. Is %N in /bin/date officially supported on macOS, and if so, on which versions? 2. If %N is not supported, what is Apple’s recommended, portable method for obtaining sub-second or millisecond timestamps in shell scripts or AppleScript across all macOS versions?
Replies
1
Boosts
0
Views
268
Activity
Jan ’26
Host-Only Networking and Port Forwarding Support in macOS Virtualization Framework
I’ve developed a virtual machine manager application using the macOS Virtualization framework. The application currently supports both NAT and bridged networking configurations. I’m now looking to implement host-only networking, where the guest VM can communicate with the host but not with external networks. Is this networking mode supported by the Virtualization framework, and if so, what is the recommended approach to set it up? Additionally, I would like to implement port forwarding from the host to the guest (e.g., redirecting traffic from a specific port on the host to a port on the guest). Is there a way to configure port forwarding using the built-in APIs of the Virtualization framework, or would this require a custom networking solution? Any guidance or best practices for implementing these features within the constraints of the framework would be greatly appreciated.
Replies
4
Boosts
0
Views
180
Activity
May ’25
How do I get HomeKit accessories to show up in the iOS Simulator?
I'm finding developing for HomeKit using the iOS Simulator utterly confounding. All of my home's actual HomeKit accessories show up fine when I run the HomeKit app I'm developing on my actual phone. But none show up when I run my app in the iOS Simulator. Maybe that's how it's supposed to be? I decided to run the HomeKit Accessory Simulator in an attempt to get something to show up in the iOS Simulator, but the accessories I've created there don't show up in the Simulator either. How do I get devices to show up in the iOS Simulator? Thanks.
Replies
1
Boosts
0
Views
424
Activity
Jun ’25
My Apple developer certificates expire soon. Is it necessary to create new certificates?
My Apple developer certificates(4 certificates) expire soon. I'm developing an application for iOS but the application is not yet released in the App Store, only Testflight releases for private testing. Is it necessary to create 4 new certificates or can I edit the current certificates so that they don't expire soon?
Replies
1
Boosts
0
Views
158
Activity
Oct ’25
Apple-hosted managed assets
Hi, anyone managed to make this work? https://aninterestingwebsite.com/documentation/backgroundassets Trying for past few days and can't make it work. Following their official documentation, also this video https://www.youtube.com/watch?v=M3jpgZrB1uo, but it seems I am stuck at: try await AssetPackManager.shared.ensureLocalAvailability(of: assetPack) What I did: Manifest files created, info.plist configured, asset pack created and uploaded to appstoreconnect via transporter, successfully assigned to app and ready for internal testing. Added to my code: let assetPack = try await AssetPackManager.shared.assetPack(withID: "Tutorial") try await AssetPackManager.shared.ensureLocalAvailability(of: assetPack) let videoData = try AssetPackManager.shared.contents(at: "Videos/Introduction.m4v") but no luck at all.... is anywhere any demo project available to download to compare with my project?
Replies
3
Boosts
0
Views
458
Activity
Oct ’25
Why is my device, in a free developer account under the age of majority, allowing beta updates?
I am a developer with a free developer account, and my account is under the legal age of majority. I know that, according to the terms in Section 6 of the Apple Developer Agreement, I must be the legal age of majority to use pre-release software, and yet the Software Update section of Settings on my device would allow me to install a beta release of iOS 26. Is there a way for me to hide/remove this option without signing out of my account, and not have it appear again as an option until I reach the age of majority?
Replies
1
Boosts
0
Views
105
Activity
Dec ’25
Why does a Swift test think my simple struct is main actor-isolated?
My experience with Swift 6 strict concurrency so far doesn't match my understanding of implicit MainActor isolation semantics. This is a cross-post from StackOverflow. I will link answers between both forums. TL;DR Build succeeds when testing a struct declared in the test module, but fails when the struct is moved to the main module: Main actor-isolated property … cannot be accessed from outside the actor. Steps to reproduce Open up Xcode 26 beta 2 on macOS 26 (probably also ok on current stables). Create a new Swift app with Swift testing, no storage. Call it WhatTheSwift. Set the Swift Language Version on all three targets to Swift 6. Update the default test file to be this: import Testing @testable import WhatTheSwift struct WhatTheSwiftTests { @Test func example() async throws { let thing = Thing(foo: "bar") #expect(thing.foo == "bar") } } struct Thing { let foo: String } That should build fine, and the tests should pass. Now, move the Thing declaration into its own Thing.swift file in the WhatTheSwift module, and try running the test again. You should see this: Observations Marking the test @MainActor allows the test to pass, suggesting the compiler actually wants to isolate Thing.foo to the main actor. My question Why? And why only when Thing is in a different module?
Replies
2
Boosts
0
Views
285
Activity
Jun ’25
zsh终端中执行python3或pip3命令,弹出Install Command Line Developer Tools弹窗安装
OS:macOS15.5 CPU:Apple M1 Pro zsh终端中执行python或pip命令,提示未找到命令,但执行python3或pip3命令,预期也是提示未找到命令,实际结果弹出Install Command Line Developer Tools弹窗安装,网上查阅资料,删除/usr/bin/python3、/usr/bin/pip3、/usr/local/bin/python3、/usr/local/bin/pip3文件即可达到预期,但无权限删除/usr/bin/python3与/usr/bin/pip3文件,尝试过root账号、进行系统恢复模式暂时禁用SIP解决方案,都无法解决;🙏大佬指点一二;
Replies
1
Boosts
0
Views
254
Activity
Jun ’25
Is there a way for two users to make development builds on separate accounts for one app?
Tech stack: React Native + Expo. We are using two solo developer accounts (not a business or team account). Context: Friend and I set out to make an app together. Friend created app and set it up on Apple. We worked on it together. He controlled devops (builds and submission). Friend no longer can commit to development. Wants to transfer to me. I create apple developer account. After app transfer, my phone (deviceid) underwent a 14 day soft ban preventing builds. That has since been lifted. There seems to be something in place preventing me from making dev builds on the original dev bundleid. It says it's still owned by him despite the app transfer. Bottom line: what needs to happen so I can make dev builds? Nice to have: we can both make dev builds under the same bundleid
Replies
1
Boosts
0
Views
254
Activity
Dec ’25
Gnu Fortran and Mac OS Sequoia
I observed the following problem: A scientific code to perform Reverse Monte Carlo simulations (‘rmcxas’) compiled with the most up to date version of gcc/gfortran and Xcode including command line tools on Mac OS Sequoia 15.4 on a Macbook air with M4 processor generates the following problem upon starting it in a terminal: dyld[10154]: dyld cache '(null)' not loaded: syscall to map cache into shared region failed dyld[10154]: Library not loaded: /usr/lib/libSystem.B.dylib Referenced from: <0144F82E-003C-37A9-A544-9AE6336E549B> /Users/markuswinterer/bin/rmcxas Reason: tried: '/usr/lib/libSystem.B.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/lib/libSystem.B.dylib' (no such file), '/usr/lib/libSystem.B.dylib' (no such file, no dyld cache), '/usr/local/lib/libSystem.B.dylib' (no such file) zsh: abort rmcxas This occurs only about every 5th time the code is started. Help would be highly appreciated.
Replies
2
Boosts
0
Views
154
Activity
May ’25
Capacitor iOS Plugin with MobileVLCKit – Swift Plugin Not Recognized from Angular
Hi everyone, I'm developing a Capacitor plugin to display an RTSP video stream using MobileVLCKit on iOS. The Android side works perfectly, but I can’t get the iOS plugin to work — it seems my Swift file is not being detected or recognized, even though I’ve followed the official steps. What works: I followed the Capacitor Plugin Development Guide. I implemented the Android version of the plugin in Java inside the android/ folder. Everything works perfectly from Angular: the plugin is recognized and calls execute correctly. The issue on iOS: I implemented the iOS part in Swift, using the official MobileVLCKit documentation. I initially placed my RtspVlcPlugin.swift file in the plugin’s iOS folder, as the docs suggest. Then I moved it directly into the main app’s ios/App/App/ folder next to AppDelegate.swift and tried manual registration. The problem: Even though I manually register the plugin with: if let bridge = self.window?.rootViewController as? CAPBridgeViewController { bridge.bridge?.registerPluginInstance(RtspVlcPlugin()) print("✅ Plugin RtspVlcPlugin registered manually.") } It prints the registration message just fine. BUT from Angular, the plugin is not recognized: Capacitor.Plugins.RtspVlcPlugin has no methods, and I get this error: "code":"UNIMPLEMENTED" I also tried declaring @objc(RtspVlcPlugin) and extending CAPPlugin. I’ve verified RtspVlcPlugin.swift is added to the target and compiled. The Swift file doesn’t seem to register or expose any methods to Angular. I even tried adding the code without using a plugin at all — just creating a Swift class and using it via the AppDelegate, but it still doesn't expose any callable methods. My Swift code (RtspVlcPlugin.swift): import Capacitor import MobileVLCKit @objc(RtspVlcPlugin) public class RtspVlcPlugin: CAPPlugin, VLCMediaPlayerDelegate { var mediaPlayer: VLCMediaPlayer? var containerView: UIView? var spinner: UIActivityIndicatorView? @objc func iniciar(_ call: CAPPluginCall) { guard let urlStr = call.getString("url"), let x = call.getDouble("x"), let y = call.getDouble("y"), let w = call.getDouble("width"), let h = call.getDouble("height"), let url = URL(string: urlStr) else { call.reject("Missing parameters") return } DispatchQueue.main.async { self.containerView?.removeFromSuperview() let cont = UIView(frame: CGRect(x: x, y: y, width: w, height: h)) cont.backgroundColor = .black cont.layer.cornerRadius = 16 cont.clipsToBounds = true let sp = UIActivityIndicatorView(style: .large) sp.center = CGPoint(x: w/2, y: h/2) sp.color = .white sp.startAnimating() cont.addSubview(sp) self.spinner = sp self.containerView = cont self.bridge?.viewController?.view.addSubview(cont) let player = VLCMediaPlayer() player.delegate = self player.drawable = cont player.media = VLCMedia(url: url) self.mediaPlayer = player player.play() call.resolve() } } @objc func cerrar(_ call: CAPPluginCall) { DispatchQueue.main.async { self.mediaPlayer?.stop() self.mediaPlayer = nil self.spinner?.stopAnimating() self.spinner?.removeFromSuperview() self.spinner = nil self.containerView?.removeFromSuperview() self.containerView = nil call.resolve() } } public func mediaPlayerStateChanged(_ aNotification: Notification!) { guard let player = mediaPlayer, player.state == .playing, let sp = spinner else { return } DispatchQueue.main.async { sp.stopAnimating() sp.removeFromSuperview() self.spinner = nil } } } In the Angular project, I’m using the plugin by manually registering it with registerPlugin from @capacitor/core. Specifically, in the service where I need it, I do the following: import { registerPlugin } from '@capacitor/core'; const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin'); After this, I try to call the methods defined in the iOS plugin, like RtspVlcPlugin.iniciar({ ... }), but I get an UNIMPLEMENTED error, which suggests that the plugin is not exposing its methods properly to the Angular/Capacitor environment. That makes me believe the problem lies in how the Swift file is integrated or registered, rather than how it is used from Angular. I’d appreciate any guidance on how to properly expose a Swift-based Capacitor plugin’s methods so that they are accessible from Angular. Is there any additional registration step or metadata I might be missing on the iOS side?
Replies
1
Boosts
0
Views
202
Activity
Jul ’25
How to call a Swift file directly from Angular using Capacitor?
Hi everyone, I’m working on a Capacitor app built with Angular, and I’m trying to call a Swift class directly from the root of the iOS project (next to AppDelegate.swift) without using a full Capacitor plugin structure. The Swift file is called RtspVlcPlugin.swift and looks like this: import Capacitor @objc(RtspVlcPlugin) public class RtspVlcPlugin: CAPPlugin { @objc func iniciar(_ call: CAPPluginCall) { call.resolve() } } In AppDelegate.swift I register it like this: if let bridge = self.window?.rootViewController as? CAPBridgeViewController { bridge.bridge?.registerPluginInstance(RtspVlcPlugin()) print("✅ RtspVlcPlugin registered.") } The registration message prints correctly in Xcode logs. But from Angular, when I try to call it like this: import { registerPlugin } from '@capacitor/core'; const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin'); RtspVlcPlugin.iniciar({ ... }); I get this error: {"code":"UNIMPLEMENTED"} So, even though the plugin is registered manually, it’s not exposing any methods to the Angular/Capacitor runtime. My question is: What is the correct way to access a manually created Swift class (in the root of the iOS project) from Angular via Capacitor? Thanks in advance!
Replies
1
Boosts
0
Views
169
Activity
Jul ’25
Alternatives to exports file for using Xcode frameworks in iOS
Hi, I have an iOS project with the following app targets: main iOS application a notification service extension 5 static libs containing some swift files with public methods 1 dynamic framework with above static libs as dependencies. The framework only contains 2 files - a default .h file and 1 .exp file. This exports file contains mangled-names of all the public methods that are exposed by the 5 static libs present as framework's dependencies. I obtained these symbols using the nm command for each static lib. The main iOS app target has 2 dependencies - the framework and the notification extension. The notification extension only depends on the framework. This setup works perfectly fine. I wanted to understand: If using the exports file is the only way to make this setup work? If not, what else can I do? What way does Apple recommend? According to my requirements, I only need at-most 2-3 functions to be exposed by the framework - thus using a exports file just for that seems to bug me. Thank you.
Replies
3
Boosts
0
Views
210
Activity
Dec ’25