{"id":50043,"date":"2025-11-13T18:07:45","date_gmt":"2025-11-13T23:07:45","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=50043"},"modified":"2025-11-13T18:09:22","modified_gmt":"2025-11-13T23:09:22","slug":"apple-developer-release-notes-tracked-by-git","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2025\/11\/13\/apple-developer-release-notes-tracked-by-git\/","title":{"rendered":"Apple Developer Release Notes Tracked by Git"},"content":{"rendered":"<p>I&rsquo;ve frequently noted my frustration with Apple&rsquo;s Xcode release notes, how lately they simply <em>don&rsquo;t tell you what&rsquo;s changed in a given release<\/em>. Changes from multiple releases are merged together, and Apple deletes and renames old pages so that you can&rsquo;t compare them unless you&rsquo;d saved a copy. However, commenter F1248 has done something about this! He&rsquo;s created a <a href=\"https:\/\/codeberg.org\/F1248\/Apple-Developer-Release-Notes\">Git repository<\/a> with Markdown documents for each <a href=\"https:\/\/codeberg.org\/F1248\/Apple-Developer-Release-Notes\/src\/branch\/main\/macOS\">macOS<\/a>, <a href=\"https:\/\/codeberg.org\/F1248\/Apple-Developer-Release-Notes\/src\/branch\/main\/iOS%20&amp;%20iPadOS\">iOS<\/a>, and <a href=\"https:\/\/codeberg.org\/F1248\/Apple-Developer-Release-Notes\/src\/branch\/main\/Xcode\">Xcode<\/a> release. You can also look at the file history, e.g. to see the changes between <a href=\"https:\/\/codeberg.org\/F1248\/Apple-Developer-Release-Notes\/commit\/f640320a823e37421f2fde96bae267eab3228d8fd8a0860f975abdb79b6a9397\">Xcode 26.1 and 26.1.1<\/a> or from <a href=\"https:\/\/codeberg.org\/F1248\/Apple-Developer-Release-Notes\/commit\/ae846abb7b243971c944ce50bede0f3dfcb1c5eb55aa20d40088866df7c50b07\">all the appleOS 26.1 betas vs. RC<\/a>.<\/p>\n\n<p>This is great for release notes, though for APIs I still miss <a href=\"http:\/\/codeworkshop.net\/objc-diff\/sdkdiffs\/\">Code Workshop<\/a> and <a href=\"https:\/\/web.archive.org\/web\/20240506120507\/https:\/\/sdk.news\/\">SDK News<\/a>.<\/p>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2025\/11\/11\/xcode-26-1-1\/\">Xcode 26.1.1<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2025\/09\/10\/xcode-26-rc\/\">Xcode 26 RC<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2025\/08\/19\/xcode-26-beta-6\/\">Xcode 26 Beta 6<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2025\/08\/06\/xcode-26-beta-5\/\">Xcode 26 Beta 5<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2025\/07\/22\/xcode-26-beta-4\/\">Xcode 26 Beta 4<\/a><\/li>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2025\/07\/09\/xcode-26-beta-3\/\">Xcode 26 Beta 3<\/a><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>I&rsquo;ve frequently noted my frustration with Apple&rsquo;s Xcode release notes, how lately they simply don&rsquo;t tell you what&rsquo;s changed in a given release. Changes from multiple releases are merged together, and Apple deletes and renames old pages so that you can&rsquo;t compare them unless you&rsquo;d saved a copy. However, commenter F1248 has done something about [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2025-11-13T23:07:51Z","apple_news_api_id":"0fbd4bb7-6360-4ec5-9c33-3372be8a7eff","apple_news_api_modified_at":"2025-11-13T23:07:51Z","apple_news_api_revision":"AAAAAAAAAAD\/\/\/\/\/\/\/\/\/\/w==","apple_news_api_share_url":"https:\/\/apple.news\/AD71Lt2NgTsWcMzNyvop-_w","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":[164,377,30,2742,71,96,226],"class_list":["post-50043","post","type-post","status-publish","format-standard","hentry","category-programming-category","tag-documentation","tag-git","tag-mac","tag-macos-tahoe-26","tag-programming","tag-web","tag-xcode"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/50043","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=50043"}],"version-history":[{"count":2,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/50043\/revisions"}],"predecessor-version":[{"id":50048,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/50043\/revisions\/50048"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=50043"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=50043"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=50043"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}