What’s New in Xcode 8 beta 2

Apple has released the second beta of Xcode 8 — here’s what’s new and improved in the new version.

Swift Updates

  • You can now use the base property to have readonly access to base collections for Slice types. Suggested by Max Moiseev.
  • Nested generic functions may capture bindings from the environment
  • Initializers are now inherited for generic base or derived classes
  • Error messages for unexpected null values that were caused by implicit unwrapping will now give the location of the “!”
  • Objective-C protocol-qualified classes (<NSCoding> as an example) are now imported into Swift as protocol type values (NSCoding.Type).
  • File literals in playgrounds now have the URL struct type rather than NSURL.

IDE Updates

  • If your CODE_SIGN_ENTITLEMENTS value is conditionalized per-SDK, you now need to add a setting for the appropriate simulator SDK(s) explicitly. Previous versions of Xcode fall back to the iOS SDK’s value. This is no longer the case.
  • Memory graph debugging is now available for WatchKit extensions.
  • Xcode Server queued integrations that are not yet running can be canceled.
  • Xcode Server email notification triggers can now be configured with custom CC and Reply-To address.
  • Xcode Server pending integrations will now show the expected start time and number of integrations ahead in the queue.
  • Xcode Server running integrations will now show how long the integration has been running.
  • Application Thinning can now be disabled for when exporting an installable product using Xcode Server Bots.
  • Xcode playgrounds now support running with open-source Swift toolchains from Swift.org.

IDE Fixes

  • Xcode can now exist at a location with spaces in the path.
  • In cases where Xcode Source Editor extension takes too long to return to Xcode a cancellation banner will be shown.
  • templates tvOS projects now has the “Top Shelf Image Wide” slot available from Assets.xcassets.
  • Reduced assertion failures from logd when running the iOS 10.0 Beta, tvOS 10.0 Beta, or watchOS 3.0 Beta simulators.
  • SKVideoNode is now available in the iOS and tvOS Simulator Runtimes.
  • Audio quality no longer affected while debugging applications in the tvOS Simulator.
  • Logs are now visible when debugging on the Simulator.
  • Debugging with address sanitizer does not result in a runtime error about dyld inserting the ASan library.
  • UIVisualEffectViews now rendered by the View Debugger
  • View Debugger now works for iOS 8 simulator
  • CALayer transformations no longer causes the View Debugger to incorrectly space out views in 3D
  • Xcode can launch Intent extensions and invoke Siri for debugging.
  • A UIDatePicker configured in Interface Builder no longer have double width at run time.
  • Custom font names now recorded once per document instead of once for each use in a document.
  • XLIFF export no longer includes accessibilityIdentifier strings configured in Interface Builder.
  • UILabel/UITextField/UITextView with size classes enabled and custom fonts are now correctly show by the Interface Builder.
  • Running iOS 8/9 simulator and then iOS simulator no longer messes with the NSUserDefaults function.
  • The hardware keyboard will no longer appear to be toggled and the menu state will be correct after erasing a device’s settings
  • Authorize Apple Pay menu item works for iOS Simulator.
  • iPad Pro (9.7 inch) Simulator now show image assets with wide-gamut color display properly.
  • Copy/paste between the macOS pasteboard and iOS 10.0 pasteboard now supported by the simulator.
  • iOS devices do not lock themselves before running unit tests.
  • Unit tests do not hang on devices running iOS 9.3.2.
  • The App Icons Source selection pop-up button in the Project Editor’s General tab correctly indicates that .stickericonset asset catalog type is eligible.
  • There’s now a notification for cases where Xcode Server integrations are not running because the custom integration user is not currently logged in.
  • Bots are visible in the Report Navigator if Xcode is not connected to a network at launch time.
  • Post-integration emails are now being sent when emails are configured to only send on certain types of issues.
  • The Points of Interest instrument is available on macOS, iOS, tvOS, and watchOS.
  • Making code changes to a Swift project and building does not result in a binary that fails to run and errors about “dyld: Library not loaded”
  • The Swift migrator builds the correct targets when workspaces contain multiple targets that build products with the same name for different platforms.
  • Disabling automatic code generation for a specific entity in the Xcode Core Data data model editor now persists.
  • Unlocalized AppIntentVocabularly.plist files now work correctly for Siri
  • Xcode can load revisions with the Git color configurations enabled in the local user config.
  • When opening a sheet for the first time — the file navigator in the commit sheet does not appear collapsed.
  • Xcode does not crash opening certain Interface Builder files with the Version Editor open.
  • HTTPS repositories added to Xcode do not lose their password after restart.
  • Switching between modes of the comparison editor behaves normally for SVN repositories.
  • History for projects containing files with umlaut characters displays correctly
One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.