The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Threading, reference 2.3.5 (9931c6), with Swift 6.4 for macOS (SPM) on 17 Oct 2026 12:33:31 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/NikSativa/Threading.git
Reference: 2.3.5
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/NikSativa/Threading
 * tag               2.3.5      -> FETCH_HEAD
HEAD is now at 9931c60 Gate the SyncMutex README test like SyncMutex itself
Cloned https://github.com/NikSativa/Threading.git
Revision (git rev-parse @):
9931c605119b332e25cc46520ec379892483be60
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/NikSativa/Threading.git at 2.3.5
========================================
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",
  "traits": [
    "default"
  ],
  "dependencies": [
    {
      "identity": "threading",
      "name": "Threading",
      "url": "https://github.com/NikSativa/Threading.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Threading",
      "traits": [
        "default"
      ],
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/NikSativa/Threading.git
[1/547] Fetching threading
Fetched https://github.com/NikSativa/Threading.git (0.87s)
Creating working copy for https://github.com/NikSativa/Threading.git
Working copy of https://github.com/NikSativa/Threading.git resolved at 2.3.5 (9931c60)
warning: '.resolve-product-dependencies': dependency 'threading' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/NikSativa/Threading.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0.app xcrun swift build --arch arm64
Building for debugging...
[Pre-planning 1 / 153]
[Planning deferred tasks]
[33 / 51] Threading_Threading
[35 / 51]
[36 / 52] Threading
[46 / 99]
[48 / 99]
[54 / 99]
[56 / 99]
[60 / 99]
[62 / 99]
[65 / 99]
[69 / 99]
[71 / 99]
[72 / 99]
[83 / 99] Threading
[84 / 99] Threading
[96 / 99] ThreadingDynamic-product
Build complete! (10.22 sec)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Threading",
  "name" : "Threading",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "14.0"
    },
    {
      "name" : "maccatalyst",
      "version" : "15.0"
    },
    {
      "name" : "tvos",
      "version" : "16.0"
    },
    {
      "name" : "watchos",
      "version" : "9.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "Threading",
      "targets" : [
        "Threading"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ThreadingStatic",
      "targets" : [
        "Threading"
      ],
      "type" : {
        "library" : [
          "static"
        ]
      }
    },
    {
      "name" : "ThreadingDynamic",
      "targets" : [
        "Threading"
      ],
      "type" : {
        "library" : [
          "dynamic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ThreadingTests",
      "module_type" : "SwiftTarget",
      "name" : "ThreadingTests",
      "path" : "Tests",
      "sources" : [
        "AtomicTests.swift",
        "AtomicUncheckedTests.swift",
        "DelayedQueueTests.swift",
        "DispatchTime_QueueTests.swift",
        "IsolatedMainTests.swift",
        "QueueTests.swift",
        "READMEExamplesTests.swift",
        "TestHelpers/DelayedQueue+TestHelper.swift",
        "TestHelpers/FakeQueueable.swift",
        "TestHelpers/Queue+TestHelper.swift"
      ],
      "target_dependencies" : [
        "Threading"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Threading",
      "module_type" : "SwiftTarget",
      "name" : "Threading",
      "path" : "Source",
      "product_memberships" : [
        "Threading",
        "ThreadingStatic",
        "ThreadingDynamic"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Source/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "AnyLock.swift",
        "AnyMutex.swift",
        "AtomicValue.swift",
        "IsolatedMain.swift",
        "Lockers/NSLock.swift",
        "Lockers/NSRecursiveLock.swift",
        "Lockers/OSAllocatedUnfairLock.swift",
        "Lockers/PThread.swift",
        "Lockers/Semaphore.swift",
        "Lockers/UnfairLock.swift",
        "Locking.swift",
        "MutexInitializable.swift",
        "Mutexes/LockedValue.swift",
        "Mutexes/OSAllocatedUnfairMutex.swift",
        "Mutexes/QueueBarrier.swift",
        "Mutexes/SyncMutex.swift",
        "Mutexing.swift",
        "Queue/DelayedQueue.swift",
        "Queue/DispatchTime+Queue.swift",
        "Queue/Queue+Queueable.swift",
        "Queue/Queue.swift",
        "Queue/Queueable.swift",
        "USendable.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/niksativa/threading/2.3.5
Repository:               NikSativa/Threading
Swift version used:       6.4
Target:                   Threading
Extracting symbol information for 'Threading'...
Finished extracting symbol information for 'Threading'. (1.21s)
Building documentation for 'Threading'...
warning: This documentation block is inherited by other symbols where 'lock()' fails to resolve.
   --> Source/AnyLock.swift:218:55-218:65
216 |     /// Releases the underlying lock, allowing other threads to acquire it.
217 |     ///
218 +     /// This method must be called after a successful ``lock()`` or ``tryLock()`` call to avoid deadlocks.
    |                                                       ╰─suggestion: Use an absolute link path.
219 |     ///
220 |     /// ### Example
warning: External name 'initialValue' used to document parameter
  --> Source/Mutexes/LockedValue.swift:60:21-60:33
58 |     /// Creates a locked value with a default recursive pthread lock.
59 |     ///
60 +     /// - Parameter initialValue: The initial value to protect.
   |                     ╰─suggestion: Replace 'initialValue' with 'value'
61 |     public convenience init(initialValue value: Value) {
62 |         self.init(initialValue: value, lock: AnyLock.pthread(.recursive))
warning: External name 'initialValue' used to document parameter
  --> Source/Mutexes/OSAllocatedUnfairMutex.swift:33:21-33:33
31 |     /// Creates a new mutex-protected container with the specified initial value.
32 |     ///
33 +     /// - Parameter initialValue: The value to protect with the system-managed unfair lock.
   |                     ╰─suggestion: Replace 'initialValue' with 'value'
34 |     ///
35 |     /// ### Example
warning: Return value documented for instance method returning void
  --> Source/Queue/Queueable.swift:59:9-59:46
57 |     /// - Parameter workItem: A closure that may throw an error.
58 |     /// - Throws: An error thrown by the closure.
59 +     /// - Returns: The result of the closure.
   |         ╰─suggestion: Remove return value documentation
60 |     func sync(execute workItem: () throws -> Void) rethrows
61 |
warning: Parameter 'flags' is missing documentation
  --> Source/Queue/Queueable.swift:79:50-79:50
77 |     /// Executes a closure synchronously on the queue and returns a result.
78 |     ///
79 +     /// - Parameter work: The closure to execute.
   |         ╰─suggestion: Document 'flags' parameter
80 |     /// - Returns: The result of the closure.
81 |     func sync<T>(flags: Queue.Flags, execute work: () -> T) -> T
Finished building documentation for 'Threading' (0.30s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/niksativa/threading/2.3.5
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2345] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin (1.87s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.5.0 (4.15s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3842] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit (1.42s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (2.19s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.5.0
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[Planning 69 / 95]
[Planning deferred tasks]
[18 / 41]
[20 / 43] Snippets
[30 / 92]
[35 / 92]
[38 / 92]
[39 / 92]
[43 / 92]
[45 / 92]
[48 / 92]
[51 / 92]
[53 / 92]
[54 / 92]
[65 / 92] Snippets
[75 / 92] Snippets
[84 / 93] SymbolKit
[86 / 93] SymbolKit
[88 / 93] snippet-extract-product
[92 / 97] snippet-extract-product
[93 / 97] snippet-extract-product
[95 / 97] snippet-extract-product
Build complete! (4.56 sec)
Building for debugging...
[Planning deferred tasks]
[3 / 11]
[4 / 12] Threading
[15 / 23] Threading
Build complete! (0.99 sec)
     812
6	/Users/admin/builder/spi-builder-workspace/.docs/niksativa/threading/2.3.5
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/niksativa/threading/2.3.5
File count: 812
Doc size:   6.0MB
Preparing doc bundle ...
Using presigned URL upload - AWS credentials not required
Uploading -niksativa-threading-2.3.5-99519ae6.zip to presigned URL
Starting upload of 1369481 bytes...
Upload completed successfully
Done.