The Swift Package Index logo.Swift Package Index

Build Information

Successful build of SearchAndSort, reference main (1205bb), with Swift 6.3 for macOS (SPM) on 15 Apr 2026 15:08:10 UTC.

Swift 6 data race errors: 0

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mohammad-nej/SearchAndSort.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/mohammad-nej/SearchAndSort
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 1205bb0 - addes support for nullable keys.
Cloned https://github.com/mohammad-nej/SearchAndSort.git
Revision (git rev-parse @):
1205bb07b90e31b6c70e1ebb8fb0d36df79a16f3
SUCCESS checkout https://github.com/mohammad-nej/SearchAndSort.git at main
Fetching https://github.com/mohammad-nej/MyLogger
[1/35] Fetching mylogger
Fetched https://github.com/mohammad-nej/MyLogger from cache (0.61s)
Computing version for https://github.com/mohammad-nej/MyLogger
Computed https://github.com/mohammad-nej/MyLogger at 1.0.2 (1.19s)
Creating working copy for https://github.com/mohammad-nej/MyLogger
Working copy of https://github.com/mohammad-nej/MyLogger resolved at 1.0.2
========================================
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": "searchandsort",
      "name": "SearchAndSort",
      "url": "https://github.com/mohammad-nej/SearchAndSort.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SearchAndSort",
      "traits": [
        "default"
      ],
      "dependencies": [
        {
          "identity": "mylogger",
          "name": "MyLogger",
          "url": "https://github.com/mohammad-nej/MyLogger",
          "version": "1.0.3",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/MyLogger",
          "traits": [
            "default"
          ],
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/mohammad-nej/SearchAndSort.git
[1/409] Fetching searchandsort
Fetched https://github.com/mohammad-nej/SearchAndSort.git from cache (0.67s)
Fetching https://github.com/mohammad-nej/MyLogger from cache
Fetched https://github.com/mohammad-nej/MyLogger from cache (0.45s)
Computing version for https://github.com/mohammad-nej/MyLogger
Computed https://github.com/mohammad-nej/MyLogger at 1.0.3 (0.52s)
Creating working copy for https://github.com/mohammad-nej/MyLogger
Working copy of https://github.com/mohammad-nej/MyLogger resolved at 1.0.3
Creating working copy for https://github.com/mohammad-nej/SearchAndSort.git
Working copy of https://github.com/mohammad-nej/SearchAndSort.git resolved at main (1205bb0)
warning: '.resolve-product-dependencies': dependency 'searchandsort' is not used by any target
Found 1 product dependencies
  - MyLogger
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/mohammad-nej/SearchAndSort.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version--6988338F2F200930.txt
[4/5] Emitting module MyLogger
[5/5] Compiling MyLogger MyLogger.swift
[6/29] Compiling SearchAndSort PersianDoubleStringifier.swift
[7/29] Compiling SearchAndSort PersianIntStringifier.swift
[8/31] Compiling SearchAndSort Searchable.swift
[9/31] Compiling SearchAndSort SearchableKeyProtocol.swift
[10/31] Compiling SearchAndSort SortableKeyPathProtocol.swift
[11/31] Compiling SearchAndSort SortableKeyPath.swift
[12/31] Compiling SearchAndSort Sorter.swift
[13/31] Compiling SearchAndSort PersianDateStringifier.swift
[14/31] Compiling SearchAndSort AnySearchableTitledKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableTitledKey.swift:64:26: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 62 |
 63 |
 64 |             return await searchable.search(in: array, for: query, strategy: strategy)
    |                          `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.stringProducer = { model in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableTitledKey.swift:67:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.stringProducer = { model in
 67 |             searchable.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 68 |         }
 69 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortableKey.swift:44:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
42 |         self.closure = { models, order in
43 |
44 |             await item.sort(models, order: order)
   |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
45 |         }
46 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortableKey.swift:51:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
49 |         let key = SortableKeyPath(key)
50 |         self.closure = { models, order in
51 |             await key.sort(models, order: order)
   |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
52 |         }
53 |
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[15/31] Compiling SearchAndSort AnySortableKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableTitledKey.swift:64:26: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 62 |
 63 |
 64 |             return await searchable.search(in: array, for: query, strategy: strategy)
    |                          `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.stringProducer = { model in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableTitledKey.swift:67:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.stringProducer = { model in
 67 |             searchable.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 68 |         }
 69 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortableKey.swift:44:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
42 |         self.closure = { models, order in
43 |
44 |             await item.sort(models, order: order)
   |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
45 |         }
46 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortableKey.swift:51:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
49 |         let key = SortableKeyPath(key)
50 |         self.closure = { models, order in
51 |             await key.sort(models, order: order)
   |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
52 |         }
53 |
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[16/31] Compiling SearchAndSort SearchableKeyPath.swift
[17/31] Compiling SearchAndSort SearchAndSort.swift
[18/31] Compiling SearchAndSort SortOrder.swift
[19/31] Compiling SearchAndSort StringConvertableStringifier.swift
[20/31] Compiling SearchAndSort TitledKey.swift
[21/31] Compiling SearchAndSort AnyKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:49:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 47 |         let stringer = StringConvertableStringifier<Key>()
 48 |         self.stringProducer = { model in
 49 |             return stringer.stringify(model[keyPath: key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 50 |         }
 51 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:53:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 51 |
 52 |         sorterProducer = { models , order in
 53 |             let sortKey = SortableKeyPath(key)
    |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 54 |             return await sortKey.sort(models , order: order)
 55 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:57:23: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 55 |         }
 56 |         searchProducer = { models , query,strategy in
 57 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 58 |
 59 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:70:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 68 |
 69 |         self.stringProducer = { model in
 70 |             return stringer.stringify(model[keyPath: key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 71 |         }
 72 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:74:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 72 |
 73 |         sorterProducer = { models , order in
 74 |             let sortKey = SortableKeyPath(key)
    |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 75 |             return await sortKey.sort(models , order: order)
 76 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:78:23: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 76 |         }
 77 |         searchProducer = { models , query,strategy in
 78 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 79 |
 80 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:93:29: warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 91 |         let stringer = key.stringer
 92 |         self.stringProducer = { model in
 93 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 94 |         }
 95 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:97:27: warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 95 |
 96 |         sorterProducer = { models , order in
 97 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 98 |             return await sortKey.sort(models , order: order)
 99 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:115:29: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
113 |
114 |         self.stringProducer = { model in
115 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
116 |         }
117 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:119:27: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
117 |
118 |         sorterProducer = { models , order in
119 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
120 |             return await sortKey.sort(models , order: order)
121 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:123:23: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
121 |         }
122 |         searchProducer = { models , query,strategy in
123 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
124 |
125 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:141:29: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
139 |         let stringer = StringConvertableStringifier<SortKey>()
140 |         self.stringProducer = { model in
141 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
142 |         }
143 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:145:27: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
143 |
144 |         sorterProducer = { models , order in
145 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
146 |             return await sortKey.sort(models , order: order)
147 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:149:23: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
147 |         }
148 |         searchProducer = { models , query,strategy in
149 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
150 |
151 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:168:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
166 |         let stringer = key.stringer
167 |         self.stringProducer = { model in
168 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
169 |         }
170 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:172:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
170 |
171 |         sorterProducer = { models , order in
172 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
173 |             return await sortKey.sort(models , order: order)
174 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:179:26: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
177 |             //let key = SearchableKeyPath( key , stringifier: stringer)
178 |
179 |             return await key.search(in: models, for: query,strategy: strategy)
    |                          `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
180 |
181 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableKey.swift:45:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 43 |         let stringer = StringConvertableStringifier<Key>()
 44 |         self.stringProducer = { model in
 45 |             return stringer.stringify( model[keyPath: key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 46 |         }
 47 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableKey.swift:49:23: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 47 |
 48 |         searchProducer = { models , query,strategy in
 49 |             let key = SearchableKeyPath(key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 50 |
 51 |             return await key.search(in: models, for: query,strategy: strategy)
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[22/31] Compiling SearchAndSort AnySearchableKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:49:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 47 |         let stringer = StringConvertableStringifier<Key>()
 48 |         self.stringProducer = { model in
 49 |             return stringer.stringify(model[keyPath: key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 50 |         }
 51 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:53:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 51 |
 52 |         sorterProducer = { models , order in
 53 |             let sortKey = SortableKeyPath(key)
    |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 54 |             return await sortKey.sort(models , order: order)
 55 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:57:23: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 55 |         }
 56 |         searchProducer = { models , query,strategy in
 57 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 58 |
 59 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:70:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 68 |
 69 |         self.stringProducer = { model in
 70 |             return stringer.stringify(model[keyPath: key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 71 |         }
 72 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:74:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 72 |
 73 |         sorterProducer = { models , order in
 74 |             let sortKey = SortableKeyPath(key)
    |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 75 |             return await sortKey.sort(models , order: order)
 76 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:78:23: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 76 |         }
 77 |         searchProducer = { models , query,strategy in
 78 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 79 |
 80 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:93:29: warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 91 |         let stringer = key.stringer
 92 |         self.stringProducer = { model in
 93 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 94 |         }
 95 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:97:27: warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 95 |
 96 |         sorterProducer = { models , order in
 97 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'SearchKey.Type' in an isolated closure [#SendableMetatypes]
 98 |             return await sortKey.sort(models , order: order)
 99 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:115:29: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
113 |
114 |         self.stringProducer = { model in
115 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
116 |         }
117 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:119:27: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
117 |
118 |         sorterProducer = { models , order in
119 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
120 |             return await sortKey.sort(models , order: order)
121 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:123:23: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
121 |         }
122 |         searchProducer = { models , query,strategy in
123 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
124 |
125 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:141:29: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
139 |         let stringer = StringConvertableStringifier<SortKey>()
140 |         self.stringProducer = { model in
141 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
142 |         }
143 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:145:27: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
143 |
144 |         sorterProducer = { models , order in
145 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
146 |             return await sortKey.sort(models , order: order)
147 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:149:23: warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
147 |         }
148 |         searchProducer = { models , query,strategy in
149 |             let key = SearchableKeyPath( key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'SortKey.Type' in an isolated closure [#SendableMetatypes]
150 |
151 |             return await key.search(in: models, for: query,strategy: strategy)
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:168:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
166 |         let stringer = key.stringer
167 |         self.stringProducer = { model in
168 |             return stringer.stringify(model[keyPath: key.key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
169 |         }
170 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:172:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
170 |
171 |         sorterProducer = { models , order in
172 |             let sortKey = SortableKeyPath(key.key)
    |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
173 |             return await sortKey.sort(models , order: order)
174 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyKey.swift:179:26: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
177 |             //let key = SearchableKeyPath( key , stringifier: stringer)
178 |
179 |             return await key.search(in: models, for: query,strategy: strategy)
    |                          `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
180 |
181 |         }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableKey.swift:45:29: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 43 |         let stringer = StringConvertableStringifier<Key>()
 44 |         self.stringProducer = { model in
 45 |             return stringer.stringify( model[keyPath: key])
    |                             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 46 |         }
 47 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySearchableKey.swift:49:23: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 47 |
 48 |         searchProducer = { models , query,strategy in
 49 |             let key = SearchableKeyPath(key , stringifier: stringer)
    |                       `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 50 |
 51 |             return await key.search(in: models, for: query,strategy: strategy)
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[23/31] Emitting module SearchAndSort
[24/31] Compiling SearchAndSort KeyPath.swift
[25/31] Compiling SearchAndSort Logger.swift
[26/31] Compiling SearchAndSort Optional Extension.swift
[27/31] Compiling SearchAndSort Stringifier.swift
[28/31] Compiling SearchAndSort ValuePresentable.swift
[29/31] Compiling SearchAndSort BackgroundSearcher.swift
[30/31] Compiling SearchAndSort AnySortabletTitledKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortabletTitledKey.swift:22:26: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
20 |         self.title = key.title
21 |         self.sortFunc = { models, order in
22 |             return await key.sort(models, order: order)
   |                          `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
23 |         }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortabletTitledKey.swift:40:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
38 |         let sortableKey = SortableKeyPath(keyPath)
39 |         self.sortFunc = { models, order in
40 |             return await  sortableKey.sort(models, order: order)
   |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
41 |         }
42 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortabletTitledKey.swift:46:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
44 |         self.title = title
45 |         self.sortFunc = { models, order in
46 |             return await  key.sort(models, order: order)
   |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:28:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 26 |
 27 |         self.searchFunc = { models , query , strategy in
 28 |             await key.search(in: models, for: query, strategy: strategy)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 29 |         }
 30 |         self.sortFunc = { models , order in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:31:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 29 |         }
 30 |         self.sortFunc = { models , order in
 31 |             await key.sort(models, order: order)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 32 |         }
 33 |         self.stringifyFunc = { model in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:34:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 32 |         }
 33 |         self.stringifyFunc = { model in
 34 |             key.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 35 |         }
 36 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:64:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 62 |         self.searchFunc = { model , query , strategy in
 63 |
 64 |             await TitledKey.search(in: model, for: query, strategy: strategy)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.sortFunc = { model , order in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:67:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.sortFunc = { model , order in
 67 |             await TitledKey.sort( model, order: order)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 68 |         }
 69 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:71:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 69 |
 70 |         self.stringifyFunc = { model in
 71 |             TitledKey.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 72 |         }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:81:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 79 |         self.searchFunc = { model , query , strategy in
 80 |
 81 |             await TitledKey.search(in: model, for: query, strategy: strategy)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 82 |         }
 83 |         self.sortFunc = { model , order in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:84:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 82 |         }
 83 |         self.sortFunc = { model , order in
 84 |             await TitledKey.sort( model, order: order)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 85 |         }
 86 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:88:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 86 |
 87 |         self.stringifyFunc = { model in
 88 |             TitledKey.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 89 |         }
 90 |         self.title = title
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[31/31] Compiling SearchAndSort AnyTitledKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortabletTitledKey.swift:22:26: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
20 |         self.title = key.title
21 |         self.sortFunc = { models, order in
22 |             return await key.sort(models, order: order)
   |                          `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
23 |         }
24 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortabletTitledKey.swift:40:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
38 |         let sortableKey = SortableKeyPath(keyPath)
39 |         self.sortFunc = { models, order in
40 |             return await  sortableKey.sort(models, order: order)
   |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
41 |         }
42 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnySortabletTitledKey.swift:46:27: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
44 |         self.title = title
45 |         self.sortFunc = { models, order in
46 |             return await  key.sort(models, order: order)
   |                           `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
47 |         }
48 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:28:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 26 |
 27 |         self.searchFunc = { models , query , strategy in
 28 |             await key.search(in: models, for: query, strategy: strategy)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 29 |         }
 30 |         self.sortFunc = { models , order in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:31:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 29 |         }
 30 |         self.sortFunc = { models , order in
 31 |             await key.sort(models, order: order)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 32 |         }
 33 |         self.stringifyFunc = { model in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:34:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 32 |         }
 33 |         self.stringifyFunc = { model in
 34 |             key.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 35 |         }
 36 |     }
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:64:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 62 |         self.searchFunc = { model , query , strategy in
 63 |
 64 |             await TitledKey.search(in: model, for: query, strategy: strategy)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.sortFunc = { model , order in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:67:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 65 |         }
 66 |         self.sortFunc = { model , order in
 67 |             await TitledKey.sort( model, order: order)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 68 |         }
 69 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:71:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 69 |
 70 |         self.stringifyFunc = { model in
 71 |             TitledKey.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 72 |         }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:81:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 79 |         self.searchFunc = { model , query , strategy in
 80 |
 81 |             await TitledKey.search(in: model, for: query, strategy: strategy)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 82 |         }
 83 |         self.sortFunc = { model , order in
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:84:19: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 82 |         }
 83 |         self.sortFunc = { model , order in
 84 |             await TitledKey.sort( model, order: order)
    |                   `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 85 |         }
 86 |
/Users/admin/builder/spi-builder-workspace/Sources/SearchAndSort/Type Erasure/AnyTitledKey.swift:88:13: warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 86 |
 87 |         self.stringifyFunc = { model in
 88 |             TitledKey.stringify(model)
    |             `- warning: capture of non-Sendable type 'Key.Type' in an isolated closure [#SendableMetatypes]
 89 |         }
 90 |         self.title = title
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
Build complete! (7.19s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "mylogger",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mohammad-nej/MyLogger"
    }
  ],
  "manifest_display_name" : "SearchAndSort",
  "name" : "SearchAndSort",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "17.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "SearchAndSort",
      "targets" : [
        "SearchAndSort"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SearchAndSortTests",
      "module_type" : "SwiftTarget",
      "name" : "SearchAndSortTests",
      "path" : "Tests/SearchAndSortTests",
      "sources" : [
        "SearchAndSortTests.swift"
      ],
      "target_dependencies" : [
        "SearchAndSort"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SearchAndSort",
      "module_type" : "SwiftTarget",
      "name" : "SearchAndSort",
      "path" : "Sources/SearchAndSort",
      "product_dependencies" : [
        "MyLogger"
      ],
      "product_memberships" : [
        "SearchAndSort"
      ],
      "sources" : [
        "Extensions/KeyPath.swift",
        "Logger.swift",
        "Protocols/Optional Extension.swift",
        "Protocols/Searchable.swift",
        "Protocols/SearchableKeyProtocol.swift",
        "Protocols/SortableKeyPathProtocol.swift",
        "Protocols/Stringifier.swift",
        "Protocols/ValuePresentable.swift",
        "Search/BackgroundSearcher.swift",
        "Search/SearchableKeyPath.swift",
        "SearchAndSort.swift",
        "Sort/SortOrder.swift",
        "Sort/SortableKeyPath.swift",
        "Sort/Sorter.swift",
        "Stringifirers/Persian/PersianDateStringifier.swift",
        "Stringifirers/Persian/PersianDoubleStringifier.swift",
        "Stringifirers/Persian/PersianIntStringifier.swift",
        "Stringifirers/StringConvertableStringifier.swift",
        "TitledKey.swift",
        "Type Erasure/AnyKey.swift",
        "Type Erasure/AnySearchableKey.swift",
        "Type Erasure/AnySearchableTitledKey.swift",
        "Type Erasure/AnySortableKey.swift",
        "Type Erasure/AnySortabletTitledKey.swift",
        "Type Erasure/AnyTitledKey.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
Done.