The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of FuturaAsync, reference 0.9.1 (ad4a5c), with Swift 6.0 for macOS (SPM) on 26 Nov 2024 09:27:40 UTC.

Swift 6 data race errors: 3

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.58.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kaqu/futuraasync.git
Reference: 0.9.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/kaqu/futuraasync
 * tag               0.9.1      -> FETCH_HEAD
HEAD is now at ad4a5cd fixing methods access
Cloned https://github.com/kaqu/futuraasync.git
Revision (git rev-parse @):
ad4a5cd35e69a24f0e4c1b0668d9f76b92fb1b5d
SUCCESS checkout https://github.com/kaqu/futuraasync.git at 0.9.1
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "futuraasync",
      "name": "FuturaAsync",
      "url": "https://github.com/kaqu/futuraasync.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/futuraasync",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/kaqu/futuraasync.git
[1/460] Fetching futuraasync
Fetched https://github.com/kaqu/futuraasync.git from cache (0.76s)
Creating working copy for https://github.com/kaqu/futuraasync.git
Working copy of https://github.com/kaqu/futuraasync.git resolved at 0.9.1 (ad4a5cd)
warning: '.resolve-product-dependencies': dependency 'futuraasync' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/kaqu/futuraasync.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/16] Compiling FuturaAsync Worker.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:2:12: warning: var 'mainWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 1 | /// worker using main thread/queue of application
 2 | public var mainWorker: Worker = DispatchQueueWorker.main
   |            |- warning: var 'mainWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'mainWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'mainWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 3 | /// default async worker
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:4:12: warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 2 | public var mainWorker: Worker = DispatchQueueWorker.main
 3 | /// default async worker
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
   |            |- warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'asyncWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'asyncWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[4/17] Compiling FuturaAsync Lock.swift
