Tuesday, February 2, 2021

Xcode 12.5 Beta


Xcode 12.5 Beta requires a Mac running macOS Big Sur 11 or later.


The Reveal Build Products Folder item in the Product menu reveals the build products directory in Finder.


Code completion is more reliable in expressions that contain errors, and in expressions that are ambiguous without additional context.


Profiling XCTest with Instruments now automatically starts the recording, without a click on the record button.

This would be great if it works, but profiling Mac unit tests has been broken for me for years.

Incremental compilation is faster in many cases. When you change code within the body of a struct, class, enum, prototype, or extension, Swift now recompiles far fewer files in that module than before.

Implicit member expressions now support chains of member accesses.

Swift includes more checks when bridging data from Objective-C. In particular, the runtime library aborts your program with a suitable error message if it detects a non-nullable pointer that contains a null value.

Property wrappers are now supported on local variables.

Functions, subscripts, and initializers may now have more than one variadic parameter, as long as all parameters that follow variadic parameters are labeled.

These are from Swift 5.4.

Antoine van der Lee:

While developing apps or framework it’s common to refactor a piece of code. Although often temporary, it’s common to run into failing tests while the code is still being refactored. Up until we could use XCTExpectFailure I would disable those tests and only run them once I expected them to succeed.

In other words, there are scenarios in which you realise a failure is expected. Without letting Xcode know this is true, your tests would report a failure and your CI would no longer report green.

Another benefit is that Xcode will report a test as failed once an expected failure does not occur. You can see Xcode as a guard to make sure your tests match upon current expectations.


4 Comments RSS · Twitter

Please file a new feedback if profiling Mac unit tests still doesn’t work for you. As far as I can tell FB7543911 is a totally different issue.

@Jiang Profiling tests is working for me now, with Xcode 12.5 Beta 1 on macOS 11.2 on Apple Silicon.

Oh no... does that mean the release version is also going to be big sur only...? I hate these forced upgrades ☹️ I’d still be on macOS 10.14 if I could use the older Xcode to run and debug on my phone after it updates...

Ugh I agree with @Adrian. These forced upgrades for Xcode suck.

I'm still on Catalina. Guess I'll upgrade around when the new Xcode comes out.

Leave a Comment