SwiftyXPC: a new XPC package built on `Codable` and Concurrency with no Foundation dependencies

I'd like to announce my new libxpc wrapper: SwiftyXPC.

This is meant to be a library we can use instead of NSXPCConnection for XPC services, privileged helper tools, and other such things in macOS applications. It depends only on libxpc and Security, so if you hated having to link Foundation into your helper services, fret no more, because this doesn't care about Foundation at all. In addition, it:

  • uses Codable instead of NSSecureCoding, so you can easily send all kinds of Swift-native types such as enums, structs, and other things Objective-C doesn't know about over the wire.

  • uses Swift Concurrency. I don't think I need to explain why that's cool. :slight_smile:

It's currently at version 0.4.0, which means it's not extensively tested yet, but so far it seems to work pretty well. I've also been working on a reimplementation of CSAuthSample, my EvenBetterAuthorizationSample replacement that uses SwiftyXPC instead of NSXPCConnection, and so far, it seems to be working. If anyone wants to give any of this a spin, all feedback is welcome. :slight_smile: