What’s New in Xcode

Learn about the key features available Xcode, the integrated development environment for building apps for Mac, iPhone, iPad, Apple Watch, and Apple TV. For detailed information on updates in the latest released versions, including each beta release, see the Xcode Release Notes.

Xcode 10

Xcode 10 looks amazing in combination with Dark Mode in macOS Mojave, and makes it easy for you to adopt the new look in your macOS apps as well. Xcode 10 beta includes Swift 4.2 and beta SDKs for iOS 12, watchOS 5, tvOS 12, and macOS Mojave.

Dark Mode Interface and Mac App Support

  • All-new dark appearance throughout Xcode and Instruments
  • Asset catalogs add dark and light variants for custom colors and image assets
  • Interface Builder switches between dark and light previews of your interface
  • Debug your Mac apps in dark or light variants without changing OS settings

Source Control

  • Changes in the local repository or upstream on a shared server are highlighted directly within the editor. At a glance, you’ll see:

    • Changes made in your code.
    • Changes not yet pushed to the shared repository.
    • Upstream changes others have made.
    • Conflicts you should address before committing.
  • Support for cloud-hosted and self-hosted Git server offerings from Atlassian Bitbucket, as well as GitLab to go along with existing GitHub support.
  • Xcode offers to rebase your changes when pulling the latest version of code from your repository.
  • SSH keys are generated if needed, and uploaded to service providers for you.

Editor Enhancements

  • Place multiple cursors in your code editor to make many changes at once.
  • Code folding ribbon can now hide any code block surrounded by braces.
  • Over-scroll makes it easy to center the last lines of code in the middle of your screen.

Playgrounds Built for Machine Learning

  • New REPL-like model reruns your existing playground code instantly.
  • Run your code up to any specific line, or type shift-return to run the code you just added.
  • Import the Create ML framework to interactively train new models, and then write code to test the model right in the playground. When finished, drag the model into your app.

Testing and Debugging

  • Debugging symbols are downloaded from a new device five times faster than before.
  • Xcode will spawn a collection of identical Simulators to take advantage of your multi-core Mac, and fan tests out to run in parallel, completing your test suite many times faster.
  • Run tests in random or linear order.
  • Instruments automatically show OSLog signposts you add into your code.
  • Build and share your own custom instruments package to provide unique data visualization and analysis for your own code.
  • Memory debugger uses a compact layout to make it easier to investigate your memory graph.
  • Metal shader debugger lets you easily inspect the execution of your vertex, fragment, compute, and tile shader code.
  • Metal dependency viewer provides a detailed graph of how resources are used in your Metal-based app.

Build Performance

  • New build system enabled by default with improved performance throughout.
  • Swift compiler builds each individual file significantly faster.
  • Large Swift projects build for debugging dramatically faster when using the incremental build setting.

Xcode 9.3

Xcode 9.3 includes Swift 4.1 and SDKs for iOS 11.3, watchOS 4.3, tvOS 11.3, and macOS High Sierra 10.13.4

  • New Energy tab in the Organizer window includes logs generated when your app consumes too much power
  • Swift build tasks and other commands are run in parallel more often to improve build performance
  • Swift compiler adds new code size optimization, enabled with the -Osize build setting
  • Quick access to callers is available by clicking on a symbol while holding the command key
  • Asset catalogs support AR Reference Image files that can be detected in the real-world by your ARKit apps
  • New xccov command line tool lets you inspect code coverage reports
  • Improved source editor performance when working on extremely large files

Xcode 9.2

Xcode 9.2 includes Swift 4 and SDKs for iOS 11.2, watchOS 4.2, tvOS 11.2, and macOS High Sierra 10.13.

  • Updates to the latest platform SDKs

Xcode 9.1

Xcode 9.1 includes Swift 4 and SDKs for iOS 11, watchOS 4, tvOS 11, and macOS High Sierra 10.13

  • Fixes an issue in Simulator that impacted the performance of OpenGL ES and maps
  • Improves support for iPhone X

Xcode 9.0.1

Xcode 9.0.1 includes Swift 4 and SDKs for iOS 11, watchOS 4, tvOS 11, and macOS High Sierra 10.13

  • Simulator improvements for iPhone X
  • Fixes a problem where the Test Navigator could become out of sync with available tests

Xcode 9.0

Xcode 9 includes Swift 4 and SDKs for iOS 11, watchOS 4, tvOS 11, and macOS High Sierra 10.13

  • Refactoring makes it easy to modify the structure of Swift, Objective-C, C, and C++ code
  • Code editor is blazingly fast and responsive and adds native support for Markdown syntax
  • Fix-its apply multiple improvements to your code in a single click, and can even add required protocol methods
  • New Source Control navigator and integrated GitHub accounts make it easy to manage code across a team
  • Wireless installation and debugging for iOS and tvOS apps on devices over the network
  • Simulator looks and behaves more like a real device and can simulate multiple devices at a time
  • iOS playground templates create documents that work in both Xcode and Swift Playgrounds on iPad
  • Find navigator is incredibly fast and results show up instantly
  • Project navigator automatically keeps files and groups in sync with Finder and source control
  • Xcode Server no longer requires macOS Server and can be fully configured in Xcode preferences
  • Next-generation build system improves reliability and performance when building many projects (optionally enabled)
  • Swift 4 compiler can also build Swift 3 code to enable staged migration, one module at a time
  • Latest SDKs include the Core ML framework for machine learning and ARKit for augmented reality