@younata There may also be some additional nuance around throwing vs. non-throwing async methods / completion handlers, though I don't remember the details. I expect @throwspace would know more.
@younata Aha, ok great, I'm glad you sorted that out! You might consider using `-methodSignatureForSelector:` on a selector with a completion handler to get the compiler+runtime to help generate the type encoding for you rather than synthesizing it yourself.
@uimarcel @_iains Several years back, there was some discussion here, though the ideas were more ambitious than what it sounds like you have in mind:
https://t.co/8XFmVkX06g
But I’m not aware of active discussion on the forums at this point. I would encourage you to start a thread about it!
@uimarcel @_iains Thanks! Yeah, there are different opinions about how this could work. The current situation allows SwiftPM to easily identify and treat tests specially for building and running, but there are other options worth considering!
@_iains @uimarcel Do you imagine this looking like separate files in the same directory? Tests intermingled with their subject in the same file? Something else? All of the above?
@younata Have you tried returning invocation instances with a method signature corresponding to a method that takes a completion block parameter? I’d have naïvely expected that to work, but there may be some wrinkles I’m forgetting about.
@younata Hi, @younata! The automation directed your feedback my way already, even before I came across this tweet :) we’ll take a look and try to get back to you on this one.
Xcode 14 now runs test targets in parallel (when enabled), which can significantly speed up execution for multi-target suites. Check “Author fast and reliable tests for Xcode Cloud” on Friday to learn more!
https://t.co/9NRuaP650K
#wwdc22
@qcoding Thank you! We'll take a look and see what we can find out.
xcodebuild does collect extra diagnostics after failures in some cases which may be a factor. Could you share more about the workflow where you're running `xcodebuild test` yourself (rather than e.g. in CI) for our info?
@qcoding 👋 is this slowdown happening when the first failure is hit, by any chance? We’ve seen scattered reports of that for macOS tests. If you could run spindump in the background while reproducing the slow test run and attach that + your .xcresult to a FB, I’d love to take a look.
@numist@Catfish_Man XCTest does have a watchdog! But it’s opt-in due to an abundance of caution from when we introduced the feature a couple of years ago
cc @EthanJVaughan
@xenadu02 @tomascamin Hmm no, I’ve not seen other reports of this! If you file feedback with your .xcresult bundle and the archive produced by running `xcrun simctl diagnose` while the sim is still booted, we can take a closer look.
@SmileyKeith@NeoNacho@kyleve The poor workaround is to include an xcodeproj alongside the package which depends on the package and defines the test bundle(s) and the host app.