The Swift Package Index logo.Swift Package Index

Build Information

Successful build of Balam, reference 1.0.0 (d3be40), with Swift 6.2 for macOS (SPM) on 18 Jun 2025 18:10:10 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/catverse/balam.git
Reference: 1.0.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/catverse/balam
 * tag               1.0.0      -> FETCH_HEAD
HEAD is now at d3be40e Test replace saves
Cloned https://github.com/catverse/balam.git
Revision (git rev-parse @):
d3be40eec44f3d725ceeef0f913d567740133855
SUCCESS checkout https://github.com/catverse/balam.git at 1.0.0
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.2
Building package at path:  $PWD
https://github.com/catverse/balam.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.0.0-Beta.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-1EA4D86E10B52AF.txt
[3/8] Compiling Balam Set.swift
[4/8] Compiling Balam Property.swift
[5/8] Compiling Balam Node.swift
[6/8] Compiling Balam Mirror.swift
[7/8] Emitting module Balam
[8/8] Compiling Balam Balam.swift
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:29:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 27 |     public func add<T>(_ node: T) where T : Codable {
 28 |         queue.async {
 29 |             self.items.add(node)
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 30 |             self.save()
 31 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:27:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 25 |     }
 26 |
 27 |     public func add<T>(_ node: T) where T : Codable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 28 |         queue.async {
 29 |             self.items.add(node)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:36:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 34 |     public func add<T>(_ node: T) where T : Codable & Equatable {
 35 |         queue.async {
 36 |             self.items.add(node) { node == $0 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 37 |             self.save()
 38 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:34:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 32 |     }
 33 |
 34 |     public func add<T>(_ node: T) where T : Codable & Equatable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 35 |         queue.async {
 36 |             self.items.add(node) { node == $0 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:43:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 41 |     public func add<T>(_ node: T) where T : Codable & Identifiable {
 42 |         queue.async {
 43 |             self.items.add(node) { node.id == $0.id }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 44 |             self.save()
 45 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:41:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 39 |     }
 40 |
 41 |     public func add<T>(_ node: T) where T : Codable & Identifiable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 42 |         queue.async {
 43 |             self.items.add(node) { node.id == $0.id }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:50:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 48 |     public func add<T>(_ node: T) where T : Codable & Equatable & Identifiable {
 49 |         queue.async {
 50 |             self.items.add(node) { node.id == $0.id && node == $0 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 51 |             self.save()
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:48:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 46 |     }
 47 |
 48 |     public func add<T>(_ node: T) where T : Codable & Equatable & Identifiable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 49 |         queue.async {
 50 |             self.items.add(node) { node.id == $0.id && node == $0 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:57:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 55 |     public func add<T>(_ nodes: [T]) where T : Codable {
 56 |         queue.async {
 57 |             self.items.add(nodes)
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 58 |             self.save()
 59 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:55:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 53 |     }
 54 |
 55 |     public func add<T>(_ nodes: [T]) where T : Codable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 56 |         queue.async {
 57 |             self.items.add(nodes)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:64:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 62 |     public func add<T>(_ nodes: [T]) where T : Codable & Equatable {
 63 |         queue.async {
 64 |             self.items.add(nodes) { $0 == $1 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 65 |             self.save()
 66 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:62:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 60 |     }
 61 |
 62 |     public func add<T>(_ nodes: [T]) where T : Codable & Equatable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 63 |         queue.async {
 64 |             self.items.add(nodes) { $0 == $1 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:71:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 69 |     public func add<T>(_ nodes: [T]) where T : Codable & Identifiable {
 70 |         queue.async {
 71 |             self.items.add(nodes) { $0.id == $1.id }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 72 |             self.save()
 73 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:69:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 67 |     }
 68 |
 69 |     public func add<T>(_ nodes: [T]) where T : Codable & Identifiable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 70 |         queue.async {
 71 |             self.items.add(nodes) { $0.id == $1.id }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:78:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 76 |     public func add<T>(_ nodes: [T]) where T : Codable & Equatable & Identifiable {
 77 |         queue.async {
 78 |             self.items.add(nodes) { $0.id == $1.id && $0 == $1 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 79 |             self.save()
 80 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:76:26: warning: capture of non-sendable type 'T.Type' in an isolated closure
 74 |     }
 75 |
 76 |     public func add<T>(_ nodes: [T]) where T : Codable & Equatable & Identifiable {
    |                          `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 77 |         queue.async {
 78 |             self.items.add(nodes) { $0.id == $1.id && $0 == $1 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:85:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 83 |     public func update<T>(_ node: T) where T : Codable & Equatable {
 84 |         queue.async {
 85 |             self.items.update(node) { node == $0 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 86 |             self.save()
 87 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:83:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
 81 |     }
 82 |
 83 |     public func update<T>(_ node: T) where T : Codable & Equatable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 84 |         queue.async {
 85 |             self.items.update(node) { node == $0 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:92:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 90 |     public func update<T>(_ node: T) where T : Codable & Identifiable {
 91 |         queue.async {
 92 |             self.items.update(node) { node.id == $0.id }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 93 |             self.save()
 94 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:90:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
 88 |     }
 89 |
 90 |     public func update<T>(_ node: T) where T : Codable & Identifiable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 91 |         queue.async {
 92 |             self.items.update(node) { node.id == $0.id }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:99:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
 97 |     public func update<T>(_ node: T) where T : Codable & Equatable & Identifiable {
 98 |         queue.async {
 99 |             self.items.update(node) { node.id == $0.id && node == $0 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
100 |             self.save()
101 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:97:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
 95 |     }
 96 |
 97 |     public func update<T>(_ node: T) where T : Codable & Equatable & Identifiable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
 98 |         queue.async {
 99 |             self.items.update(node) { node.id == $0.id && node == $0 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:106:31: warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
104 |     public func update<T>(_ type: T.Type, with: @escaping (inout T) -> Void) where T : Codable {
105 |         queue.async {
106 |             self.items.update(type, with: with)
    |                               `- warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
107 |             self.save()
108 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:106:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
104 |     public func update<T>(_ type: T.Type, with: @escaping (inout T) -> Void) where T : Codable {
105 |         queue.async {
106 |             self.items.update(type, with: with)
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
107 |             self.save()
108 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:104:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
102 |     }
103 |
104 |     public func update<T>(_ type: T.Type, with: @escaping (inout T) -> Void) where T : Codable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
105 |         queue.async {
106 |             self.items.update(type, with: with)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:113:32: warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
111 |     public func replace<T>(_ type: T.Type, with: T) where T : Codable {
112 |         queue.async {
113 |             self.items.replace(type, with: with)
    |                                `- warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
114 |             self.save()
115 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:113:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
111 |     public func replace<T>(_ type: T.Type, with: T) where T : Codable {
112 |         queue.async {
113 |             self.items.replace(type, with: with)
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
114 |             self.save()
115 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:111:30: warning: capture of non-sendable type 'T.Type' in an isolated closure
109 |     }
110 |
111 |     public func replace<T>(_ type: T.Type, with: T) where T : Codable {
    |                              `- warning: capture of non-sendable type 'T.Type' in an isolated closure
112 |         queue.async {
113 |             self.items.replace(type, with: with)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:120:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
118 |     public func remove<T>(_ node: T) where T : Codable {
119 |         queue.async {
120 |             self.items.delete(node)
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
121 |             self.save()
122 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:118:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
116 |     }
117 |
118 |     public func remove<T>(_ node: T) where T : Codable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
119 |         queue.async {
120 |             self.items.delete(node)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:127:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
125 |     public func remove<T>(_ node: T) where T : Codable & Equatable {
126 |         queue.async {
127 |             self.items.delete(node) { node == $0 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
128 |             self.save()
129 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:125:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
123 |     }
124 |
125 |     public func remove<T>(_ node: T) where T : Codable & Equatable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
126 |         queue.async {
127 |             self.items.delete(node) { node == $0 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:134:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
132 |     public func remove<T>(_ node: T) where T : Codable & Identifiable {
133 |         queue.async {
134 |             self.items.delete(node) { node.id == $0.id }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
135 |             self.save()
136 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:132:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
130 |     }
131 |
132 |     public func remove<T>(_ node: T) where T : Codable & Identifiable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
133 |         queue.async {
134 |             self.items.delete(node) { node.id == $0.id }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:141:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
139 |     public func remove<T>(_ node: T) where T : Codable & Equatable & Identifiable {
140 |         queue.async {
141 |             self.items.delete(node) { node.id == $0.id && node == $0 }
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
142 |             self.save()
143 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:139:29: warning: capture of non-sendable type 'T.Type' in an isolated closure
137 |     }
138 |
139 |     public func remove<T>(_ node: T) where T : Codable & Equatable & Identifiable {
    |                             `- warning: capture of non-sendable type 'T.Type' in an isolated closure
140 |         queue.async {
141 |             self.items.delete(node) { node.id == $0.id && node == $0 }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:148:24: warning: capture of non-sendable type 'T.Type' in an isolated closure
146 |     public func remove<T>(_ type: T.Type, when: @escaping (T) -> Bool) where T : Codable {
147 |         queue.async {
148 |             self.items.delete(when)
    |                        `- warning: capture of non-sendable type 'T.Type' in an isolated closure
149 |             self.save()
150 |         }
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:146:43: warning: capture of non-sendable type 'T.Type' in an isolated closure
144 |     }
145 |
146 |     public func remove<T>(_ type: T.Type, when: @escaping (T) -> Bool) where T : Codable {
    |                                           `- warning: capture of non-sendable type 'T.Type' in an isolated closure
147 |         queue.async {
148 |             self.items.delete(when)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:156:82: warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
154 |         .init { promise in
155 |             self.queue.async {
156 |                 let result = Result<[T], Never>.success(self.items.first { $0 == type }?.decoding() ?? [])
    |                                                                                  `- warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
157 |                 DispatchQueue.main.async {
158 |                     promise(result)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:156:49: warning: capture of non-sendable type 'T.Type' in an isolated closure
154 |         .init { promise in
155 |             self.queue.async {
156 |                 let result = Result<[T], Never>.success(self.items.first { $0 == type }?.decoding() ?? [])
    |                                                 `- warning: capture of non-sendable type 'T.Type' in an isolated closure
157 |                 DispatchQueue.main.async {
158 |                     promise(result)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:153:28: warning: capture of non-sendable type 'T.Type' in an isolated closure
151 |     }
152 |
153 |     public func nodes<T>(_ type: T.Type) -> Future<[T], Never> where T : Codable {
    |                            `- warning: capture of non-sendable type 'T.Type' in an isolated closure
154 |         .init { promise in
155 |             self.queue.async {
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:156:82: warning: capture of 'type' with non-sendable type 'T.Type' in an isolated closure
154 |         .init { promise in
155 |             self.queue.async {
156 |                 let result = Result<[T], Never>.success(self.items.first { $0 == type }?.decoding() ?? [])
    |                                                                                  `- warning: capture of 'type' with non-sendable type 'T.Type' in an isolated closure
157 |                 DispatchQueue.main.async {
158 |                     promise(result)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:167:74: warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
165 |         .init { promise in
166 |             self.queue.async {
167 |                 let result = Result<[T], Never>.success(self.items.nodes(type, isIncluded: isIncluded))
    |                                                                          `- warning: capture of 'type' with non-sendable type 'T.Type' in a '@Sendable' closure [#SendableClosureCaptures]
168 |                 DispatchQueue.main.async {
169 |                     promise(result)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:167:49: warning: capture of non-sendable type 'T.Type' in an isolated closure
165 |         .init { promise in
166 |             self.queue.async {
167 |                 let result = Result<[T], Never>.success(self.items.nodes(type, isIncluded: isIncluded))
    |                                                 `- warning: capture of non-sendable type 'T.Type' in an isolated closure
168 |                 DispatchQueue.main.async {
169 |                     promise(result)
/Users/admin/builder/spi-builder-workspace/Sources/Balam.swift:164:28: warning: capture of non-sendable type 'T.Type' in an isolated closure
162 |     }
163 |
164 |     public func nodes<T>(_ type: T.Type, isIncluded: @escaping (T) -> Bool) -> Future<[T], Never> where T : Codable {
    |                            `- warning: capture of non-sendable type 'T.Type' in an isolated closure
165 |         .init { promise in
166 |             self.queue.async {
[#SendableClosureCaptures]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-closure-captures>
Build complete! (4.23s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Balam",
  "name" : "Balam",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "Balam",
      "targets" : [
        "Balam"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "Tests",
      "module_type" : "SwiftTarget",
      "name" : "Tests",
      "path" : "Tests",
      "sources" : [
        "AddBatchTests.swift",
        "AddTests.swift",
        "BalamTests.swift",
        "EnumTests.swift",
        "GetTests.swift",
        "Mocks.swift",
        "NodeTests.swift",
        "PropertyTests.swift",
        "RemoveTests.swift",
        "UpdateTests.swift"
      ],
      "target_dependencies" : [
        "Balam"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Balam",
      "module_type" : "SwiftTarget",
      "name" : "Balam",
      "path" : "Sources",
      "product_memberships" : [
        "Balam"
      ],
      "sources" : [
        "Balam.swift",
        "Mirror.swift",
        "Node.swift",
        "Property.swift",
        "Set.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.