Hurdles Migrating to SPM

I was recently working on a project that was divided into modular frameworks by having a framework target for each module in the project. In order to take some of these modules and share it between projects, I thought I would break it out and make a Swift Package out of it. It didn’t go quite as smoothly as I would have hoped. Let’s take a look at some of the hurdles I ran into along the way.

I may continue adding to this document as I progress along the project.


Why Not to use Apple's Reserved HTTP Headers

When developing an iOS app, there is a good chance you’ll have to make network requests to communicate with a backend server. A common way to communicate authorization information to the server is by using the Authorization HTTP header. However, you may run into problems if you try using this and other headers directly.


Cleaning Up Old Xcode Files

Today I freed up over 200GB of space on my hard drive without losing anything of value. A large chunk of this was files created by and for Xcode. Finding and deleting them was pretty easy to do.


It's Not You, It's Me: Breaking Up with Analytics and Comments

A few days before Christmas I deleted Google Analtyics and Disqus Comments from this website. This choice pretty much affects me alone. I’m the only one looking at the analytics page, and I think I got a total of 10 comments ever. Still, removing them was a personal choice, that I hope has lasting effects.


You Can't Subclass UIColor

I lied. You can. But it’s not as straightforward as you might expect.

When implementing an iOS app, there are a lot of classes from UIKit that we can subclass: UIView, UIViewController, UIButton. This is probably familiar to any iOS developer. Some classes aren’t as straightward to subclass. UIColor is one of them, and we’re going to look into why.