My swift student challenge submission is an iPad app built in Xcode and I'm planning on selecting the Xcode 26 option for testing in the dropdown provided in the application. Just have to confirm that the run destination for the playground in Xcode will be an iPad simulator right? Recently I have seen many participants post their submission screenshot for iPhone renders so just wanted to confirm the run destination.
Thank you👾
Overview
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Apple provides sample code for compressing a single file here, but the "aa" command and Finder cannot decompress these files. I needed to write a custom decompresser using Apple's sample code here.
Apple provides sample code for creating an "aar" file for directories here and a single string here, and the aa command and Finder can deal with these.
However, I have struggled creating an ".aar" file for a single file.
The file could be quite large, so reading it into memory and writing it as a blob is not an option.
Does anyone have suggestions or can point me to Apple documentation that can create a ".aar" file for a single file?
I am reporting what appears to be a serious integrity flaw in Safari under iPadOS 26.3 (and lower) that materially undermines the reliability of Screen Time parental controls.
This is not merely a UX inconsistency but a functional contradiction within a system explicitly marketed and positioned as secure parental control infrastructure.
Device / Environment
Device: iPad Air M3 13" (2025)
OS: iPadOS 26.3
Safari (system version)
Screen Time enabled with active restrictions
Child account (10 years old)
Background
We deliberately chose an Apple device for school use based on the expectation that Apple’s system-level parental control mechanisms — especially Screen Time — are robust, tamper-resistant, and technically consistent.
Screen Time is configured with:
App limits
Downtime
Parental controls enabled with limited web content restrictions (school requirements prevent strict blocking)
Safari enabled (mandatory for educational use)
further parental control restrictions
Because aggressive website blocking would interfere with legitimate school activities, monitoring Safari browsing history is a central supervisory mechanism.
When Screen Time is active:
Clearing the entire browsing history via Safari is correctly blocked.
Clearing history via system settings is correctly blocked.
The system explicitly communicates that deletion is not permitted due to Screen Time restrictions.
This behavior establishes a clear user expectation:
Browsing history is protected against manipulation.
The Issue
Despite the above safeguards, individual browsing history entries can be deleted easily and silently through the address bar suggestion interface.
This creates a structural contradiction:
Full deletion is blocked.
Selective deletion — which is arguably more problematic — remains possible.
Steps to Reproduce
Enable Screen Time with restrictions that prevent deletion of browsing history (for example on a student device with a child account).
Open Safari and visit any website.
Confirm it appears in Safari history.
Tap the Safari address bar.
Type part of the URL or page title.
Safari suggests the previously visited page below the address bar.
Swipe left on that suggestion.
A red “Delete from History” button appears.
Tap it.
Actual Result
The entry disappears immediately:
No Screen Time PIN required
No authentication request
No warning
No restriction triggered
No parental notification
No audit trace visible
Deletion occurs silently and irreversibly.
Expected Result
When Screen Time is configured to prevent browsing history deletion:
Individual entries must not be deletable
Deletion must require Screen Time authentication
Anything else defeats the protective purpose of the restriction.
Real-World Impact
In practical use, this allows minors to selectively sanitize browsing history while preserving a seemingly intact record.
In our case, this method is widely known among classmates and routinely used to conceal visits to gaming or social media platforms during school hours.
The technical barrier to exploitation is negligible.
This results in:
A false sense of security for parents
A discrepancy between advertised functionality and actual system behavior
A material weakening of parental control integrity
When a system explicitly blocks full history deletion but permits silent selective deletion, the protection mechanism becomes functionally inconsistent and unreliable.
Given that Screen Time is publicly positioned as a dependable parental control framework, this issue raises concerns not only about implementation quality but also about user trust and reasonable reliance on advertised safeguards.
Request
Please classify this as a parental control integrity and trust issue.
Specifically:
Disable individual history deletion while Screen Time restrictions are active
OR
Require Screen Time passcode authentication for deleting single entries
Screen Time is presented as a secure supervisory environment for minors.
In its current implementation under iPadOS 26.3 and before, that expectation is technically not met.
This issue warrants prioritization.
Hello,
I need to develop a Network Extension (Transparent Proxy) that sends data to the host application for analysis.
Network Extension - XPC client
Host application - XPC service
I am trying to implement it with XPC. However, when attempting to connect, I see the following error in the system logs on client side.
[0x1015a2050] failed to do a bootstrap look-up: xpc_error=[3: No such process]
I assume the problem occurs because the Network Extension cannot find the registered XPC service. On the service side, I see the following message in the logs:
2026-02-24 13:15:36.419345+0300 localhost fgstnehost[58884]: (libxpc.dylib) [com.apple.xpc:connection] [0x100bdee70] activating connection: mach=true listener=true peer=false name=TEAM_ID.group.app_id.netfilter.xpc
Entitlements Network Extension:
<?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>
<key>com.apple.developer.networking.networkextension</key>
<array>
<string>app-proxy-provider-systemextension</string>
</array>
<key>com.apple.security.application-groups</key>
<array>
<string>TEAM_ID.group.app_id.netfilter</string>
</array>
<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.xpc.mach-lookup.global-name</key>
<array>
<string>TEAM_ID.group.app_id.netfilter.xpc</string>
</array>
</dict>
</plist>
Entitlements host application:
<?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>
<key>com.apple.developer.networking.networkextension</key>
<array>
<string>app-proxy-provider-systemextension</string>
</array>
<key>com.apple.developer.system-extension.install</key>
<true/>
<key>com.apple.security.application-groups</key>
<array>
<string>TEAM_ID.group.app_id.netfilter</string>
</array>
<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.xpc.mach-service.name</key>
<array>
<string>TEAM_ID.group.app_id.netfilter.xpc</string>
</array>
</dict>
</plist>
Server.m
@interface XPCServer ()
@property (nonatomic, strong) NSXPCListener *listener;
@end
@implementation XPCServer
- (instancetype) init
{
self = [super init];
if (self != nil)
{
_listener = [[NSXPCListener alloc] initWithMachServiceName: XPC_SERVICE_ID];
_listener.delegate = self;
}
return self;
}
- (void) start
{
[self.listener resume];
}
- (BOOL) listener:(NSXPCListener *) listener shouldAcceptNewConnection:(NSXPCConnection *) newConnection
{
return YES;
}
@end
Client.m
@interface XPCClient ()
@property (nonatomic, strong) NSXPCConnection *connection;
@end
@implementation XPCClient
- (void) connect
{
self.connection = [[NSXPCConnection alloc] initWithMachServiceName: XPC_SERVICE_ID options: NSXPCConnectionPrivileged];
self.connection.invalidationHandler =
^{
[[OSLogger sharedInstance] error: "XPCClient: connection can not be formed or the connection has terminated and may not be re-established"];
};
self.connection.interruptionHandler =
^{
[[OSLogger sharedInstance] error: "XPCClient: the remote process exits or crashes"];
};
[self.connection resume];
}
@end
What could be the root cause of this issue?
Are there any recommendations for implementing IPC between a Network Extension and aß Host Application?
Thank you in advance.
We are currently experiencing an issue that occurs only on iPhone 17 models.
In our app, after connecting to an external device, users can download multiple video files stored on the device. When downloading several videos consecutively, the device consistently stops receiving responses midway through the process. As a result, no response is returned, and the connection between the app and the device is eventually lost.
This issue does not occur on any iPhone models prior to iPhone 17.
It is reproducible across all iPhone 17 devices within our company.
This is a critical issue, and we need urgent assistance.
The main error logs show two patterns:
• Connection loss
• Timeout
At the OS level, the only error codes we receive are:
• -1005 (Network connection lost)
• -1001 (Request timed out)
Unfortunately, we are unable to obtain more detailed error information beyond these codes, which makes further debugging difficult.
We have attached the relevant logs below.
We would greatly appreciate any guidance on how to further investigate or resolve this issue.
310.0 / :: 81 % ::: 251.21481481481482
310.0 / :: 82 % ::: 254.23280423280423
310.0 / :: 83 % ::: 257.3820105820106
310.0 / :: 84 % ::: 260.4
KeepAlive SEND id=423F1336-6239-4B3B-9414-5A987D85D564 at=2026-02-24T12:56:43Z timeout=60.000000s
current: D20-Q2-PLUS, ssid: D20-Q2-PLUS_136a63
KeepAlive SKIP (in-flight)
tcp_output [C10.1.1:3] flags=[R.] seq=4017430266, ack=4146413113, win=2048 state=CLOSED rcv_nxt=4146413113, snd_una=4017429847
nw_read_request_report [C10] Receive failed with error "Operation timed out"
nw_flow_add_write_request [C10 192.168.000.0:443 failed parent-flow (satisfied (Path is satisfied), interface: en0[802.11], ipv4,
dns, uses wifi, LQM: good)] cannot accept write requests
nw_write_request_report [C10] Send failed with error "Socket is not connected"
Task <5BDBE621-329A-45E9-B236-9C173E92A41F>.<7> HTTP load failed, 361/0 bytes (error code: -1005 [4:-4])
Task <5BDBE621-329A-45E9-B236-9C173E92A41F>.<7> finished with error [-1005] Error Domain=NSURLErrorDomain Code=-1005 "The network
connection was lost." UserInfo={_kCFStreamErrorCodeKey=-4, NSUnderlyingError=0x13e632160 {Error Domain=kCFErrorDomainCFNetwork
Code=-1005 "(null)" UserInfo={NSErrorPeerAddressKey=<CFData 0x14cfe5a90 [0x201746068]>{length = 16, capacity = 16, bytes =
0x100201bbc0a86f010000000000000000}, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}},
_NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <5BDBE621-329A-45E9-B236-9C173E92A41F>.<7>,
_NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <5BDBE621-329A-45E9-B236-9C173E92A41F>.<7>"
), NSLocalizedDescription=The network connection was lost., NSErrorFailingURLStringKey=https://192.168.000.0/keepalive,
NSErrorFailingURLKey=https://192.168.000.0/keepalive, _kCFStreamErrorDomainKey=4}
KeepAlive FAIL id=423F1336-6239-4B3B-9414-5A987D85D564 elapsed=29.203s status=-1
error=Optional(Alamofire.AFError.sessionTaskFailed(error: Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost."
UserInfo={_kCFStreamErrorCodeKey=-4, NSUnderlyingError=0x13e632160 {Error Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)"
UserInfo={NSErrorPeerAddressKey=<CFData 0x14cfe5a90 [0x201746068]>{length = 16, capacity = 16, bytes =
0x100201bbc0a86f010000000000000000}, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}},
), NSLocalizedDescription=The network connection was lost.,
KeepAlive FAIL
1001 Log
KeepAlive SEND id=FC433405-C1F7-47EF-AF9E-D12E67B071FA at=2026-02-24T12:22:38Z timeout=60.000000s
current: D20-Q2-PLUS, ssid: VUEROID_D20-Q2-PLUS_136a63
KeepAlive FAIL id=FC433405-C1F7-47EF-AF9E-D12E67B071FA elapsed=7.834s status=-1
error=Optional(Alamofire.AFError.sessionTaskFailed(error: Error Domain=NSURLErrorDomain Code=-1001 "The request timed out."
UserInfo={_kCFStreamErrorCodeKey=60, NSUnderlyingError=0x135e612f0 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)"
UserInfo={_NSURLErrorNWPathKey=satisfied (Path is satisfied), viable, interface: en0[802.11], ipv4, dns, uses wifi, LQM: good,
_kCFStreamErrorCodeKey=60, _kCFStreamErrorDomainKey=1}},
), NSLocalizedDescription=The request timed out.,
NSErrorFailingURLKey=https://192.168.000.0/keepalive, _kCFStreamErrorDomainKey=1}))
KeepAlive FAIL ignored count=1 error=Server error : Optional(Alamofire.AFError.sessionTaskFailed(error: Error Domain=NSURLErrorDomain
Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=60,
KeepAlive SEND id=A64AE4C0-28B4-41E3-AAC9-422C41D99D15 at=2026-02-24T12:22:58Z timeout=60.000000s
KeepAlive FAIL id=110B96DA-4D88-45E0-B8F7-D0A9798593AE elapsed=43.605s status=-1
error=Optional(Alamofire.AFError.sessionTaskFailed(error: Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost."
UserInfo={_kCFStreamErrorCodeKey=-4, NSUnderlyingError=0x135e60f60 {Error Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)"
UserInfo={NSErrorPeerAddressKey=<CFData 0x144dfee40 [0x201746068]>{length = 16, capacity = 16, bytes =
0x100201bbc0a86f010000000000000000}, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}},
), NSLocalizedDescription=The network connection was lost., NSErrorFailingURLStringKey=https://192.168.000.0/keepalive,
NSErrorFailingURLKey=https://192.168.000.0/keepalive, _kCFStreamErrorDomainKey=4}))
KeepAlive FAIL ignored count=2 error=Server error : Optional(Alamofire.AFError.sessionTaskFailed(error: Error Domain=NSURLErrorDomain
Code=-1005 "The network connection was lost." UserInfo={_kCFStreamErrorCodeKey=-4, NSUnderlyingError=0x135e60f60 {Error
Domain=kCFErrorDomainCFNetwork Code=-1005 "(null)" UserInfo={NSErrorPeerAddressKey=<CFData 0x144dfee40 [0x201746068]>{length = 16,
capacity = 16, bytes = 0x100201bbc0a86f010000000000000000}, _kCFStreamErrorCodeKey=-4, _kCFStreamErrorDomainKey=4}},
Network type changed, hasWiFiInterface :false
We are sending a keepalive request every 30 seconds to maintain the connection state with the device. Most of the issues occur during this keepalive process, and this is when the logs mentioned earlier are generated.
Based on our debugging so far, the keepalive function itself is being called as expected. However, the execution appears to stall while waiting for a response from the device. After remaining in that state for some time, the session eventually ends with either a timeout or a connection loss error.
We are use almofire 4.0.1.
According to the firmware developer, when this issue occurs, there are no corresponding values or logs received on the device side.
Therefore, we are currently investigating whether this might be related to a networking issue on the iPhone side.
All other features are functioning normally. The problem occurs only when downloading VOD video files, and the reproduction rate is 100% under that condition.
I’m building a Swift Playgrounds app (.swiftpm) in Xcode 26.2 and I consistently see this warning, even on brand-new Swift Playgrounds apps created from the default template:
“Skipping duplicate build file in Compile Sources build phase:
/Users/.../.swiftpm/Media.xcassets”
Everything builds and runs normally and all images/assets appear correctly, so it seems like it’s just an annoying warning.
I’ve checked for duplicates and don’t see the asset catalog listed twice, but the warning still appears whenever I add an asset catalog to any playground project in Xcode.
Is this warning safe to ignore for submission, and it won’t affect Swift Student Challenge eligibility?
Has anyone gotten Postgres to run in a sandboxed app? I am compiling Postgres 18 myself from source and have tried to patch it so it doesn't use sysv (shmem) but it apparently has all kinds of invocations of sysv and once it's sandboxed has issues, e.g.:
2026-02-24 18:26:05.014 EST [4384] FATAL: semctl(65596, 16, SETVAL, 536) failed: Operation not permitted
Does anyone know of a way to either make the sandbox relax or make Postgres compatible with sandboxing? I have tried passing flags to initdb to use POSIX semaphores but it always wants to use sysv so I'm finding myself super deep in the weeds of the Postgres source code.
Topic:
Community
SubTopic:
Apple Developers
Tags:
Developer Tools
Entitlements
Debugging
App Sandbox
I am looking to optimize my AI-assisted workflow within Xcode.
Previously, my process was inefficient:
Manually selecting and copying code snippets from Xcode into Gemini.
Asking a specific question (e.g., "Modify this to show an alertError message box").
Copying the result back into Xcode.
I attempted to switch to the new native Intelligence feature in Xcode to streamline this, but I found significant shortcomings:
Latency: The response time is noticeably slow. Much slower than asking directly on Gemini 3 Pro.
Lack of Context: The AI often fails to grasp the full project context. For example, it frequently claims it cannot see the code for ScannerView even though it is part of the project. I often have to prompt it multiple times before it finally "finds" the file.
Is Xcode's Intelligence feature actually production-ready yet?
If not, what tools do you recommend that integrate well with iOS development?
To be clear, I am not looking for "vibe coding." I have a clear grasp of the problem and the high-level solution. My goal is to delegate the low-level implementation to the AI. I need a tool that has full project context from the start, eliminating the need to manually copy-paste snippets into a chat window.
I have an older project that was created before Xcode 26.2.
In Xcode versions prior to 26.2, there was no Swift Compiler – Concurrency build setting.
With those older versions, the following behavior occurs: a nonisolated function executes off the main thread.
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
run()
}
private func run() {
Task {
await runInMainThread()
}
}
func runInMainThread() async {
print(">>>> IN runInMainThread(), Thread.isMainThread \(Thread.isMainThread)")
await runInBackgroundThread()
}
private nonisolated func runInBackgroundThread() async {
print(">>>> IN runInBackgroundThread(), Thread.isMainThread \(Thread.isMainThread)")
}
}
Output:
>>>> IN runInMainThread(), Thread.isMainThread true
>>>> IN runInBackgroundThread(), Thread.isMainThread false
However, starting with Xcode 26.2, Apple introduced the Swift Compiler – Concurrency settings.
When running the same code with the default configuration:
Approachable Concurrency = Yes
Default Actor Isolation = MainActor
This is the output
Output:
>>>> IN runInMainThread(), Thread.isMainThread true
>>>> IN runInBackgroundThread(), Thread.isMainThread true
the nonisolated function now executes on the main thread.
This raises the following questions:
What is the correct Swift Compiler – Concurrency configuration if I want a nonisolated function to run off the main thread?
Is nonisolated still an appropriate way to ensure code runs on a background thread?
Where do i find or create my key ID and issuer ID.
Im lost.
Two months ago I requested the subject entitlement. I'm still waiting for it to be added to our account. Who or how can I find out what going on with it. I have no correspondence from Apple yet saying it was denied and why.
https://developer.apple.com/documentation/bundleresources/entitlements/com.apple.developer.persistent-content-capture?language=objc
Thank you.
I'm working on an editor for Bevy games and wanted the following workflow:
Launch the game process
Host a Metal view for the game's render target
Use an XPC service to transfer an MTLSharedTextureHandle
Keep the connection for editor/game communication and hot reload
As such I created the following editor service:
public let XPCEditorServiceName = "org.bevy.editor"
public enum XPCEditorMessage: Codable {
case ping
}
public enum XPCEditorReply: Codable {
case pong
}
extension XPCListener {
static let bevy = try! XPCListener(service: XPCEditorServiceName) { request in
request.accept(XPCEditorService.init)
}
}
struct XPCEditorService: XPCPeerHandler {
let session: XPCSession
private func handle(_ message: XPCEditorMessage) -> XPCEditorReply? {
switch message {
case .ping:
return .pong
}
}
func handleIncomingRequest(_ message: XPCReceivedMessage) -> (any Encodable)? {
do {
return handle(try message.decode())
} catch {
return nil
}
}
func handleCancellation(error: XPCRichError) {
print(error)
}
}
and I initialize it in my app's App initializer:
// Launch the XPC service
print(XPCListener.bevy)
I wanted to test this using an executable target with the following main.swift:
let session = try XPCSession(xpcService: XPCEditorServiceName)
let response: XPCEditorReply = try session.sendSync(XPCEditorMessage.ping)
print("Connected to editor!")
The editor prints Listener<org.bevy.editor>(Active) but the game fails with Underlying connection was invalidated. Reason: Connection init failed at lookup with error 3 - No such process
What am I doing wrong?
PS. Would also appreciate an example of sending & rendering the MTLSharedTextureHandle both in editor & game.
We are facing some weird issue in the UILabel initialisation. Also it is occurring sometimes.
class TextLabel: ConfigurableView<TextLabel.Config> {
struct Config {
var text: String = .empty
var font: UIFont?
var textColor: UIColor?
var maxLines: Int = 0
var attributedText: NSAttributedString?
var textAlignment: NSTextAlignment = .natural
var truncateWithMore: Bool = false
var onTapShowMore: (() -> Void)?
var onTap: (() -> Void)?
var accessibilityIdentifier: String?
}
private lazy var label: UILabel = {
let label = UILabel() **//##### Crash is occurring in this line.**
label.translatesAutoresizingMaskIntoConstraints = false
label.adjustsFontForContentSizeCategory = true
return label
}()
private lazy var tapGesture = UITapGestureRecognizer(target: self, action: #selector(onTap))
private var isTruncated = false
override func setUp() {
addSubview(label)
label.equalsContainer()
}
override func layoutSubviews() {
super.layoutSubviews()
updateContent()
}
override func setConfig(_ config: Config) {
super.setConfig(config)
updateContent()
}
@objc func onTap() {
if isTruncated {
config?.onTapShowMore?()
} else {
config?.onTap?()
}
}
func updateContent() {
guard let config = config else { return }
label.numberOfLines = config.maxLines
label.text = config.text
}
}
You can find my configurable view below.
import UIKit
class ConfigurableView<T>: UIControl {
private(set) var config: T?
init(_ config: T) {
super.init(frame: .zero)
setUp()
setConfig(config)
}
override init(frame: CGRect) {
super.init(frame: frame)
setUp()
}
required init(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func setUp() {
}
func setConfig(_ config: T) {
self.config = config
}
}
This crash is occurring randomly. Sometimes we could reproduce it in the app updates.
Topic:
UI Frameworks
SubTopic:
UIKit
Dear Apple Developer Support Team,
I am writing to inquire about the process for obtaining approval for the following entitlement in my iOS/macOS app:
<key>com.apple.developer.networking.networkextension</key>
<array>
<string>content-filter-provider</string>
</array>
Specifically, I would like guidance on:
The steps required to submit a request for this entitlement.
Any necessary documentation or justification that needs to be provided to Apple.
Typical review timelines and approval criteria.
Any restrictions or compliance requirements associated with this entitlement.
Our app intends to implement a content filtering functionality to enhance network security and user safety. We want to ensure full compliance with Apple’s policies and guidelines.
Could you please provide detailed instructions or point us to the relevant resources to initiate this approval process?
Thank you for your assistance.
Hello team,
I am trying to find out a way to block urls in the chrome browser if it is found in local blocked list cache. I found URL Filter Network very much suitable for my requirement. But I see at multiple places that this solution is only for Enterprise level or MDM or supervised device. So can I run this for normal user ? as my targeting audience would be bank users. One more thing how can I test this in development environment if we need supervised devices and do we need special entitlement ?
When trying to run sample project in the simulator then getting below error
Hi,
After the release of macOS Tahoe 26.2. We are seeing memory leaks if our Network Protection Extension is used alongside the Apple Built In Firewall, a second Security Solution that does Network Protection and a VPN. Our NEXT, socketfilterfw and the other security solution consume instead of a few MB of Memory now multiple Gigabytes of Memory. This issue started with the public release of macOS Tahoe 26.2, this issue was not present in earlier versions of macOS and the same set of Software. Just testing our solution by itself will not show this behavior. I unfortunately can't try to reproduce the issue on my test device that runs the latest 26.3 beta as I do not have the third party software installed there and I can't get it.
Our Network extension implements depending on the license and enabled features:
NEFilterDataProvider
NEDNSProxyProvider
NETransparentProxyProvider
For all man in the middle Use Cases we are using Network Framework, to communicate with the peers. And leaks suggest that the there is a memory leak within internals of the Network Framework.
Here is a shortened sample of the leaks output of our Network extension. However, the third party NEXT does show the same leaks.
More details can be found on the Feedback with the ID FB21649104
snippet is blocking post? sensitive language
Does anyone see similar issues or has an idea what could cause this issue, except a regression of the Network.framework introduced with macOS Tahoe 26.2?
Best Regards,
Timo
Hello All,
I’m working on a computer-vision–heavy iOS application that uses the camera, LiDAR depth maps, and semantic segmentation to reason about the environment (object identification, localization and measurement - not just visualization).
Current architecture
I initially built the image pipeline around CIImage as a unifying abstraction. It seemed like a good idea because:
CIImage integrates cleanly with Vision, ARKit, AVFoundation, Metal, Core Graphics, etc.
It provides a rich set of out-of-the-box transforms and filters.
It is immutable and thread-safe, which significantly simplified concurrency in a multi-queue pipeline.
The LiDAR depth maps, semantic segmentation masks, etc. were treated as CIImages, with conversion to CVPixelBuffer or MTLTexture only at the edges when required.
Problem
I’ve run into cases where Core Image transformations do not preserve numeric fidelity for non-visual data.
Example:
Rendering a CIImage-backed segmentation mask into a larger CVPixelBuffer can cause label values to change in predictable but incorrect ways.
This occurs even when:
using nearest-neighbor sampling
disabling color management (workingColorSpace / outputColorSpace = NSNull)
applying identity or simple affine transforms
I’ve confirmed via controlled tests that:
Metal → CVPixelBuffer paths preserve values correctly
CIImage → CVPixelBuffer paths can introduce value changes when resampling or expanding the render target
This makes CIImage unsafe as a source of numeric truth for segmentation masks and depth-based logic, even though it works well for visualization, and I should have realized this much sooner.
Direction I’m considering
I’m now considering refactoring toward more intent-based abstractions instead of a single image type, for example:
Visual images: CIImage (camera frames, overlays, debugging, UI)
Scalar fields: depth / confidence maps backed by CVPixelBuffer + Metal
Label maps: segmentation masks backed by integer-preserving buffers (no interpolation, no transforms)
In this model, CIImage would still be used extensively — but primarily for visualization and perceptual processing, not as the container for numerically sensitive data.
Thread safety concern
One of the original advantages of CIImage was that it is thread-safe by design, and that was my biggest incentive.
For CVPixelBuffer / MTLTexture–backed data, I’m considering enforcing thread safety explicitly via:
Swift Concurrency (actor-owned data, explicit ownership)
Questions
For those may have experience with CV / AR / imaging-heavy iOS apps, I was hoping to know the following:
Is this separation of image intent (visual vs numeric vs categorical) a reasonable architectural direction?
Do you generally keep CIImage at the heart of your pipeline, or push it to the edges (visualization only)?
How do you manage thread safety and ownership when working heavily with CVPixelBuffer and Metal? Using actor-based abstractions, GCD, or adhoc?
Are there any best practices or gotchas around using Core Image with depth maps or segmentation masks that I should be aware of?
I’d really appreciate any guidance or experience-based advice. I suspect I’ve hit a boundary of Core Image’s design, and I’m trying to refactor in a way that doesn't involve too much immediate tech debt, remains robust and maintainable long-term.
Thank you in advance!
its been a week i uploaded the documents for enrolment and there has been no reply. i have raised multiple concerns but am not receiving any resposes on them. is it normal?
Topic:
Developer Tools & Services
SubTopic:
Apple Developer Program
Hi there,
I recently updated to the latest version of macOS Tahoe 26.3.
Since then, Xcode is not able to resolve my Swift Package dependencies anymore. We use SSH for all our Github hosted packages. When package resolution is running, we randomly have Failed to verify SSH fingerprint on some remote package.
Nothing has changed and it worked perfectly with Tahoe 26.2. The SSH have been reconfigured and known hosts have been verified.
Is something changed between those 2 versions or is it a bug ?
Beta testers outside the US, for our MacOS App, are being told their ID is not valid in the US Store and that they must switch to a store in their country. Yet the store switch fails
Essentially beta testers outside the US cannot do testflight sandbox eCommerce for the Mac version of our app. Note that eCommerce on the Mac works for US based testers and eCommerce for the iOS/iPadOS works for testers in all territories. Many of these testers are in India, the UK and Canada. We believe that this is incorrect, that storeKit is not correctly detecting the AppStore Region for mac based testflight eCommerce. At this point we have 382 testers, most outside the US and we can only Beta Test our app with US users.
Attached are images of the messages that are coming from storeKit:
Here is a link to a video from a user in Canada who is demonstrating the problem (cut and paste into browser)
https://youtu.be/kB818wfVld4
Here is another link to a video from a user in Canada who is demonstrating the problem (cut and paste into browser).
https://youtu.be/7uAZKo8wpfU
We see that there is another post with a similar problem.
Similar eCommerce Problem
Because eCommerce works in all territories on iOS/iPadOS but ONLY in the US for Mac we suspect that this is an error that either a DBA or a coder will need to fix.
Any insights from anyone would be appreciated.