A swift framework for interacting with, and persisting data from an "Xcode Server".

What's New

XcodeServer 3.0.0 🚀


Another hefty update to XcodeServer. Building on the 2.0.0 release, the overall framework continues to evolve, the biggest change being the including of async/await concurrency features.

  • Async/Await: The Persistable and Queryable protocols have had their implementations updated to use the async syntax in place of completion handlers.
  • Platform Limitations: The package now uses Swift tools 5.5, and the minimum supported os versions are now:
    • .macOS(.v12)
    • .iOS(.v15)
    • .tvOS(.v15)
    • .watchOS(.v8)
  • XCSClient: Has been re-written to use the SessionPlus.URLSessionClient to support networking on multiple platforms, removing the swift-nio dependency tree.
  • Model 2.0.0: A new model version was added the prefixed the internal Core Data entities with 'Managed', clearing up namespace prefixing ('XcodeServer.'). Plus the Integration to Issue mappings have been updated to correctly reflect an issue being related to multiple integrations.


A swift framework for interacting with, and persisting data from an "Xcode Server".

Twitter: @richardpiazza


This software is distributed using Swift Package Manager. You can add it using Xcode or by listing it as a dependency in your Package.swift manifest:

let package = Package(
  dependencies: [
    .package(url: "https://github.com/richardpiazza/XcodeServer.git", .upToNextMajor(from: "3.0.0")
  targets: [
      name: "MyPackage",
      dependencies: [


macOS, iOS, tvOS, watchOS


Linux (Ubuntu)

zlib1g-dev must be pre-installed. sudo apt-get install -y zlib1g-dev



Core module that provides a unified model representing an Xcode Server and all related entities.


All of the DTO definitions for the Xcode Server API. The XCSClient class provides endpoint definitions and utilities for interacting with an Xcode Server API as well as downloading Integration coverage data & assets.


A CoreData (on Apple platforms) driven implementation of primary Xcode Server entities and their relationships to one another.


The executable xcscli provides a command line interface to the Xcode Server API. To execute from the command line (without building a binary version), you can use the swift run command from the root directory. For instance:

$ swift run xcscli --help


Contributions are welcomed and encouraged! See the Contribution Guide for more information.



  • Swift Tools 5.5.0
View More Packages from this Author


Last updated: Thu Mar 23 2023 15:26:22 GMT-0500 (GMT-05:00)