[5/17] Compiling FuturaAsync FutureHandler.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:5:5: warning: 'public' modifier is redundant for initializer declared in a public extension
 3 | public extension Promise {
 4 |
 5 |     public convenience init<T>(using worker: Worker = asyncWorker, withRetriesCount retryCount: UInt = 0, performing task: @escaping () throws -> (T))  where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
 6 |         self.init()
 7 |         var lastError: Error?
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:4:12: warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 2 | public var mainWorker: Worker = DispatchQueueWorker.main
 3 | /// default async worker
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
   |            |- warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'asyncWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'asyncWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:17:5: warning: 'public' modifier is redundant for instance method declared in a public extension
15 |     }
16 |
17 |     public func fulfill<T>(with value: T) where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
18 |         future.succeed(with: value)
19 |     }
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:21:5: warning: 'public' modifier is redundant for instance method declared in a public extension
19 |     }
20 |
21 |     public func `break`<T>(with error: Error = PromiseError.cancelled) where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
22 |         future.fail(with: error)
23 |     }
[6/17] Compiling FuturaAsync Promise.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:5:5: warning: 'public' modifier is redundant for initializer declared in a public extension
 3 | public extension Promise {
 4 |
 5 |     public convenience init<T>(using worker: Worker = asyncWorker, withRetriesCount retryCount: UInt = 0, performing task: @escaping () throws -> (T))  where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
 6 |         self.init()
 7 |         var lastError: Error?
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:4:12: warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 2 | public var mainWorker: Worker = DispatchQueueWorker.main
 3 | /// default async worker
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
   |            |- warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'asyncWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'asyncWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:17:5: warning: 'public' modifier is redundant for instance method declared in a public extension
15 |     }
16 |
17 |     public func fulfill<T>(with value: T) where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
18 |         future.succeed(with: value)
19 |     }
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:21:5: warning: 'public' modifier is redundant for instance method declared in a public extension
19 |     }
20 |
21 |     public func `break`<T>(with error: Error = PromiseError.cancelled) where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
22 |         future.fail(with: error)
23 |     }
[7/17] Compiling FuturaAsync Schedule.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[8/17] Compiling FuturaAsync Future+Join.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[9/17] Compiling FuturaAsync Future.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[10/17] Emitting module FuturaAsync
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:5:5: warning: 'public' modifier is redundant for initializer declared in a public extension
 3 | public extension Promise {
 4 |
 5 |     public convenience init<T>(using worker: Worker = asyncWorker, withRetriesCount retryCount: UInt = 0, performing task: @escaping () throws -> (T))  where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
 6 |         self.init()
 7 |         var lastError: Error?
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:4:12: warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 2 | public var mainWorker: Worker = DispatchQueueWorker.main
 3 | /// default async worker
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
   |            |- warning: var 'asyncWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'asyncWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'asyncWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:17:5: warning: 'public' modifier is redundant for instance method declared in a public extension
15 |     }
16 |
17 |     public func fulfill<T>(with value: T) where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
18 |         future.succeed(with: value)
19 |     }
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Future/Promise.swift:21:5: warning: 'public' modifier is redundant for instance method declared in a public extension
19 |     }
20 |
21 |     public func `break`<T>(with error: Error = PromiseError.cancelled) where Value == Result<T> {
   |     `- warning: 'public' modifier is redundant for instance method declared in a public extension
22 |         future.fail(with: error)
23 |     }
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:2:12: warning: var 'mainWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 1 | /// worker using main thread/queue of application
 2 | public var mainWorker: Worker = DispatchQueueWorker.main
   |            |- warning: var 'mainWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'mainWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'mainWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 3 | /// default async worker
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
[11/17] Compiling FuturaAsync PromiseError.swift
[12/17] Compiling FuturaAsync Result.swift
[13/17] Compiling FuturaAsync Catchable.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[14/17] Compiling FuturaAsync Delayed.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[15/17] Compiling FuturaAsync FailableFuture.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Worker.swift:6:12: warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 4 | public var asyncWorker: Worker = DispatchQueueWorker.default
 5 |
 6 | public var defaultWorker: Worker = asyncWorker
   |            |- warning: var 'defaultWorker' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'defaultWorker' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: annotate 'defaultWorker' with '@MainActor' if property should only be accessed from the main actor
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 7 |
 8 | public protocol Worker {
[16/17] Compiling FuturaAsync DispatchQueueWorker.swift
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/DispatchQueueWorker.swift:14:30: warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
11 | extension DispatchQueueWorker : Worker {
12 |
13 |     public func schedule(_ work: @escaping () -> Void) -> Void {
   |                            `- note: parameter 'work' is implicitly non-sendable
14 |         queue.async(execute: work)
   |                              `- warning: passing non-sendable parameter 'work' to function expecting a @Sendable closure
15 |     }
16 |
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/DispatchQueueWorker.swift:22:21: warning: capture of 'work' with non-sendable type '() throws -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
20 |         queue.async {
21 |             do {
22 |                 try work()
   |                     |- warning: capture of 'work' with non-sendable type '() throws -> Void' in a `@Sendable` closure; this is an error in the Swift 6 language mode
   |                     `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
23 |                 catchable.close()
24 |             } catch {
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/DispatchQueueWorker.swift:23:17: warning: capture of 'catchable' with non-sendable type 'Catchable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
21 |             do {
22 |                 try work()
23 |                 catchable.close()
   |                 `- warning: capture of 'catchable' with non-sendable type 'Catchable' in a `@Sendable` closure; this is an error in the Swift 6 language mode
24 |             } catch {
25 |                 catchable.handle(error: error)
/Users/admin/builder/spi-builder-workspace/Sources/FuturaAsync/Schedule/Catchable.swift:1:20: note: class 'Catchable' does not conform to the 'Sendable' protocol
 1 | public final class Catchable {
   |                    `- note: class 'Catchable' does not conform to the 'Sendable' protocol
 2 |
 3 |     private let future: FailableFuture<Void> = Future()
[17/17] Compiling FuturaAsync ExecutionContext.swift
Build complete! (9.44s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "FuturaAsync",
  "name" : "FuturaAsync",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "FuturaAsync",
      "targets" : [
        "FuturaAsync"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FuturaAsyncTests",
      "module_type" : "SwiftTarget",
      "name" : "FuturaAsyncTests",
      "path" : "Tests/FuturaAsyncTests",
      "sources" : [
        "FuturaAsyncTests.swift",
        "FutureTests.swift",
        "LockTests.swift",
        "PromiseAndFutureTests.swift",
        "WorkerAndCatchableTests.swift"
      ],
      "target_dependencies" : [
        "FuturaAsync"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FuturaAsync",
      "module_type" : "SwiftTarget",
      "name" : "FuturaAsync",
      "path" : "Sources/FuturaAsync",
      "product_memberships" : [
        "FuturaAsync"
      ],
      "sources" : [
        "Future/Delayed.swift",
        "Future/FailableFuture.swift",
        "Future/Future+Join.swift",
        "Future/Future.swift",
        "Future/FutureHandler.swift",
        "Future/Promise.swift",
        "Future/PromiseError.swift",
        "Future/Result.swift",
        "Schedule/Catchable.swift",
        "Schedule/DispatchQueueWorker.swift",
        "Schedule/ExecutionContext.swift",
        "Schedule/Schedule.swift",
        "Schedule/Worker.swift",
        "Synchronization/Lock.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.1"
}
Done.