The Swift Package Index logo.Swift Package Index

Build Information

Successful build of SpendOwl, reference v1.1.0 (b679b6), with Swift 6.2 for macOS (SPM) on 24 Feb 2026 18:01:17 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/spendowl/spendowl-ios.git
Reference: v1.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/spendowl/spendowl-ios
 * tag               v1.1.0     -> FETCH_HEAD
HEAD is now at b679b61 chore: bump version to 1.1.0
Cloned https://github.com/spendowl/spendowl-ios.git
Revision (git rev-parse @):
b679b611f27544da5b2e54528c0641b9e41e6139
SUCCESS checkout https://github.com/spendowl/spendowl-ios.git at v1.1.0
========================================
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": "spendowl-ios",
      "name": "SpendOwl",
      "url": "https://github.com/spendowl/spendowl-ios.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/spendowl-ios",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/spendowl/spendowl-ios.git
[1/94] Fetching spendowl-ios
Fetched https://github.com/spendowl/spendowl-ios.git from cache (0.73s)
Creating working copy for https://github.com/spendowl/spendowl-ios.git
Working copy of https://github.com/spendowl/spendowl-ios.git resolved at v1.1.0 (b679b61)
warning: '.resolve-product-dependencies': dependency 'spendowl-ios' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/spendowl/spendowl-ios.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0.app xcrun swift build --arch arm64
Building for debugging...
[0/3] Write sources
[1/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version-49B95AFC49DCD68C.txt
[4/16] Compiling SpendOwl Version.swift
[5/17] Compiling SpendOwl EventQueue.swift
[6/17] Compiling SpendOwl KeychainHelper.swift
[7/17] Compiling SpendOwl Defaults.swift
[8/17] Compiling SpendOwl SpendOwlError.swift
[9/17] Compiling SpendOwl resource_bundle_accessor.swift
[10/17] Compiling SpendOwl SpendOwl.swift
[11/17] Compiling SpendOwl Configuration.swift
[12/17] Compiling SpendOwl Logger.swift
[13/17] Compiling SpendOwl AttributionResult.swift
[14/17] Compiling SpendOwl AttributionService.swift
[15/17] Emitting module SpendOwl
[16/17] Compiling SpendOwl APIClient.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:232:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
230 |     /// enqueued during the network call.
231 |     private func sendEnqueuedEvents() async {
232 |         lock.lock()
    |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
233 |         guard !_isSending else {
234 |             lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:234:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
232 |         lock.lock()
233 |         guard !_isSending else {
234 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
235 |             return
236 |         }
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:238:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
236 |         }
237 |         _isSending = true
238 |         lock.unlock()
    |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
239 |
240 |         defer {
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:241:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
239 |
240 |         defer {
241 |             lock.lock()
    |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
242 |             _isSending = false
243 |             lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:243:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
241 |             lock.lock()
242 |             _isSending = false
243 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
244 |         }
245 |
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
[17/17] Compiling SpendOwl PurchaseTracker.swift
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:232:14: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
230 |     /// enqueued during the network call.
231 |     private func sendEnqueuedEvents() async {
232 |         lock.lock()
    |              `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
233 |         guard !_isSending else {
234 |             lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:234:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
232 |         lock.lock()
233 |         guard !_isSending else {
234 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
235 |             return
236 |         }
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:238:14: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
236 |         }
237 |         _isSending = true
238 |         lock.unlock()
    |              `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
239 |
240 |         defer {
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:241:18: warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
239 |
240 |         defer {
241 |             lock.lock()
    |                  `- warning: instance method 'lock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
242 |             _isSending = false
243 |             lock.unlock()
Foundation.NSLock.lock:2:11: note: 'lock()' declared here
1 | class NSLock {
2 | open func lock()}
  |           `- note: 'lock()' declared here
3 |
/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/Purchases/PurchaseTracker.swift:243:18: warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
241 |             lock.lock()
242 |             _isSending = false
243 |             lock.unlock()
    |                  `- warning: instance method 'unlock' is unavailable from asynchronous contexts; Use async-safe scoped locking instead; this is an error in the Swift 6 language mode
244 |         }
245 |
Foundation.NSLock.unlock:2:11: note: 'unlock()' declared here
1 | class NSLock {
2 | open func unlock()}
  |           `- note: 'unlock()' declared here
3 |
Build complete! (9.27s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SpendOwl",
  "name" : "SpendOwl",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "SpendOwl",
      "targets" : [
        "SpendOwl"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "SpendOwlTests",
      "module_type" : "SwiftTarget",
      "name" : "SpendOwlTests",
      "path" : "Tests/SpendOwlTests",
      "sources" : [
        "SpendOwlTests.swift"
      ],
      "target_dependencies" : [
        "SpendOwl"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SpendOwl",
      "module_type" : "SwiftTarget",
      "name" : "SpendOwl",
      "path" : "Sources/SpendOwl",
      "product_memberships" : [
        "SpendOwl"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/Sources/SpendOwl/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "Attribution/AttributionResult.swift",
        "Attribution/AttributionService.swift",
        "Configuration.swift",
        "Logger.swift",
        "Network/APIClient.swift",
        "Purchases/PurchaseTracker.swift",
        "SpendOwl.swift",
        "SpendOwlError.swift",
        "Storage/Defaults.swift",
        "Storage/EventQueue.swift",
        "Storage/KeychainHelper.swift",
        "Version.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.