From f1cdbea728f548b7caac96d5abeb56f22327b383 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Thu, 7 Apr 2022 22:51:38 -0400 Subject: [PATCH] Add Update: Swift Packages and Frameworks --- site/posts/2022-02-23-swift-package-framework.md | 2 ++ .../2022-04-07-swift-package-framework-update.md | 13 +++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 site/posts/2022-04-07-swift-package-framework-update.md diff --git a/site/posts/2022-02-23-swift-package-framework.md b/site/posts/2022-02-23-swift-package-framework.md index c6b7e4e..0505f3e 100644 --- a/site/posts/2022-02-23-swift-package-framework.md +++ b/site/posts/2022-02-23-swift-package-framework.md @@ -66,3 +66,5 @@ After abandoning that idea, the other, similarly unsuccessful, tactic I tried wa That did not work. I don't know why. There seems to be very little visibility (read: none at all) into how Xcode chooses to static versus dynamic linking for Swift packages. That's where I gave up, so if you have any better ideas, please let me know. At the end of the day, I don't have the energy to spend more time fighting Xcode over 20 megabytes. Oh well. I should probably throw a report into the void that is Feedback Assistant. + +**Update:** As of April 2022, I've [resolved](/2022/swift-package-framework-update/) this issue. diff --git a/site/posts/2022-04-07-swift-package-framework-update.md b/site/posts/2022-04-07-swift-package-framework-update.md new file mode 100644 index 0000000..8aee46d --- /dev/null +++ b/site/posts/2022-04-07-swift-package-framework-update.md @@ -0,0 +1,13 @@ +``` +metadata.title = "Update: Swift Packages and Frameworks" +metadata.tags = ["swift"] +metadata.date = "2022-04-07 22:36:42 -0400" +metadata.shortDesc = "" +metadata.slug = "swift-package-framework-update" +``` + +A while ago I [wrote](/2022/swift-package-framework/) about some trouble I had getting Xcode to cooperate with my efforts to bring my app file size back under control after adding a new Swift Package dependency. Well, I'm happy to say I finally have: the most recent TestFlight build of Tusker has a 6.7MB install size, down from 25MB. + +Ultimately I did take the route of turning my framework into a Swift Package. I revisited it because I noticed in another project that local packages inside the same folder as the main project worked perfectly fine. The only difference I found was that the project where it worked used only an `.xcodeproj`, whereas Tusker used an `.xcworkspace`. So, I deleted the (for unrelated reasons, no longer necessary) workspace and found that, after quitting and relaunching Xcode, the local package worked perfectly fine. + +I briefly started writing a feedback report, but upon further testing I found that xcworkspaces in general weren't the problem—a new project and workspace worked fine. So, I gave up trying to reproduce it and assumed there was just something weird about the 3.5 year old workspace.