My app (called "MuVis - Music Visualizer") passes the macOS App Store verification, but is failing the iOS verification. The errors indicate a problem with the Swift package github.com/Treata11/CBass. I have been in touch with the CBass package developer (Treata11) as well as the original BASS developers (un4seen.com). We think the problem is related to CBass swift-package config (which apparently works fine for mac, but doesn’t for iOS). The source code for the package is at the site package. All of us think that the package is configured correctly in accordance with the latest Apple package development documentation. Please tell us what is wrong with this package, and how to make it pass the iOS App Store verification.
The Xcode error messages from validation testing include several items similar to:
Upload Symbols Failed: inline-code
The archive did not include a dSYM for the bass.framework with the UUIDs [18D5DBE2-3250-3EDE-B75C-D81B4E9F05AC, A88554A0-9087-3776-AC05-424B2D52F973, DEB682F5-ABBE-39D5-A0F8-8C01C14E178A]. Ensure that the archive's dSYM folder includes a DWARF file for bass.framework with the expected UUIDs.
Since the MuVis app is long and complex, I have written a minimal reproducible example app (called "SwiftCBassDemo") for which source code is available at DemoApp.
I am using macOS 15.6.1, Xcode 16.4, and iOS 18.6.2.
Swift Packages
RSS for tagCreate reusable code, organize it in a lightweight way, and share it across Xcode projects and with other developers using Swift Packages.
Posts under Swift Packages tag
200 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
This post documents an issue I reported in feedback FB19610114 and see if anyone knows of a workaround. Here is a copy of the feedback.
Short version
Manipulation (SwiftUI OR RealityKit) fails to translate entities after changing rooms. By changing rooms, I mean a human wearing an Apple Vision Pro leaving one room and entering another room. Once this issue occurs, it impacts all apps that use these features. A device restart is the only solution I have to fix it.
Feedback FB19610114
This is an odd one. I'm using the new Manipulation Component in visionOS 26. Most of the time this works well. Sometime it stops working and when it does the only way to get it working again is to reboot the headset.
When this happens, I can continue to rotate and scale items, but translation no longer works. It is as if the item is stuck to a fixed point in the parent scene (window, volume, etc). When this bug occurs, it affects every app across the entire operating system that is using manipulation, including the RealityKit component AND the SwiftUI version. This is not limited to one app and is not limited to apps that I am working on. Once this error occurs, it affects literally any application across the operating system that is using this API, including apps from Apple.
I won't speculate on the cause of this, but I do know of one way where I can always get it to happen.
Here is how to reproduce it:
Make an Xcode project with a single entity that uses the Manipulation Component. There is no need to customize the configuration of this component. The default implementation will work.
Build and run this app on device. You can keep running from device or quit and launch the app like normal on device.
Open the app and manipulate the entity - it should work as expected.
Physically walk into another room. It is vital that you leave the current room that you are in and enter a different room entirely.
Use the digital crown to recenter your view and bring your window or volume to you.
Test the manipulation on the entity again - it should still be working as expected at this point.
Physically, move yourself and your headset into the original room where you started.
Use the digital crown to recenter your view and bring your window or volume to you.
Test the manipulation on the entity again - you should now see the issue.
When I follow the steps above, then 100% of the time manipulation translation stops working at this point. It will impact any application using this API. The only way to fix it is to restart my headset.
A few points to keep in mind
It does not matter if an app is actively being run from Xcode.
When this occurs, it impacts every single app, not just one.
When this occurs, rotation and scaling continue to work, but the entity/view cannot be translated.
This impacts BOTH the SwiftUI version and the RealityKit version.
When this occurs, the only way to "fix" it is to reboot the device.
Good day!
When your project have total 887 or more SPM local targets and then you try to build it, xcodebuild will be crash.
Crash log:
SWBBuildService-2025-08-11-151103.ips
Thread 2 Crashed:: Dispatch queue: com.apple.root.default-qos.cooperative
0 libxpc.dylib 0x197c4826c _availability_version_check + 8
1 libswiftCore.dylib 0x1a9b44428 __isPlatformVersionAtLeast + 92
2 libswiftCore.dylib 0x1a9a6e054 _swift_allocObject_ + 1100
3 SWBMacro 0x104a9c408 specialized _ArrayBuffer._consumeAndCreateNew(bufferIsUnique:minimumCapacity:growForAppend:) + 116
4 SWBMacro 0x104a97b58 specialized Array.append<A>(contentsOf:) + 116
5 SWBMacro 0x104a954e8 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 160
6 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
7 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
8 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
9 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
10 SWBMacro 0x104a96548 MacroEvaluationProgram.executeInContext(_:withResultBuilder:alwaysEvalAsString:) + 4352
But if you try to build Package.swift via swift build command, it works.
Here you can open sample project:
Just Package.swift with SPM 900 targets
Open Package.swift via Xcode 26 any beta and try to build
Xcode workspace with SPM 900 targets
Open MyApp.xcworkspace and try to build
You can also make by self the Package.swift (also make required directories for SPM):
// swift-tools-version: 5.9
import PackageDescription
// let count = 800 // no crash
let count = 900 // crash
let targetsNames = (1...count).map { "Pkg1Target\($0)" }
let targets = targetsNames.map { Target.target(name: $0) }
let package = Package(
name: "Pkg1TargetLibrary",
platforms: [.iOS(.v16)],
products: [
.library(name: "Pkg1TargetLibrary", targets: targets.map(\.name)),
],
targets: targets
)
Hi everyone,
I’m building an iOS app that originally targeted iPhone using NavigationStack. Now I’m adapting it for iPad and switched to using NavigationSplitView to support a three-column layout.
The structure looks like this:
NavigationSplitView {
A // Sidebar
} content: {
B // Middle column – this shows a list
} detail: {
C // Detail view
}
The issue is with the list shown in view B (the content column). It appears completely unstyled, as if it’s using .listStyle(.plain) — with no background material, and a very flat look.
I can understand that this might be intentional on iPad to visually distinguish the three columns.
However, the problem is that this same unstyled list also appears on iPhone, even though iPhone only shows a single column view at a time!
I tried explicitly setting .listStyle(.insetGrouped) or .listStyle(.grouped) on the list in view B, but it makes no difference.
When I go back to NavigationStack, the list in B is styled properly, just as expected — but then I lose the enhanced iPad layout.
What I’m looking for:
I’d like to keep using NavigationSplitView, but I want the list in the content column (view B) to use the default iOS list styling, at least on iPhone.
Is there any way to achieve this?
Thanks!
My app uses VStack and HStack, instead of the normal table format. When I try to print everything works perfect but it will not print the cell outline.
What is the correct line code or instruction terminology?
Thanks, Hal
I have been learning from the Apple Developer tutorials and I got stuck on the ScoreKeeper chapter with Testing. Since my Macbook Pro 2017 can only use Xcode 15.2 as the highest level, I am having issues with it. I saw a forum post that a certain level of Swift and the tool chain would fix this. I attempted to install Swift 5.10.1 to then realize I only had Xcode 15.2 not 15.3, so I had to attempt to install Swift 5.9. Since neither option worked, I uninstalled Xcode and removed any extra files along with swift packages, minus my projects, to redownload and reinstall Xcode 15.2. Now I am having issues with building the scheme, and I get link error,s and they pertain to Swift 5.10.1, which I had not installed any Swift packages after the Xcode reinstallation. I have tried another previous project even a new one same error. This was 7/30/25, as of today 7/31 I tried to install Swift 5.9 thinking it would overwrite or "downgrade" the package, no such luck. The file path in the error stops at the /.../...RELEASE.pkg file and does not continue, which seems to be the issue of the error. How to I fix this issue, I had a working product 3 dyas ago
How to add an app icon created in Icon Composer to an App Playground project?
I have a Swift Package, it's added to both the main app and the autofill extension. The main app is an iOS app that run directly on my mac from Xcode.
I use this extension to access the bundle
import Foundation
import OSLog
class CurrentBundleFinder {}
extension Foundation.Bundle {
static let myModule: Bundle = { /* The name of your local package, prepended by "LocalPackages_" */
let bundleName = "DesignSystem_DesignSystem"
let logger = Logger(subsystem: "DesignSystem", category: "Bundle")
logger.error("Searching for bundle: \(bundleName)")
let candidates = [ /* Bundle should be present here when the package is linked into an App. */
Bundle.main.resourceURL, /* Bundle should be present here when the package is linked into a framework. */
Bundle(for: CurrentBundleFinder.self).resourceURL, /* For command-line tools. */
Bundle.main.bundleURL, /* Bundle should be present here when running previews from a different package (this is the path to "…/Debug-iphonesimulator/"). */
Bundle(for: CurrentBundleFinder.self).resourceURL?.deletingLastPathComponent().deletingLastPathComponent(), /* For app extensions - look in parent app bundle */
Bundle.main.bundleURL.deletingLastPathComponent().deletingLastPathComponent(),
]
logger.error("all bundle: \(candidates, privacy: .public)")
for (index, candidate) in candidates.enumerated() {
logger.error("Checking candidate \(index): \(candidate?.absoluteString ?? "nil", privacy: .public)")
let bundlePath = candidate?.appendingPathComponent(bundleName + ".bundle")
logger.error("Bundle path: \(bundlePath?.absoluteString ?? "nil", privacy: .public)")
if let bundle = bundlePath.flatMap(Bundle.init(url:)) {
logger.error("Successfully found bundle at: \(bundlePath?.absoluteString ?? "unknown", privacy: .public)")
return bundle
}
}
logger.error("Unable to find bundle named \(bundleName)")
fatalError("unable to find bundle named \(bundleName)")
}()
}
Bellow is the log from the main app and the autofill extension
log.txt
I have check that /private/var/folders/cb/fctmx0_x3_dbxy_9wnm7g0s40000gn/X/1CC84EBB-DAC0-5120-9346-5EFBC8691CF1/d/Wrapper/Proton Pass.app/PlugIns/AutoFill.appex/DesignSystem_DesignSystem.bundle
exist in the file system, but the autofill extension is unable to create a bundle from that
I use spm manage swift package, now i want my macos app support arm64e,so i add arm64e in Build Srtting -> Architectures.
but i got error Could not find module 'SwiftyJSON' for target 'arm64e-apple-macos'; found: arm64-apple-macos, x86_64-apple-macos
Apparently, if no limit in Package.swift, SPM will only compile versions for x86 and ARM64 architectures by default.
now, how should I configure SPM to compile the arm64e version?
thanks
Module compiled with Swift 6.0.3 cannot be imported by the Swift 6.1 compiler: /private/var/tmp/_bazel_xx/8b7c61ad484d9da1bf94a11f12ae6ffd/rules_xcodeproj.noindex/build_output_base/execroot/main/CustomModules/BIYThred/CocoaLumberjack/framework/CocoaLumberjack.framework/Modules/CocoaLumberjack.swiftmodule/arm64-apple-ios.swiftmodule
In Beta 1,2, and 3, we could pick up and inspect entities, bringing them closer while moving them outside of the bounds of a volume.
As of Beta 4, these entities are now clipped by the bounds of the volume. I'm not sure if this is a bug or an intended change, but I files a Feedback report (FB19005083). The release notes don't mention a change in behavior–at least not that I can find.
Is this an intentional change or a bug?
Here is a video that shows the issue.
https://youtu.be/ajBAaSxLL2Y
In the previous versions of visionOS 26, I could move these entities out of the volume and inspect them close up. Releasing would return them to the volume. Now they are clipped as soon as they reach the end of the volume.
I haven't had a chance to test with windows or with the SwiftUI modifier version of manipulation.
Hello everyone, 👋🏼🤠
I've been struggling with a persistent issue for several weeks and would greatly appreciate any insights or suggestions from the community.
❗️Problem Summary
We are sending JSON requests (~100 KB in size) via URLSession from a Swift app running on Windows. These requests consistently time out after a while. Specifically, we receive the following error:
Error Domain=NSURLErrorDomain Code=-1001 "(null)"
This only occurs on Windows – under macOS and Linux, the same requests work perfectly.
🔍 Details
The server responds in under 5 seconds, and we have verified that the backend (a Vapor app in Kubernetes) is definitely not the bottleneck.
The request always hits the timeout interval, no matter how high we configure it: 60, 120, 300, 600 seconds – the error remains the same. (timeoutForRequest)
The request flow: Swift App (Windows)
---> HTTPS
---> Load Balancer (NGINX)
---> HTTP
---> Ingress Controller
---> Vapor App (Kubernetes)
On the load balancer we see this error: client prematurely closed connection, so upstream connection is closed too (104: Connection reset by peer)
The Ingress Controller never receives the complete body in these error cases. The content length set by the Swift app exceeds the data actually received.
We disabled request buffering in the Ingress Controller, but the issue persists.
We even tested a setup where we inserted a Caddy server in between to strip away TLS. The Swift app sent unencrypted HTTP requests to Caddy, which then forwarded them. This slightly improved stability but did not solve the issue.
🧪 Additional Notes
The URLSession is configured in an actor, with a nonisolated URLSession instance:
actor DataConnectActor {
nonisolated let session : URLSession = URLSession(configuration: {
let urlSessionConfiguration : URLSessionConfiguration = URLSessionConfiguration.default
urlSessionConfiguration.httpMaximumConnectionsPerHost = ProcessInfo.processInfo.environment["DATACONNECT_MAX_CONNECTIONS"]?.asInt() ?? 16
urlSessionConfiguration.timeoutIntervalForRequest = TimeInterval(ProcessInfo.processInfo.environment["DATACONNECT_REQUEST_TIMEOUT"]?.asInt() ?? 120)
urlSessionConfiguration.timeoutIntervalForResource = TimeInterval(ProcessInfo.processInfo.environment["DATACONNECT_RESSOURCE_TIMEOUT"]?.asInt() ?? 300)
urlSessionConfiguration.httpAdditionalHeaders = ["User-Agent": "DataConnect Agent (\(Environment.version))"]
return urlSessionConfiguration
}())
public internal(set) var accessToken: UUID? = nil
...
}
Requests are sent via a TaskGroup, limited to 5 concurrent tasks.
The more concurrent tasks we allow, the faster the timeout occurs.
We already increased the number of ephemeral ports in Windows. This made things slightly better, but the problem remains.
Using URLSessionDebugLibcurl=1 doesn't reveal any obvious issue related to libcurl.
We have also implemented a retry mechanism, but all retries also time out.
🔧 Request Flow (Code Snippet Summary)
let data = try JSONEncoder().encode(entries)
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.httpBody = data
request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
request.setValue("application/json; charset=UTF-8", forHTTPHeaderField: "Content-Type")
// additional headers...
let (responseData, response) = try await urlSession.data(for: request)
✅ What We’ve Tried
Tested with and without TLS
Increased timeout and connection settings
Disabled buffering on Ingress
Increased ephemeral ports on Windows
Limited concurrent requests
Used URLSessionDebugLibcurl=1
We don't know how we can look any further here.
Thank you in advance for any guidance!
Hello there! I've been struggline with this thing for a two days now, and seems like it's a bug in SwiftUI.
Navigation title is jumping on top of the ScrollView's content when switching tabs in TabView.
Steps to reproduce:
Scroll one tab to the bottom so that the large title is hidden and the floating toolbar appears.
Go to another tab in the tab bar.
Go back to the initial tab (it is still scrolled), and press the current tab button again to scroll to the top. The navigation title will glitch and be on top of the content. The animation fixes if you scroll again manually.
Video: https://share.cleanshot.com/PFCSKMlH
Code (simplified):
import SwiftData
import SwiftUI
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
TabsContentView()
}
}
}
// ...
struct TabsContentView: View {
enum Tab {
case library, profile
}
@State private var selectedTab: Tab = .library
var body: some View {
TabView(selection: $selectedTab) {
NavigationStack {
YourLibraryList()
.navigationTitle("Your Library")
}
.tabItem {
Label("Library", systemImage: "tray.fill")
}
.tag(Tab.library)
NavigationStack {
VStack {
Spacer()
Text("Profile")
.font(.largeTitle)
.foregroundColor(Color.theme.text)
Text("Manage your account and preferences here")
.font(.body)
.foregroundColor(Color.theme.mutedForeground)
.multilineTextAlignment(.center)
.padding(.horizontal)
Spacer()
}
.navigationTitle("Explore")
}
.tabItem {
Label("Profile", systemImage: "person.fill")
}
.tag(Tab.profile)
}
.toolbarBackground(.ultraThinMaterial, for: .tabBar)
.toolbarBackground(.visible, for: .tabBar)
}
}
// ...
struct YourLibraryList: View {
var body: some View {
ScrollView {
VStack(spacing: 12) {
ForEach(1 ... 20, id: \.self) { number in
RoundedRectangle(cornerRadius: 12)
.fill(Color.blue.opacity(0.1))
.stroke(Color.blue, lineWidth: 1)
.frame(height: 60)
.overlay(
Text("\(number)")
.font(.title2)
.fontWeight(.semibold)
.foregroundColor(.blue)
)
}
}
.padding(.horizontal)
}
}
}
I'm trying to add a swift package using Xcode 26 Beta but I keep getting the spinning loader.
I tried to remove and re-add my github account, clear history and running plutil -remove IDESwiftPackageAdditionAssistantRecentlyUsedPackages ~/Library/Preferences/com.apple.dt.Xcode.plist in the terminal.
I’m aware that Xcode version 26 beta 3 provides an option to enable Swift’s Approachable Concurrency feature at the project level. However, I’d like to achieve the same for a Swift Package. Could you please advise on how to enable Approachable Concurrency support specifically for a Swift Package?
Hi there,
I am working on an iOS mobile app, with a MVVM architecture and created an SPM folders for my DesignSystem, CoreKit, UnityBridge, and VoicePipeline.
I added the packages locally, and dragged them into the project. Is working this way recommended? Or not? Should all the SPM folders I listed above be used this way, or should only some?
New to this, unsure what is best.
I do plan on sharing my code with other devs to work on. I thought this made sense, but if i did it the other way I was unsure how I would share the packages what is a best practice. Thanks so much!
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
Swift Packages
Swift
Swift Playground
Education
what else can you do with it except for getting the alarm run off?
and the alarm even gets dismissed when the user presses any buttons on device even volume buttons. I hope it's better by the time when iOS26 is officially released but I can't prepare for the new iOS update with this useless new framework. does anybody know what new features in this framework are coming up?
I need help. Looking for devs who’ve integrated Unity into a native iOS app (Swift/SwiftUI)
SwiftUI vs Flutter for Embedding Unity in an iOS App?
I’m planning an iOS-first app where users interact with a real-time 3D custom avatar with 52 blendshapes powered by Unity, using SALSA LipSync + Emoter for facial animation. The avatar will respond to voice using Whisper → GPT-4 → ElevenLabs.
My plan is to embed Unity only for the avatar screen, and build the rest of the app (chat, voice input, onboarding, etc.) natively?
Here’s the decision I’m stuck on:
Should I stick with SwiftUI, since it gives full access to iOS-native features like ARKit, audio routing, and StoreKit? I only plan to develop for iOS.
Has anyone here integrated Unity with Flutter for mobile app successfully? Any pitfalls or major limitations I should know about before going that route?
I haven’t started development yet — just want to make sure I choose the right foundation for performance, flexibility, and long-term growth.
Any experience would be hugely appreciated!
Topic:
Community
SubTopic:
Apple Developers
Tags:
Swift Packages
Community Management
ARKit
Apple Unity Plug-Ins
Hi, I keep trying to use transformable to store an array of strings with SwiftData, and I can see that it is activating the transformer, but it keeps saying that I am still using NSArray instead of NSData.
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unacceptable type of value for attribute: property = "category"; desired type = NSData; given type = Swift.__SwiftDeferredNSArray; value = ( yo, gurt ).' terminating due to uncaught exception of type NSException CoreSimulator 1010.10 - Device: iPhone 16 18.0 (6879535B-3174-4025-AD37-ED06E60291AD) - Runtime: iOS 18.0 (22A3351) - DeviceType: iPhone 16 Message from debugger: killed
@Model
class MyModel: Identifiable, Equatable {
@Attribute(.transformable(by: StringArrayTransformer.self)) var category: [String]?
@Attribute(.transformable(by: StringArrayTransformer.self)) var amenities: [String]?
var image: String?
var parentChunck: MyModelDataChunk_V1?
init(category: [String]?, amenities: [String]?) {
self.category = category
self.amenities = amenities
}
}
class StringArrayTransformer: ValueTransformer {
override func transformedValue(_ value: Any?) -> Any? {
print(value)
guard let array = value as? [String] else { return nil }
let data = try? JSONSerialization.data(withJSONObject: array, options: [])
print(data)
return data
}
override func reverseTransformedValue(_ value: Any?) -> Any? {
guard let data = value as? Data else { return nil }
let string = (try? JSONSerialization.jsonObject(with: data, options: [])) as? [String]
print(string)
return string
}
override class func transformedValueClass() -> AnyClass {
return NSData.self
}
override class func allowsReverseTransformation() -> Bool {
return true
}
static func register() {
print("regitsering")
ValueTransformer.setValueTransformer(StringArrayTransformer(), forName: .stringArrayTransformerName)
}
}
extension NSValueTransformerName {
static let stringArrayTransformerName = NSValueTransformerName("StringArrayTransformer")
}
I am working on an iOS project using Xcode 16.0 that leverages multiple Swift packages. Among these, I have a Shared Package that contains reusable code and is linked to several top-level feature packages (e.g., VideoPlayer, VideoEditor, etc.).
The Shared Package includes a Swift Package Manager plugin for linting code standards, which is designed to execute during its own build process. However, when building a top-level package (e.g., VideoPlayer), the Shared Package is also built as part of the dependency graph. During this process, the linting plugin in the Shared Package is executed unnecessarily, even though the intent is to only build the Shared Package's code.
This behavior results in a significant increase in build times for the top-level packages, as the linting plugin is executed every time the Shared Package is built indirectly.
Key Details:
Xcode Version: 16.0
Swift Package Manager: Used for dependency management.
Issue: The linting plugin in the Shared Package executes during the build of top-level packages, increasing build times.
Expected Behaviour: The plugin should only execute when the Shared Package is built directly, not when it is built as a dependency of a top-level package.
I would like to know if there is a way to configure the Shared Package or the Swift Package Manager to prevent the plugin from executing when the Shared Package is built as a dependency of a top-level package, while still allowing the plugin to run when the Shared Package is built directly.
Any guidance, configuration tips, or best practices to address this issue would be greatly appreciated.