{"id":36156,"date":"2022-06-09T16:05:55","date_gmt":"2022-06-09T20:05:55","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=36156"},"modified":"2022-11-30T10:39:50","modified_gmt":"2022-11-30T15:39:50","slug":"xcode-14-announced","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2022\/06\/09\/xcode-14-announced\/","title":{"rendered":"Xcode 14 Announced"},"content":{"rendered":"<p><a href=\"https:\/\/developer.apple.com\/videos\/play\/wwdc2022\/110427\/\">Apple<\/a>:<\/p>\n<blockquote cite=\"https:\/\/developer.apple.com\/videos\/play\/wwdc2022\/110427\/\">\n<p>Discover the latest productivity and performance advancements in Xcode 14. We&rsquo;ll introduce you to the fully redesigned SwiftUI canvas experience, explore enhancements to code completion and navigation, and take you through performance improvements we&rsquo;ve made throughout the entire development process. We&rsquo;ll also show you how you can now read and respond to feedback on your TestFlight builds without ever leaving Xcode.<\/p>\n<\/blockquote>\n\n<p>This looks promising, though unfortunately it&rsquo;s the only version of Xcode that runs on Ventura. It was easier to get my code building than with previous updates, but there are a bunch of &ldquo;Could not create compact unwind for [&#8230;] register 19 saved somewhere other than in frame&rdquo; compiler warnings that I don&rsquo;t know what to do with.<\/p>\n\n<p><a href=\"https:\/\/twitter.com\/_inside\/status\/1533888023372386304\">Guilherme Rambo<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/_inside\/status\/1533888023372386304\">\n<p>Xcode 14 beta is significantly smaller than Xcode 13<\/p>\n<\/blockquote>\n<p>The watchOS and tvOS SDKs are no longer bundled.<\/p>\n\n<p><a href=\"https:\/\/twitter.com\/tapbot_paul\/status\/1533896025580224516\">Paul Haddad<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/tapbot_paul\/status\/1533896025580224516\">\n<p>I guess they decided [Bitcode] was a bad idea. Sounded like it had a lot of promise.<\/p>\n<\/blockquote>\n\n<p>I was <a href=\"https:\/\/mjtsai.com\/blog\/2022\/04\/12\/xcode-13-3-1\/\">wondering<\/a> about that.<\/p>\n\n<p><a href=\"https:\/\/twitter.com\/NathanBLawrence\/status\/1533898349761294336\">Nathan Lawrence<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/NathanBLawrence\/status\/1533898349761294336\">\n<p>A personal favorite:<\/p>\n<blockquote>Xcode now pins elements of your code structure to the top of the editor as you scroll through a document. To toggle this behavior, use &ldquo;Show: Code structure while scrolling&rdquo; in Xcode&rsquo;s Text Editing preferences.<\/blockquote>\n<\/blockquote>\n\n<p>This is <a href=\"https:\/\/twitter.com\/a_grebenyuk\/status\/1534359760308424711\">great<\/a>.<\/p>\n\n<p><a href=\"https:\/\/augmentedcode.io\/2022\/06\/07\/looking-into-xcode-14-beta-1\/\">Toomas Vahter<\/a>:<\/p>\n<blockquote cite=\"https:\/\/augmentedcode.io\/2022\/06\/07\/looking-into-xcode-14-beta-1\/\">\n<p>Whoever has dealt with app icons are going to be happy to hear that in Xcode 14 we can just use a single image for the app icon.<\/p>\n<p>[&#8230;]<\/p>\n<p>There is a new build setting <code>ENABLE_USER_SCRIPT_SANDBOXING<\/code> for turning on sandboxing in shell script build phases.<\/p>\n<p>[&#8230;]<\/p>\n<p>The platforms State of the Union mentioned Swift and SwiftUI being the future of building apps. But on the other hand, there are multiple changes happening in Interface builder as well. More options and more supported views.<\/p>\n<p>[&#8230;]<\/p>\n<p>As Xcode Cloud is not any more in beta, Apple is removing Xcode Server from Xcode 14.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/twitter.com\/sarunw\/status\/1534448205873971200\">Sarun W.<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/sarunw\/status\/1534448205873971200\">\n<p>There are three new snippets to generate boilerplate for Codable.<\/p>\n<\/blockquote>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2022\/06\/09\/mac-app-notarization-at-wwdc-2022\/\">Mac App Notarization at WWDC 2022<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2022\/05\/17\/xcode-13-4\/\">Xcode 13.4<\/a><\/li>\n<\/ul>\n\n<p id=\"xcode-14-announced-update-2022-06-10\">Update (2022-06-10): <a href=\"https:\/\/twitter.com\/philipcdavis\/status\/1535280195728334848\">Philip Davis<\/a>:<\/p>\n<blockquote cite=\"https:\/\/twitter.com\/philipcdavis\/status\/1535280195728334848\">\n<p>My 3 favorite Xcode features released at #WWDC22<\/p>\n<\/blockquote>\n\n<p id=\"xcode-14-announced-update-2022-07-01\">Update (2022-07-01): See also: <a href=\"https:\/\/news.ycombinator.com\/item?id=31943572\">Hacker News<\/a>.<\/p>\n\n<p><a href=\"https:\/\/news.ycombinator.com\/item?id=31950933\">asveikau<\/a>:<\/p>\n<blockquote cite=\"https:\/\/news.ycombinator.com\/item?id=31950933\"><p>There was another platform i will leave nameless. They performed additional &ldquo;ahead of time&rdquo; type optimization after a developer submitted a binary. That layer had bugs. I personally saw them surface. Since the AOT happened transparently on the platform vendor&rsquo;s machine it was very hard for a developer to test, diagnose, confirm fixed, etc. The developer still got blamed for bugs hitting the end user. That layer one can also imagine could see changes on the platform vendor&rsquo;s server so something could theoretically break later on and nobody would know until the bug reports came flooding to the developer.<\/p><p>Because it was a goofy idea. Sounds good superficially, but ill conceived at the design stage.<\/p><p>Moreover, that goofiness may also be why they don&rsquo;t need it anymore. It wasn&rsquo;t a solid idea to begin with, so your changing requirements wind up revealing that.<\/p><\/blockquote>\n\n<p id=\"xcode-14-announced-update-2022-08-29\">Update (2022-08-29): <a href=\"https:\/\/developer.apple.com\/documentation\/xcode-release-notes\/xcode-14-release-notes\">Apple<\/a> (via <a href=\"https:\/\/twitter.com\/DamienPetrilli\/status\/1563789185387040769\">Damien Petrilli<\/a>):<\/p>\n<blockquote cite=\"https:\/\/developer.apple.com\/documentation\/xcode-release-notes\/xcode-14-release-notes\">\n<p>The diagram view has been removed from the Core Data data model editor in Xcode 14.<\/p>\n<\/blockquote>","protected":false},"excerpt":{"rendered":"<p>Apple: Discover the latest productivity and performance advancements in Xcode 14. We&rsquo;ll introduce you to the fully redesigned SwiftUI canvas experience, explore enhancements to code completion and navigation, and take you through performance improvements we&rsquo;ve made throughout the entire development process. We&rsquo;ll also show you how you can now read and respond to feedback on [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2022-06-09T20:06:00Z","apple_news_api_id":"56b9bf99-82c3-4de6-bd7d-27d82c572970","apple_news_api_modified_at":"2022-11-30T15:39:53Z","apple_news_api_revision":"AAAAAAAAAAAAAAAAAAAABg==","apple_news_api_share_url":"https:\/\/apple.news\/AVrm_mYLDTea9fSfYLFcpcA","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[4],"tags":[2315,1246,109,370,31,2185,30,2223,71,53,1774,901,2016,226,2230],"class_list":["post-36156","post","type-post","status-publish","format-standard","hentry","category-programming-category","tag-apple-software-announcement","tag-bitcode","tag-coredata","tag-interfacebuilder","tag-ios","tag-ios-16","tag-mac","tag-macos-13-ventura","tag-programming","tag-sandboxing","tag-swift-codable","tag-swift-programming-language","tag-testflight","tag-xcode","tag-xcode-cloud"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/36156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=36156"}],"version-history":[{"count":7,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/36156\/revisions"}],"predecessor-version":[{"id":36874,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/36156\/revisions\/36874"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=36156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=36156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=36156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}