The Swift Package Index logo.Swift Package Index

Build Information

Successful build of GRDB, reference v7.4.1 (3a6a83), with Swift 6.3 for Linux on 16 Apr 2026 03:11:06 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:basic-6.3-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[163/172] Compiling GRDB RemoveDuplicates.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[164/172] Compiling GRDB Trace.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[165/172] Compiling GRDB ValueReducer.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[166/172] Compiling GRDB SharedValueObservation.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[167/172] Compiling GRDB ValueObservation.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[168/172] Compiling GRDB ValueObservationScheduler.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[169/172] Compiling GRDB resource_bundle_accessor.swift
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:351:59: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
349 |         // open until we grab a write access, and compare the database versions.
350 |         databaseAccess.dbPool.asyncWALSnapshotTransaction { result in
351 |             let (isNotifying, databaseAccess) = self.lock.synchronized {
    |                                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
352 |                 (self.notificationCallbacks != nil, self.databaseAccess)
353 |             }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:367:32: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
365 |                         let db = try dbResult.get()
366 |
367 |                         switch self.trackingMode {
    |                                `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
368 |                         case let .constantRegion(regions):
369 |                             fetchedValue = try databaseAccess.fetch(db)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:383:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
381 |                         // a database dispatch queue longer than necessary.
382 |                         self.reduceQueue.async {
383 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
384 |                             guard isNotifying else { return /* Cancelled */ }
385 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:393:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
391 |                                 // Notify
392 |                                 self.scheduler.schedule {
393 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
394 |                                     guard let onChange else { return /* Cancelled */ }
395 |                                     onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:444:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
442 |
443 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
444 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
445 |             guard let events else { return /* Cancelled */ }
446 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:494:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
492 |                         // between transactions and notifications!
493 |                         self.reduceQueue.async {
494 |                             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
495 |                             guard isNotifying else { return /* Cancelled */ }
496 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:503:56: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
501 |                                 if let value {
502 |                                     self.scheduler.schedule {
503 |                                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
504 |                                         guard let onChange else { return /* Cancelled */ }
505 |                                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:511:37: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
509 |                                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
510 |                                 dbPool?.asyncWriteWithoutTransaction { writerDB in
511 |                                     self.stopDatabaseObservation(writerDB)
    |                                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
512 |                                 }
513 |                                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:590:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
588 |         // transaction to complete.
589 |         databaseAccess.dbPool.asyncRead { dbResult in
590 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
591 |             guard isNotifying else { return /* Cancelled */ }
592 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:615:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
613 |                 // a database dispatch queue longer than necessary.
614 |                 self.reduceQueue.async {
615 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
616 |                     guard isNotifying else { return /* Cancelled */ }
617 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:625:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
623 |                         // Notify
624 |                         self.scheduler.schedule {
625 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
626 |                             guard let onChange else { return /* Cancelled */ }
627 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:649:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
647 |     {
648 |         databaseAccess.dbPool.asyncWriteWithoutTransaction { writerDB in
649 |             let events = self.lock.synchronized { self.notificationCallbacks?.events }
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
650 |             guard let events else { return /* Cancelled */ }
651 |             events.databaseDidChange?()
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:681:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
679 |                     // between transactions and notifications!
680 |                     self.reduceQueue.async {
681 |                         let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
682 |                         guard isNotifying else { return /* Cancelled */ }
683 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:690:52: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
688 |                             if let value {
689 |                                 self.scheduler.schedule {
690 |                                     let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
691 |                                     guard let onChange else { return /* Cancelled */ }
692 |                                     onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:698:33: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
696 |                             let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
697 |                             dbPool?.asyncWriteWithoutTransaction { writerDB in
698 |                                 self.stopDatabaseObservation(writerDB)
    |                                 `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
699 |                             }
700 |                             self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:809:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
807 |     private func asyncFetch(databaseAccess: DatabaseAccess) {
808 |         databaseAccess.dbPool.asyncRead { [self] dbResult in
809 |             let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
810 |             guard isNotifying else { return /* Cancelled */ }
811 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:843:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
841 |                 let fetchedValue = try fetchResult.get()
842 |
843 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
844 |                 guard isNotifying else { return /* Cancelled */ }
845 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:851:40: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
849 |                 if let value {
850 |                     self.scheduler.schedule {
851 |                         let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                        `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
852 |                         guard let onChange else { return /* Cancelled */ }
853 |                         onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:859:21: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
857 |                 let dbPool = self.lock.synchronized { self.databaseAccess?.dbPool }
858 |                 dbPool?.asyncWriteWithoutTransaction { writerDB in
859 |                     self.stopDatabaseObservation(writerDB)
    |                     `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
860 |                 }
861 |                 self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:893:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
891 |         guard let dbPool else { return /* Failed */ }
892 |         dbPool.asyncWriteWithoutTransaction { db in
893 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
894 |         }
895 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueConcurrentObserver.swift:899:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
897 |     func notifyError(_ error: Error) {
898 |         scheduler.schedule {
899 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
900 |                 let events = self.notificationCallbacks?.events
901 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:255:47: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
253 |             do {
254 |                 // Fetch & Start observing the database
255 |                 guard let _fetchedValue = try self.fetchAndStartObservation(db) else {
    |                                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
256 |                     return /* Cancelled */
257 |                 }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:269:39: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
267 |                 // between transactions and notifications!
268 |                 self.reduceQueue.async {
269 |                     let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                       `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
270 |                     guard isNotifying else { return /* Cancelled */ }
271 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:279:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
277 |                         // Notify
278 |                         self.scheduler.schedule {
279 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
280 |                             guard let onChange else { return /* Cancelled */ }
281 |                             onChange(initialValue)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:286:29: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
284 |                         let writer = self.lock.synchronized { self.databaseAccess?.writer }
285 |                         writer?.asyncWriteWithoutTransaction { db in
286 |                             self.stopDatabaseObservation(db)
    |                             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
287 |                         }
288 |                         self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:413:35: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
411 |             // transactions and notifications!
412 |             reduceQueue.async {
413 |                 let isNotifying = self.lock.synchronized { self.notificationCallbacks != nil }
    |                                   `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
414 |                 guard isNotifying else { return /* Cancelled */ }
415 |
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:422:44: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
420 |                     if let value {
421 |                         self.scheduler.schedule {
422 |                             let onChange = self.lock.synchronized { self.notificationCallbacks?.onChange }
    |                                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
423 |                             guard let onChange else { return /* Cancelled */ }
424 |                             onChange(value)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:430:25: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
428 |                     let writer = self.lock.synchronized { self.databaseAccess?.writer }
429 |                     writer?.asyncWriteWithoutTransaction { db in
430 |                         self.stopDatabaseObservation(db)
    |                         `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
431 |                     }
432 |                     self.notifyError(error)
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:468:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
466 |         guard let writer else { return /* Failed */ }
467 |         writer.asyncWriteWithoutTransaction { db in
468 |             self.stopDatabaseObservation(db)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
469 |         }
470 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/Observers/ValueWriteOnlyObserver.swift:474:26: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
472 |     func notifyError(_ error: Error) {
473 |         scheduler.schedule {
474 |             let events = self.lock.synchronized {
    |                          `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
475 |                 let events = self.notificationCallbacks?.events
476 |                 self.notificationCallbacks = nil
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/Map.swift:24:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
22 |     -> ValueObservation<ValueReducers.Map<Reducer, T>>
23 |     {
24 |         mapReducer { ValueReducers.Map($0, transform) }
   |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
25 |     }
26 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:23:43: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 21 |         nonisolated(unsafe) let predicate = predicate
 22 |
 23 |         return mapReducer { ValueReducers.RemoveDuplicates($0, predicate: predicate) }
    |                                           `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 24 |     }
 25 | }
/host/spi-builder-workspace/GRDB/ValueObservation/Reducers/RemoveDuplicates.swift:73:36: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 71 |     -> ValueObservation<ValueReducers.RemoveDuplicates<Reducer>>
 72 |     {
 73 |         mapReducer { ValueReducers.RemoveDuplicates($0, predicate: ==) }
    |                                    `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 74 |     }
 75 | }
/host/spi-builder-workspace/GRDB/ValueObservation/SharedValueObservation.swift:127:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
125 |     {
126 |         SharedValueObservation(scheduling: scheduler, extent: extent) { onError, onChange in
127 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
128 |         }
129 |     }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'R.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:42:28: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 40 |             requiresWriteAccess: requiresWriteAccess,
 41 |             trackingMode: trackingMode,
 42 |             makeReducer: { transform(makeReducer()) })
    |                            `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
 43 |     }
 44 | }
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:239:31: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
237 |         self
238 |             .mapReducer { reducer in
239 |                 ValueReducers.Trace(
    |                               `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
240 |                     base: reducer,
241 |                     // Adding the willFetch handler to the reducer is handy: we
/host/spi-builder-workspace/GRDB/ValueObservation/ValueObservation.swift:358:13: warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
356 |     {
357 |         AsyncValueObservation(bufferingPolicy: bufferingPolicy) { onError, onChange in
358 |             self.start(in: reader, scheduling: scheduler, onError: onError, onChange: onChange)
    |             `- warning: capture of non-Sendable type 'Reducer.Type' in an isolated closure [#SendableMetatypes]
359 |         }
360 |     }
[#SendableMetatypes]: <https://docs.swift.org/compiler/documentation/diagnostics/sendable-metatypes>
[170/173] Wrapping AST for GRDB for debugging
[171/173] Write Objects.LinkFileList
[172/173] Linking libGRDB-dynamic.so
Build complete! (37.14s)
Build complete.
{
  "default_localization" : "en",
  "dependencies" : [
  ],
  "manifest_display_name" : "GRDB",
  "name" : "GRDB",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "7.0"
    }
  ],
  "products" : [
    {
      "name" : "GRDBSQLite",
      "targets" : [
        "GRDBSQLite"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "GRDB",
      "targets" : [
        "GRDB"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "GRDB-dynamic",
      "targets" : [
        "GRDB"
      ],
      "type" : {
        "library" : [
          "dynamic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "6"
  ],
  "targets" : [
    {
      "c99name" : "GRDBTests",
      "module_type" : "SwiftTarget",
      "name" : "GRDBTests",
      "path" : "Tests",
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Tests/GRDBTests/Betty.jpeg",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Tests/GRDBTests/InflectionsTests.json",
          "rule" : {
            "copy" : {
            }
          }
        },
        {
          "path" : "/host/spi-builder-workspace/Tests/GRDBTests/Issue1383.sqlite",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "CombineExpectations/PublisherExpectation.swift",
        "CombineExpectations/PublisherExpectations/AvailableElements.swift",
        "CombineExpectations/PublisherExpectations/Finished.swift",
        "CombineExpectations/PublisherExpectations/Inverted.swift",
        "CombineExpectations/PublisherExpectations/Map.swift",
        "CombineExpectations/PublisherExpectations/Next.swift",
        "CombineExpectations/PublisherExpectations/NextOne.swift",
        "CombineExpectations/PublisherExpectations/Prefix.swift",
        "CombineExpectations/PublisherExpectations/Recording.swift",
        "CombineExpectations/Recorder.swift",
        "CombineExpectations/RecordingError.swift",
        "GRDBCombineTests/DatabaseReaderReadPublisherTests.swift",
        "GRDBCombineTests/DatabaseRegionObservationPublisherTests.swift",
        "GRDBCombineTests/DatabaseWriterWritePublisherTests.swift",
        "GRDBCombineTests/Support.swift",
        "GRDBCombineTests/ValueObservationPublisherTests.swift",
        "GRDBTests/AnyCursorTests.swift",
        "GRDBTests/AssociationAggregateTests.swift",
        "GRDBTests/AssociationBelongsToDecodableRecordTests.swift",
        "GRDBTests/AssociationBelongsToFetchableRecordTests.swift",
        "GRDBTests/AssociationBelongsToRowScopeTests.swift",
        "GRDBTests/AssociationBelongsToSQLDerivationTests.swift",
        "GRDBTests/AssociationBelongsToSQLTests.swift",
        "GRDBTests/AssociationChainRowScopesTests.swift",
        "GRDBTests/AssociationChainSQLTests.swift",
        "GRDBTests/AssociationHasManyOrderingTests.swift",
        "GRDBTests/AssociationHasManyRowScopeTests.swift",
        "GRDBTests/AssociationHasManySQLTests.swift",
        "GRDBTests/AssociationHasManyThroughOrderingTests.swift",
        "GRDBTests/AssociationHasManyThroughRowScopeTests.swift",
        "GRDBTests/AssociationHasManyThroughSQLTests.swift",
        "GRDBTests/AssociationHasOneSQLDerivationTests.swift",
        "GRDBTests/AssociationHasOneSQLTests.swift",
        "GRDBTests/AssociationHasOneThroughDecodableRecordTests.swift",
        "GRDBTests/AssociationHasOneThroughFetchableRecordTests.swift",
        "GRDBTests/AssociationHasOneThroughRowScopeTests.swift",
        "GRDBTests/AssociationHasOneThroughSQLDerivationTests.swift",
        "GRDBTests/AssociationHasOneThroughSQLTests.swift",
        "GRDBTests/AssociationParallelDecodableRecordTests.swift",
        "GRDBTests/AssociationParallelRowScopesTests.swift",
        "GRDBTests/AssociationParallelSQLTests.swift",
        "GRDBTests/AssociationPrefetchingCodableRecordTests.swift",
        "GRDBTests/AssociationPrefetchingFetchableRecordTests.swift",
        "GRDBTests/AssociationPrefetchingObservationTests.swift",
        "GRDBTests/AssociationPrefetchingRelationTests.swift",
        "GRDBTests/AssociationPrefetchingRowTests.swift",
        "GRDBTests/AssociationPrefetchingSQLTests.swift",
        "GRDBTests/AssociationRowScopeSearchTests.swift",
        "GRDBTests/AssociationTableAliasTestsSQLTests.swift",
        "GRDBTests/AsyncSemaphore.swift",
        "GRDBTests/BackupTestCase.swift",
        "GRDBTests/CGFloatTests.swift",
        "GRDBTests/CaseInsensitiveIdentifierTests.swift",
        "GRDBTests/ColumnExpressionTests.swift",
        "GRDBTests/ColumnInfoTests.swift",
        "GRDBTests/CommonTableExpressionTests.swift",
        "GRDBTests/CompilationProtocolTests.swift",
        "GRDBTests/CompilationSubClassTests.swift",
        "GRDBTests/CursorTests.swift",
        "GRDBTests/DataMemoryTests.swift",
        "GRDBTests/DatabaseAbortedTransactionTests.swift",
        "GRDBTests/DatabaseAfterNextTransactionCommitTests.swift",
        "GRDBTests/DatabaseAggregateTests.swift",
        "GRDBTests/DatabaseCollationTests.swift",
        "GRDBTests/DatabaseColumnEncodingStrategyTests.swift",
        "GRDBTests/DatabaseConfigurationTests.swift",
        "GRDBTests/DatabaseCursorTests.swift",
        "GRDBTests/DatabaseDataDecodingStrategyTests.swift",
        "GRDBTests/DatabaseDataEncodingStrategyTests.swift",
        "GRDBTests/DatabaseDateDecodingStrategyTests.swift",
        "GRDBTests/DatabaseDateEncodingStrategyTests.swift",
        "GRDBTests/DatabaseDumpTests.swift",
        "GRDBTests/DatabaseErrorTests.swift",
        "GRDBTests/DatabaseFunctionTests.swift",
        "GRDBTests/DatabaseLogErrorTests.swift",
        "GRDBTests/DatabaseMigratorTests.swift",
        "GRDBTests/DatabasePoolBackupTests.swift",
        "GRDBTests/DatabasePoolCollationTests.swift",
        "GRDBTests/DatabasePoolConcurrencyTests.swift",
        "GRDBTests/DatabasePoolFunctionTests.swift",
        "GRDBTests/DatabasePoolReadOnlyTests.swift",
        "GRDBTests/DatabasePoolReleaseMemoryTests.swift",
        "GRDBTests/DatabasePoolSchemaCacheTests.swift",
        "GRDBTests/DatabasePoolTests.swift",
        "GRDBTests/DatabaseQueueBackupTests.swift",
        "GRDBTests/DatabaseQueueConcurrencyTests.swift",
        "GRDBTests/DatabaseQueueInMemoryCopyTests.swift",
        "GRDBTests/DatabaseQueueInMemoryTests.swift",
        "GRDBTests/DatabaseQueueReadOnlyTests.swift",
        "GRDBTests/DatabaseQueueReleaseMemoryTests.swift",
        "GRDBTests/DatabaseQueueSchemaCacheTests.swift",
        "GRDBTests/DatabaseQueueTemporaryCopyTests.swift",
        "GRDBTests/DatabaseQueueTests.swift",
        "GRDBTests/DatabaseReaderDumpTests.swift",
        "GRDBTests/DatabaseReaderTests.swift",
        "GRDBTests/DatabaseRegionObservationTests.swift",
        "GRDBTests/DatabaseRegionTests.swift",
        "GRDBTests/DatabaseSavepointTests.swift",
        "GRDBTests/DatabaseSnapshotPoolTests.swift",
        "GRDBTests/DatabaseSnapshotTests.swift",
        "GRDBTests/DatabaseSuspensionTests.swift",
        "GRDBTests/DatabaseTests.swift",
        "GRDBTests/DatabaseTimestampTests.swift",
        "GRDBTests/DatabaseTraceTests.swift",
        "GRDBTests/DatabaseUUIDEncodingStrategyTests.swift",
        "GRDBTests/DatabaseValueConversionErrorTests.swift",
        "GRDBTests/DatabaseValueConversionTests.swift",
        "GRDBTests/DatabaseValueConvertibleDecodableTests.swift",
        "GRDBTests/DatabaseValueConvertibleEncodableTests.swift",
        "GRDBTests/DatabaseValueConvertibleEscapingTests.swift",
        "GRDBTests/DatabaseValueConvertibleFetchTests.swift",
        "GRDBTests/DatabaseValueConvertibleSubclassTests.swift",
        "GRDBTests/DatabaseValueTests.swift",
        "GRDBTests/DatabaseWriterTests.swift",
        "GRDBTests/DerivableRequestTests.swift",
        "GRDBTests/DropFirstCursorTests.swift",
        "GRDBTests/DropWhileCursorTests.swift",
        "GRDBTests/EncryptionTests.swift",
        "GRDBTests/EnumeratedCursorTests.swift",
        "GRDBTests/FTS3PatternTests.swift",
        "GRDBTests/FTS3RecordTests.swift",
        "GRDBTests/FTS3TableBuilderTests.swift",
        "GRDBTests/FTS3TokenizerTests.swift",
        "GRDBTests/FTS4RecordTests.swift",
        "GRDBTests/FTS4TableBuilderTests.swift",
        "GRDBTests/FTS5CustomTokenizerTests.swift",
        "GRDBTests/FTS5PatternTests.swift",
        "GRDBTests/FTS5RecordTests.swift",
        "GRDBTests/FTS5TableBuilderTests.swift",
        "GRDBTests/FTS5TokenizerTests.swift",
        "GRDBTests/FTS5WrapperTokenizerTests.swift",
        "GRDBTests/FailureTestCase.swift",
        "GRDBTests/FetchRequestTests.swift",
        "GRDBTests/FetchableRecord+QueryInterfaceRequestTests.swift",
        "GRDBTests/FetchableRecordDecodableTests.swift",
        "GRDBTests/FetchableRecordTests.swift",
        "GRDBTests/FilterCursorTests.swift",
        "GRDBTests/FlattenCursorTests.swift",
        "GRDBTests/ForeignKeyDefinitionTests.swift",
        "GRDBTests/ForeignKeyInfoTests.swift",
        "GRDBTests/FoundationDataTests.swift",
        "GRDBTests/FoundationDateComponentsTests.swift",
        "GRDBTests/FoundationDateTests.swift",
        "GRDBTests/FoundationDecimalTests.swift",
        "GRDBTests/FoundationNSDataTests.swift",
        "GRDBTests/FoundationNSDateTests.swift",
        "GRDBTests/FoundationNSDecimalNumberTests.swift",
        "GRDBTests/FoundationNSNullTests.swift",
        "GRDBTests/FoundationNSNumberTests.swift",
        "GRDBTests/FoundationNSStringTests.swift",
        "GRDBTests/FoundationNSURLTests.swift",
        "GRDBTests/FoundationNSUUIDTests.swift",
        "GRDBTests/FoundationURLTests.swift",
        "GRDBTests/FoundationUUIDTests.swift",
        "GRDBTests/GRDBTestCase.swift",
        "GRDBTests/IndexInfoTests.swift",
        "GRDBTests/InflectionsTests.swift",
        "GRDBTests/JSONColumnTests.swift",
        "GRDBTests/JSONExpressionsTests.swift",
        "GRDBTests/JoinSupportTests.swift",
        "GRDBTests/MapCursorTests.swift",
        "GRDBTests/MutablePersistableRecordChangesTests.swift",
        "GRDBTests/MutablePersistableRecordEncodableTests.swift",
        "GRDBTests/MutablePersistableRecordPersistenceConflictPolicyTests.swift",
        "GRDBTests/MutablePersistableRecordTests.swift",
        "GRDBTests/Mutex.swift",
        "GRDBTests/NumericOverflowTests.swift",
        "GRDBTests/OrderedDictionaryTests.swift",
        "GRDBTests/PersistableRecordTests.swift",
        "GRDBTests/PoolTests.swift",
        "GRDBTests/PrefixCursorTests.swift",
        "GRDBTests/PrefixWhileCursorTests.swift",
        "GRDBTests/PrimaryKeyInfoTests.swift",
        "GRDBTests/QueryInterfaceExpressionsTests.swift",
        "GRDBTests/QueryInterfaceExtensibilityTests.swift",
        "GRDBTests/QueryInterfacePromiseTests.swift",
        "GRDBTests/QueryInterfaceRequestTests.swift",
        "GRDBTests/RawRepresentable+DatabaseValueConvertibleTests.swift",
        "GRDBTests/Record+QueryInterfaceRequestTests.swift",
        "GRDBTests/RecordEditedTests.swift",
        "GRDBTests/RecordInitializersTests.swift",
        "GRDBTests/RecordMinimalNonOptionalPrimaryKeySingleTests.swift",
        "GRDBTests/RecordMinimalPrimaryKeyRowIDTests.swift",
        "GRDBTests/RecordMinimalPrimaryKeySingleTests.swift",
        "GRDBTests/RecordPersistenceConflictPolicy.swift",
        "GRDBTests/RecordPrimaryKeyHiddenRowIDTests.swift",
        "GRDBTests/RecordPrimaryKeyMultipleTests.swift",
        "GRDBTests/RecordPrimaryKeyNoneTests.swift",
        "GRDBTests/RecordPrimaryKeyRowIDTests.swift",
        "GRDBTests/RecordPrimaryKeySingleTests.swift",
        "GRDBTests/RecordPrimaryKeySingleWithReplaceConflictResolutionTests.swift",
        "GRDBTests/RecordSubClassTests.swift",
        "GRDBTests/RecordUniqueIndexTests.swift",
        "GRDBTests/RecordWithColumnNameManglingTests.swift",
        "GRDBTests/ResultCodeTests.swift",
        "GRDBTests/Row+FoundationTests.swift",
        "GRDBTests/RowAdapterTests.swift",
        "GRDBTests/RowCopiedFromStatementTests.swift",
        "GRDBTests/RowFetchTests.swift",
        "GRDBTests/RowFromDictionaryLiteralTests.swift",
        "GRDBTests/RowFromDictionaryTests.swift",
        "GRDBTests/RowFromStatementTests.swift",
        "GRDBTests/RowTestCase.swift",
        "GRDBTests/SQLExpressionIsConstantTests.swift",
        "GRDBTests/SQLExpressionLiteralTests.swift",
        "GRDBTests/SQLIdentifyingColumnsTests.swift",
        "GRDBTests/SQLLiteralTests.swift",
        "GRDBTests/SQLRequestTests.swift",
        "GRDBTests/SchedulingWatchdogTests.swift",
        "GRDBTests/SelectStatementTests.swift",
        "GRDBTests/SharedValueObservationTests.swift",
        "GRDBTests/SingletonRecordTest.swift",
        "GRDBTests/SingletonUserDefaultsTest.swift",
        "GRDBTests/StatementArguments+FoundationTests.swift",
        "GRDBTests/StatementArgumentsTests.swift",
        "GRDBTests/StatementColumnConvertibleFetchTests.swift",
        "GRDBTests/TableDefinitionTests.swift",
        "GRDBTests/TableRecord+QueryInterfaceRequestTests.swift",
        "GRDBTests/TableRecordDeleteTests.swift",
        "GRDBTests/TableRecordTests.swift",
        "GRDBTests/TableRecordUpdateTests.swift",
        "GRDBTests/TableTests.swift",
        "GRDBTests/TransactionDateTests.swift",
        "GRDBTests/TransactionObserverSavepointsTests.swift",
        "GRDBTests/TransactionObserverTests.swift",
        "GRDBTests/TruncateOptimizationTests.swift",
        "GRDBTests/UpdateStatementTests.swift",
        "GRDBTests/UtilsTests.swift",
        "GRDBTests/ValueObservationCountTests.swift",
        "GRDBTests/ValueObservationDatabaseValueConvertibleTests.swift",
        "GRDBTests/ValueObservationFetchTests.swift",
        "GRDBTests/ValueObservationMapTests.swift",
        "GRDBTests/ValueObservationPrintTests.swift",
        "GRDBTests/ValueObservationQueryInterfaceRequestTests.swift",
        "GRDBTests/ValueObservationReadonlyTests.swift",
        "GRDBTests/ValueObservationRecordTests.swift",
        "GRDBTests/ValueObservationRecorder.swift",
        "GRDBTests/ValueObservationRecorderTests.swift",
        "GRDBTests/ValueObservationRegionRecordingTests.swift",
        "GRDBTests/ValueObservationRowTests.swift",
        "GRDBTests/ValueObservationTests.swift",
        "GRDBTests/VirtualTableModuleTests.swift"
      ],
      "target_dependencies" : [
        "GRDB"
      ],
      "type" : "test"
    },
    {
      "c99name" : "GRDBSQLite",
      "module_type" : "SystemLibraryTarget",
      "name" : "GRDBSQLite",
      "path" : "Sources/GRDBSQLite",
      "product_memberships" : [
        "GRDBSQLite",
        "GRDB",
        "GRDB-dynamic"
      ],
      "sources" : [
      ],
      "type" : "system-target"
    },
    {
      "c99name" : "GRDB",
      "module_type" : "SwiftTarget",
      "name" : "GRDB",
      "path" : "GRDB",
      "product_memberships" : [
        "GRDB",
        "GRDB-dynamic"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/GRDB/PrivacyInfo.xcprivacy",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "Core/Configuration.swift",
        "Core/Cursor.swift",
        "Core/Database+Schema.swift",
        "Core/Database+Statements.swift",
        "Core/Database.swift",
        "Core/DatabaseBackupProgress.swift",
        "Core/DatabaseCollation.swift",
        "Core/DatabaseError.swift",
        "Core/DatabaseFunction.swift",
        "Core/DatabasePool.swift",
        "Core/DatabasePublishers.swift",
        "Core/DatabaseQueue.swift",
        "Core/DatabaseReader.swift",
        "Core/DatabaseRegion.swift",
        "Core/DatabaseRegionObservation.swift",
        "Core/DatabaseSchemaCache.swift",
        "Core/DatabaseSnapshot.swift",
        "Core/DatabaseSnapshotPool.swift",
        "Core/DatabaseValue.swift",
        "Core/DatabaseValueConvertible.swift",
        "Core/DatabaseWriter.swift",
        "Core/FetchRequest.swift",
        "Core/Row.swift",
        "Core/RowAdapter.swift",
        "Core/RowDecodingError.swift",
        "Core/SQL.swift",
        "Core/SQLInterpolation.swift",
        "Core/SQLRequest.swift",
        "Core/SchedulingWatchdog.swift",
        "Core/SerializedDatabase.swift",
        "Core/Statement.swift",
        "Core/StatementAuthorizer.swift",
        "Core/StatementColumnConvertible.swift",
        "Core/Support/CoreGraphics/CGFloat.swift",
        "Core/Support/Foundation/Data.swift",
        "Core/Support/Foundation/DatabaseDateComponents.swift",
        "Core/Support/Foundation/DatabaseValueConvertible+ReferenceConvertible.swift",
        "Core/Support/Foundation/Date.swift",
        "Core/Support/Foundation/Decimal.swift",
        "Core/Support/Foundation/NSData.swift",
        "Core/Support/Foundation/NSNull.swift",
        "Core/Support/Foundation/NSNumber.swift",
        "Core/Support/Foundation/NSString.swift",
        "Core/Support/Foundation/SQLiteDateParser.swift",
        "Core/Support/Foundation/URL.swift",
        "Core/Support/Foundation/UUID.swift",
        "Core/Support/StandardLibrary/DatabaseValueConvertible+Decodable.swift",
        "Core/Support/StandardLibrary/DatabaseValueConvertible+Encodable.swift",
        "Core/Support/StandardLibrary/DatabaseValueConvertible+RawRepresentable.swift",
        "Core/Support/StandardLibrary/JSONRequiredEncoder.swift",
        "Core/Support/StandardLibrary/Optional.swift",
        "Core/Support/StandardLibrary/StandardLibrary.swift",
        "Core/TransactionClock.swift",
        "Core/TransactionObserver.swift",
        "Core/WALSnapshot.swift",
        "Core/WALSnapshotTransaction.swift",
        "Dump/Database+Dump.swift",
        "Dump/DatabaseReader+dump.swift",
        "Dump/DumpFormat.swift",
        "Dump/DumpFormats/DebugDumpFormat.swift",
        "Dump/DumpFormats/JSONDumpFormat.swift",
        "Dump/DumpFormats/LineDumpFormat.swift",
        "Dump/DumpFormats/ListDumpFormat.swift",
        "Dump/DumpFormats/QuoteDumpFormat.swift",
        "FTS/FTS3.swift",
        "FTS/FTS3Pattern.swift",
        "FTS/FTS3TokenizerDescriptor.swift",
        "FTS/FTS4.swift",
        "FTS/FTS5.swift",
        "FTS/FTS5CustomTokenizer.swift",
        "FTS/FTS5Pattern.swift",
        "FTS/FTS5Tokenizer.swift",
        "FTS/FTS5TokenizerDescriptor.swift",
        "FTS/FTS5WrapperTokenizer.swift",
        "Fixits.swift",
        "JSON/JSONColumn.swift",
        "JSON/SQLJSONExpressible.swift",
        "JSON/SQLJSONFunctions.swift",
        "Migration/DatabaseMigrator.swift",
        "Migration/Migration.swift",
        "QueryInterface/FTS3+QueryInterface.swift",
        "QueryInterface/FTS5+QueryInterface.swift",
        "QueryInterface/ForeignKey.swift",
        "QueryInterface/Request/Association/Association.swift",
        "QueryInterface/Request/Association/AssociationAggregate.swift",
        "QueryInterface/Request/Association/BelongsToAssociation.swift",
        "QueryInterface/Request/Association/HasManyAssociation.swift",
        "QueryInterface/Request/Association/HasManyThroughAssociation.swift",
        "QueryInterface/Request/Association/HasOneAssociation.swift",
        "QueryInterface/Request/Association/HasOneThroughAssociation.swift",
        "QueryInterface/Request/Association/JoinAssociation.swift",
        "QueryInterface/Request/CommonTableExpression.swift",
        "QueryInterface/Request/QueryInterfaceRequest.swift",
        "QueryInterface/Request/RequestProtocols.swift",
        "QueryInterface/SQL/Column.swift",
        "QueryInterface/SQL/DatabasePromise.swift",
        "QueryInterface/SQL/SQLAssociation.swift",
        "QueryInterface/SQL/SQLCollection.swift",
        "QueryInterface/SQL/SQLExpression.swift",
        "QueryInterface/SQL/SQLForeignKeyRequest.swift",
        "QueryInterface/SQL/SQLFunctions.swift",
        "QueryInterface/SQL/SQLOperators.swift",
        "QueryInterface/SQL/SQLOrdering.swift",
        "QueryInterface/SQL/SQLRelation.swift",
        "QueryInterface/SQL/SQLSelection.swift",
        "QueryInterface/SQL/SQLSubquery.swift",
        "QueryInterface/SQL/Table.swift",
        "QueryInterface/SQLGeneration/SQLColumnGenerator.swift",
        "QueryInterface/SQLGeneration/SQLGenerationContext.swift",
        "QueryInterface/SQLGeneration/SQLIndexGenerator.swift",
        "QueryInterface/SQLGeneration/SQLQueryGenerator.swift",
        "QueryInterface/SQLGeneration/SQLTableAlterationGenerator.swift",
        "QueryInterface/SQLGeneration/SQLTableGenerator.swift",
        "QueryInterface/SQLInterpolation+QueryInterface.swift",
        "QueryInterface/Schema/ColumnDefinition.swift",
        "QueryInterface/Schema/Database+SchemaDefinition.swift",
        "QueryInterface/Schema/ForeignKeyDefinition.swift",
        "QueryInterface/Schema/IndexDefinition.swift",
        "QueryInterface/Schema/TableAlteration.swift",
        "QueryInterface/Schema/TableDefinition.swift",
        "QueryInterface/Schema/VirtualTableModule.swift",
        "QueryInterface/TableRecord+Association.swift",
        "QueryInterface/TableRecord+QueryInterfaceRequest.swift",
        "Record/EncodableRecord+Encodable.swift",
        "Record/EncodableRecord.swift",
        "Record/FetchableRecord+Decodable.swift",
        "Record/FetchableRecord+TableRecord.swift",
        "Record/FetchableRecord.swift",
        "Record/MutablePersistableRecord+DAO.swift",
        "Record/MutablePersistableRecord+Delete.swift",
        "Record/MutablePersistableRecord+Insert.swift",
        "Record/MutablePersistableRecord+Save.swift",
        "Record/MutablePersistableRecord+Update.swift",
        "Record/MutablePersistableRecord+Upsert.swift",
        "Record/MutablePersistableRecord.swift",
        "Record/PersistableRecord+Insert.swift",
        "Record/PersistableRecord+Save.swift",
        "Record/PersistableRecord+Upsert.swift",
        "Record/PersistableRecord.swift",
        "Record/Record.swift",
        "Record/TableRecord.swift",
        "Utils/CaseInsensitiveIdentifier.swift",
        "Utils/Inflections+English.swift",
        "Utils/Inflections.swift",
        "Utils/Mutex.swift",
        "Utils/OnDemandFuture.swift",
        "Utils/OrderedDictionary.swift",
        "Utils/Pool.swift",
        "Utils/ReadWriteLock.swift",
        "Utils/ReceiveValuesOn.swift",
        "Utils/Refinable.swift",
        "Utils/Utils.swift",
        "ValueObservation/DatabaseCancellable.swift",
        "ValueObservation/Observers/ValueConcurrentObserver.swift",
        "ValueObservation/Observers/ValueWriteOnlyObserver.swift",
        "ValueObservation/Reducers/Fetch.swift",
        "ValueObservation/Reducers/Map.swift",
        "ValueObservation/Reducers/RemoveDuplicates.swift",
        "ValueObservation/Reducers/Trace.swift",
        "ValueObservation/Reducers/ValueReducer.swift",
        "ValueObservation/SharedValueObservation.swift",
        "ValueObservation/ValueObservation.swift",
        "ValueObservation/ValueObservationScheduler.swift"
      ],
      "target_dependencies" : [
        "GRDBSQLite"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
basic-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:5a7d791d2ead8a924b1292cb31bf3288eabcfe8880e0b005b00b45b71a5bc36a
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:basic-6.3-latest
Done.