Posts under Developer Tools & Services topic

Post

Replies

Boosts

Views

Activity

A Summary of the WWDC25 Group Lab - Developer Tools
At WWDC25 we launched a new type of Lab event for the developer community - Group Labs. A Group Lab is a panel Q&A designed for a large audience of developers. Group Labs are a unique opportunity for the community to submit questions directly to a panel of Apple engineers and designers. Here are the highlights from the WWDC25 Group Lab for Developer Tools. Will my project codebase be used for training when I use Xcode's intelligent assistant powered by cloud-based models? When using ChatGPT without logging in, your data will not be used to improve any models. If you log in to a ChatGPT account, this is based on your ChatGPT account settings, which allows you to opt-out (it defaults to on). When using Xcode with accounts for other model providers, you should check with the policies of your provider. And finally, at no point will any portion of your codebase be used to train or improve any Apple models. We'd love to make our SwiftUI Previews (and soon, Playgrounds) as snappy as possible. Is there any way to skip certain build steps, such as running linters? It seems the build environment is exactly the same (compared to a debug build), but maybe there's a trick. Starting with Xcode 16, SwiftUI previews use the exact same build artifacts as the regular build. The new Playgrounds support in Xcode 26 uses these build artifacts too. Shell script build phases are the most common thing that introduces extra build time, so as a first step, try turning off all shell script build phases (like linters) to get an idea if that’s the issue. If those build phases add significant time to your build, consider moving some of those phases into asynchronous steps, such as running linters before committing instead of on every build. If you do need a shell script build phase to run during your build, make sure to explicitly define the input and output files, as that is a huge way to improve your build performance. Are we able to provide additional context for the models, like coding standards? Documentation for third party dependencies? Documentation on your own codebase that explains things like architecture and more? In general, Xcode will automatically search for the right context based on the question and the evolving answer, as the model can interact multiple times with your project as it develops an answer. This will automatically pick up the coding style of the code it sees, and can include files that contain architecture comments, etc. Beyond automatic context, you can manually attach other documents, even if they aren't in your project. For example, you could make a file with rules and ideas and attach it, and it will influence the response. We are very aware of other kinds of automatic context like rule files, etc, though Xcode does not support these at this time. Once ChatGPT is enabled for Coding Intelligence in Xcode 26, and I sign into my existing ChatGPT account, will the ChatGPT Coding Intelligence model in Xcode know about chat conversations on Xcode development done previously in the ChatGPT Mac app? Xcode does not use information from other conversations, and conversations started in Xcode are not accessible in the web UI or ChatGPT app. Is there a plan to make SwiftUI views easier to locate and understand in the view hierarchy like UIKit views? SwiftUI uses a declarative paradigm to define your user interface. That allows you to specify what you want, with the system translating that into an efficient representation at runtime. Unlike traditional AppKit and UIKit, seeing the runtime representation of SwiftUI views isn't sufficient in order to understand why it's not doing what you want. This year, we introduced a SwiftUI Instrument that shows why things are happening, like view re-rendering. Is it possible to use the AI chat with ChatGPT Enterprise? My company doesn't allow us to use the general ChatGPT, only the enterprise version they have setup that prevents data from being leaked Yes, Xcode 26 supports logging into any existing ChatGPT account, including enterprise accounts. If that does not meet your needs, you can also setup a local server that implements the popular chat completions REST API to talk to your enterprise account how you need. Now that Icon Composer is here, how does it complement or replace existing vector design tools such as Sketch for icon design? Icon Composer complements your existing vector design tools. You should continue to create your shapes, gradients, and layers in another tool like Sketch, and compose the exported SVG layers in Icon Composer. Once you bring your layers into Icon Composer, you can then use it to influence the translucency, blur, and specular highlights for your icon. What’s one feature or improvement in the new Xcode that you personally think developers will love, but might not immediately discover? Maybe something tucked away or quietly powerful that’s flown under the radar so far? One feature we're particularly excited about is the new power profiler for iOS, which gives you further insights into the energy consumption of your app beyond what was possible with the energy instrument previously. You can learn more about how to use this instrument and how it can help you greatly reduce your apps battery usage in the documentation, as well as the session Profile and optimize power usage in your app. There were also improvements in accessibility this year with Voice Control, where you can naturally speak your Swift code to Xcode, and it understands the Swift syntax as you speak. To see it in action, take a look at the demonstration in What’s new in Xcode 26. We have a software advisory council that is very sensitive to having our private information going to the cloud in any form. What information do you have to help me guide Xcode and Apple Intelligence through the acceptance process? One thing you can do is configure a proxy for your enterprise that implementing the popular Chat Completions API endpoint protocol. When using a model provider via URL, you can use your proxy endpoint to inspect the network traffic for anything that you do not want sent outside of your enterprise, and then forward the traffic through the proxy to your chosen model provider. Are there list of recommended LLMs to use with Xcode via Intelligence/Local? I've tried Gemma3-12B, but.. I hope there are better options? Apple doesn't have a published list of recommended local models. This is a fast-moving space, and so a recommendation would become out of date very quickly as new models are released. We encourage you to try out the local model support in Xcode 26 with models that you find meet your needs, and let us and the community know! (continued below)
1
0
656
Jul ’25
Dynamic Link problem
Dear Apple Community, I am facing quite a hard issue in my React Native app that I do not know how to overcome. I have an app, that connects to "ANY" Mautic.org instance - You can think of it as Wordpress for marketing automation. And as each WordPress instance has it's own URL, the same goes for the Mautic. So at the beginning I am asking user for a URL that my app si supposed to be connected: //previous code <TextInput value={instanceLink} onChangeText={(text) => setInstanceLink(text.trim().toLowerCase())} placeholder="Please insert instance link" style={styles.input} /> //Code continues The instance link value is stored in Expo Secure Store and used through the whole app. This works perfectly fine during development. The app saves this instance link and calls API without any issues: //previous code export const testConnection = async ( url: string ): Promise<{ status: boolean; message: string; fullResponseLog: Response | undefined; }> => { try { const response: Response = await fetch(url); // Code Continues However, when build for production and used in TestFlight or Google Play - I am getting "network request failed" (for Fetch) or "Network Error" (for Axios). It seems this "dynamic url" is blocked somehow by App Stores policy and I could not find a solution for this problem. Any ideas? Are such dynamic links actually blocked by some policy?
0
0
268
Nov ’24
Inquiry about Open Source Release of Xcode 15's ld Source Code
Inquiry about Open Source Release of Xcode 15's ld Source Code Dear Apple Developer Support Team, I hope this email finds you well. I am a developer with a keen interest in Apple's development toolchain. I noticed that Xcode 15 uses a new version of the linker (ld), and I'm particularly interested in its source code. I would like to inquire about: When will the source code for the ld linker used in Xcode 15 be made available as open source? Your response would be greatly appreciated. Thank you for your time and attention to this matter. Best regards, Panghu
1
0
115
Nov ’24
On Xcode16, when using the xcodebuild command to package, the developer account will be logged out, and then the packaging will fail.
Our CI process uses XcodeBuild tools. It used to work very well. The shell code is as follows: step 1 "++++++++++++++++clean++++++++++++++++" xcodebuild clean -workspace ${WORKSPACE_NAME}.xcworkspace \ -scheme ${SCHEME_NAME} \ -configuration ${configuration} step 2 "+++++++++++++++++archive+++++++++++++++++" xcodebuild archive -workspace ${WORKSPACE_NAME}.xcworkspace \ -scheme ${SCHEME_NAME} \ -configuration ${configuration} \ -archivePath ${ARCHIVE_PATH} -allowProvisioningUpdates YES step 3 "+++++++++++++++++ipa+++++++++++++++++" xcodebuild -exportArchive \ -archivePath ${ARCHIVE_PATH} \ -exportPath "${IPA_PATH}" \ -exportOptionsPlist ${EXPORT_METHOD_PLIST_PATH} \ -allowProvisioningUpdates YES But after upgrading to xcode16, every time I execute the step3, it fails. The error log is like this ** ARCHIVE SUCCEEDED ** 2024-11-08 16:19:54.360 xcodebuild[36487:6743710] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path "/var/folders/ch/1mvd9gz11cn8zy9h254qz2600000gn/T/xxx.xcdistributionlogs". error: exportArchive No Accounts error: exportArchive Provisioning profile "iOS Team Store Provisioning Profile: com.xxx" doesn't include signing certificate "Apple Distribution: xxx Co Ltd (xxx)". ** EXPORT FAILED ** At this time, my Apple developer account disappeared in xcode-setting-account, and it automatically logged out. If I log in again and execute the shell command, the above phenomenon will reappear. What is the cause of this, and what do I need to do to solve this problem? I look forward to your reply
2
0
933
Nov ’24
How I successfully enrolled for the Apple Developer Program!
Hey guys! I believe I've found the solution to successfully enrol for the Apple Developer Program. This is for all of us who have tried enrolling and waiting in vain for the confirmation email from Apple after the acknowledgement email. First, you should know that the whole time I was attempting to enrol I was using my iCloud account and I was trying to do so via my MacBook with the browser. I tried both Firefox and Safari just to be sure it wasn't a browser thing. Then a thought came to me... since I knew Apple also had an Apple Developer app on its store that according to its articles it claims can be used to enrol... I chose to go for it, and this time I opted to enrol with my iPhone for good measure... I downloaded the Apple Developer app... logged into my iCloud account and attempted to enrol. However, this still didn't work. The message said that I couldn't use that email to enrol... And so I signed out and opted to use my Gmail account and voila! I was able to enrol!! The payment went through successfully! I received the SMS notification from my bank and I also got the subscription confirmation from Apple. That's how I did it. I really hope this helps someone 🙏.
0
0
294
Nov ’24
Threads with classic lock-based synchronization in SwiftUI in Xcode 16
Hi, I am stuck moving one of my projects from Xcode 15 to Xcode 16. This is a SwiftUI application that uses in some places classic Threads and locks/conditions for synchronization. I was hoping that in Swift 5 mode, I could compile and run this app also with Xcode 16 so that I can start migrating it towards Swift 6. Unfortunately, my application crashes via EXC_BREAKPOINT (code=1, subcode=0x1800eb31c) whenever some blocking operation e.g. condition.wait() or DispatchQueue.main.sync { ... } is invoked from within the same module (I haven't seen this happening for frameworks that use the same code that I linked in dynamically). I have copied an abstraction below that I am using, to give an example of the kind of code I am talking about. I have verified that Swift 5 is used, "strict concurrency checking" is set to "minimal", etc. I have not found a workaround and thus, I'm curious to hear if others were facing similar challenges? Any hints on how to proceed are welcome. Thanks, Matthias Example abstraction that is used in my app. It's needed because I have synchronous computations that require a large stack. It's crashing whenever condition.wait() is executed. public final class TaskSerializer: Thread { /// Condition to synchronize access to `tasks`. private let condition = NSCondition() /// The tasks queue. private var tasks = [() -> Void]() public init(stackSize: Int = 8_388_608, qos: QualityOfService = .userInitiated) { super.init() self.stackSize = stackSize self.qualityOfService = qos } /// Don't call directly; this is the main method of the serializer thread. public override func main() { super.main() while !self.isCancelled { self.condition.lock() while self.tasks.isEmpty { if self.isCancelled { self.condition.unlock() return } self.condition.wait() } let task = self.tasks.removeFirst() self.condition.unlock() task() } self.condition.lock() self.tasks.removeAll() self.condition.unlock() } /// Schedule a task in this serializer thread. public func schedule(task: @escaping () -> Void) { self.condition.lock() self.tasks.append(task) self.condition.signal() self.condition.unlock() } }
1
0
390
Dec ’24
Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000020
I have built an iOS app using flutter. The app (debug and release build) works fine on real devices. But when trying to run integration tests on this app using appium on an emulator, the app keepas crashing randomly with these error logs: https://docs.google.com/document/d/1Z1f7hudmpHUATnFvoSZeAAoi8-NyVn6P9BFHNOZkzyA/edit?tab=t.0 Any help would be appreciated
1
0
421
Nov ’24
pod file error
require File.join(File.dirname(node --print "require.resolve('expo/package.json')"), "scripts/autolinking") require File.join(File.dirname(node -e "console.log(require.resolve('react-native/package.json'))"), "scripts/react_native_pods") require 'json' podfile_properties = JSON.parse(File.read(File.join(dir, 'Podfile.properties.json'))) rescue {} ENV['RCT_NEW_ARCH_ENABLED'] = podfile_properties['newArchEnabled'] == 'true' ? '1' : '0' ENV['EX_DEV_CLIENT_NETWORK_INSPECTOR'] = podfile_properties['EX_DEV_CLIENT_NETWORK_INSPECTOR'] use_modular_headers! # Enable modular headers globally use_autolinking_method_symbol = ('use' + '_native' + '_modules!').to_sym origin_autolinking_method = self.method(use_autolinking_method_symbol) self.define_singleton_method(use_autolinking_method_symbol) do |*args| if ENV['EXPO_UNSTABLE_CORE_AUTOLINKING'] == '1' Pod::UI.puts('Using expo-modules-autolinking as core autolinking source'.green) config_command = [ 'node', '--no-warnings', '--eval', 'require(require.resolve('expo-modules-autolinking', { paths: [require.resolve('expo/package.json')] }))(process.argv.slice(1))', 'react-native-config', '--json', '--platform', 'ios' ] origin_autolinking_method.call(config_command) else origin_autolinking_method.call() end end platform :ios, podfile_properties['ios.deploymentTarget'] || '13.4' install! 'cocoapods', :deterministic_uuids => false prepare_react_native_project! target 'StayRealtor' do use_expo_modules! config = use_native_modules! use_frameworks! :linkage => :dynamic # Enable dynamic frameworks globally use_react_native!( :path => config[:reactNativePath], :hermes_enabled => podfile_properties['expo.jsEngine'] == nil || podfile_properties['expo.jsEngine'] == 'hermes', :app_path => "#{Pod::Config.instance.installation_root}/..", :privacy_file_aggregation_enabled => podfile_properties['apple.privacyManifestAggregationEnabled'] != 'false', ) Adding Firebase dependencies with modular headers pod 'Firebase', :modular_headers => true pod 'FirebaseCoreInternal', :modular_headers => true pod 'FirebaseCore', :modular_headers => true pod 'Firebase/Auth', :modular_headers => true pod 'Firebase/Firestore', :modular_headers => true pod 'Firebase/InAppMessaging', :modular_headers => true pod 'Firebase/RemoteConfig', :modular_headers => true pod 'Firebase/Storage', :modular_headers => true pod 'FirebaseAuthInterop', :modular_headers => true pod 'FirebaseAppCheckInterop', :modular_headers => true pod 'FirebaseCoreExtension', :modular_headers => true pod 'RecaptchaInterop', :modular_headers => true pod 'FirebaseFirestoreInternal', :modular_headers => true pod 'FirebaseInstallations', :modular_headers => true pod 'FirebaseABTesting', :modular_headers => true pod 'nanopb', :modular_headers => true pod 'GoogleDataTransport', :modular_headers => true pod 'GoogleUtilities', :modular_headers => true; post_install do |installer| react_native_post_install( installer, config[:reactNativePath], :mac_catalyst_enabled => false, :ccache_enabled => podfile_properties['apple.ccacheEnabled'] == 'true', ) # Fix for Xcode 14 signing resource bundles installer.target_installation_results.pod_target_installation_results .each do |pod_name, target_installation_result| target_installation_result.resource_bundle_targets.each do |resource_bundle_target| resource_bundle_target.build_configurations.each do |config| config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO' end end end end post_integrate do |installer| begin expo_patch_react_imports!(installer) rescue => e Pod::UI.warn e end end end error:[!] The following Swift pods cannot yet be integrated as static libraries: The Swift pod FirebaseAuth depends upon FirebaseAuthInterop, FirebaseAppCheckInterop, FirebaseCoreExtension, and RecaptchaInterop, which do not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies. The Swift pod FirebaseFirestore depends upon FirebaseCoreExtension and FirebaseFirestoreInternal, which do not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies. The Swift pod FirebaseInAppMessaging depends upon FirebaseInstallations, FirebaseABTesting, and nanopb, which do not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies. The Swift pod FirebaseRemoteConfig depends upon FirebaseABTesting and FirebaseInstallations, which do not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies. The Swift pod FirebaseSessions depends upon FirebaseCoreExtension, FirebaseInstallations, GoogleDataTransport, and nanopb, which do not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies. The Swift pod FirebaseStorage depends upon FirebaseAppCheckInterop, FirebaseAuthInterop, and FirebaseCoreExtension, which do not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as static libraries), you may set use_modular_headers! globally in your Podfile, or specify :modular_headers => true for particular dependencies.
0
0
1.2k
Nov ’24
Discrepancy between Xcode Memory Report and Xcode Instruments Memory Profiler
Hi Apple Engineers, I am encountering an issue where the memory usage reported by the Xcode memory report and the Xcode Instruments memory profiler are not aligned. Specifically: Xcode Memory Report: After implementing autoreleasepool, URLSession reading a zip file, and moving the task inside DispatchQueue.global().async, the memory usage goes down from 900MB to 450MB, indicating a potential memory leak. Xcode Instruments Memory Profiler: The memory usage goes down from 900MB to 100MB, suggesting that the memory has been properly released and there is no significant memory leak. Could you please help me understand the discrepancy between these two tools and provide guidance on the appropriate way to interpret the memory usage in my application? Which result I should rely on it? I would greatly appreciate your insights and expertise on this matter. Thank you in advance for your assistance.
2
0
803
Nov ’24
没法删除语言
只能在string catalog里面添加语言,不能删除语言??这是什么设计? 在Project里面删除语言,并不能删除Localizable中的语言。但是如果这个语言没有任何国际化,是可以的。 也就是说,删不了曾经做过国际化的语言。 我应用还没发布,还在开发呢,为什么不让我删除语言??????????????????????????、
1
0
340
Nov ’24
Struggling to add a test target to an existing project in Xcode
Sorry if this question is too vague, however I've tried this multiple times and see the same result. I'm pretty sure I'm doing something wrong, but don't know what. I have a Multiplatform (iOS and macOS) project that builds, and runs I add a new target of type Unit Test Bundle I click the diamond in the margin beside the XCTestCase declaration at the top of the new Test file The target project builds, then Xcode says 'Testing...' and it stays like this forever. I've also tried creating a new scheme that targets the target created in the above steps. attempting to run my tests behaves the same. The top status bar will get stuck saying 'Testing...' and never get anywhere. I'm pretty sure this is something basic. thanks, in advance for any guidance. Mike
2
0
1.3k
Nov ’24
Not able to generate API key
After clicking the button I get an error message "An error occurred during generation. Reload this page to try again.", I tryed several times with same result. I saw in network tab the the request got 403 with error: { "errors" : [ { "id" : "a838db66-5e18-4dc8-8bb2-fc5903b41912", "status" : "403", "code" : "FORBIDDEN_ERROR.PLA_NOT_VALID", "title" : "Operation is forbidden because of PLA status.", "detail" : "" } ] } Anyone can tell me what is PLA status? Thank you
1
0
414
Nov ’24
Another Xcode doc. error: Non-existent 'App Icons & Launch Images' menu item
In "Create asset catalogs and sets" - https://help.apple.com/xcode/mac/current/#/dev10510b1f7 - I read this: " Create an iOS or tvOS launch screen image set: Choose App Icons & Launch Images > New [OS] Launch Image from the Add button (+) or from the Editor > Add Assets menu. For an iOS app, you can also change the default launch screen source to an image set. " But neither the Editor -> Add New Asset menu nor the Add button (+) menu contains an "App Icons & Launch Images" item. I can add that I use Xcode 16.1. So again, the Xcode documentation is quite misleading and confusing! My (real) question is if it is possible to give Xcode ONE launch image from which Xcode creates all necessary image sizes automatically? Or do we still need the apps and services that creates a bunch of launch images from ONE image?
1
0
226
Nov ’24
Why did I receive a CONSUMPTION_REQUEST for the same transaction_id the day after I already received a REFUND for it?
Why did I receive a CONSUMPTION_REQUEST for the same transaction_id the day after I already received a REFUND for it? I received a CONSUMPTION_REQUEST, but due to a program error, I failed to submit the customer information. Later, I was notified with a REFUND, indicating that the transaction had been refunded. However, the next day, I received another CONSUMPTION_REQUEST notification for the same transaction_id.
0
0
287
Nov ’24
Few command under /usr/bin hangs when running from ssh terminal
Hi, We have few MacStudio servers that when we ssh as users to it and trying to run some commands fro /usr/bin, they staying in hang state for infinite. When root user do the same commands are working properly Example for hanging commands : clang, gcc, make, ld etc Add as attachment the dtruss out for ld -v command to help debug it Thanks, Amir dtruss out from ld -v command
1
0
397
Dec ’24