The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of swift-filter, reference 2.1.0 (dee814), with Swift 6.1 for macOS (SPM) on 28 Apr 2025 10:27:48 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/roanutil/swift-filter.git
Reference: 2.1.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/roanutil/swift-filter
 * tag               2.1.0      -> FETCH_HEAD
HEAD is now at dee8145 Merge pull request #5 from roanutil/sendable-closures
Cloned https://github.com/roanutil/swift-filter.git
Revision (git rev-parse @):
dee81459d5e6659422bb5f8de9bdf44f55eb18cb
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/roanutil/swift-filter.git at 2.1.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "swift-filter",
      "name": "swift-filter",
      "url": "https://github.com/roanutil/swift-filter.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-filter",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/roanutil/swift-filter.git
[1/1122] Fetching swift-filter
Fetched https://github.com/roanutil/swift-filter.git from cache (0.78s)
Creating working copy for https://github.com/roanutil/swift-filter.git
Working copy of https://github.com/roanutil/swift-filter.git resolved at 2.1.0 (dee8145)
warning: '.resolve-product-dependencies': dependency 'swift-filter' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/roanutil/swift-filter.git
https://github.com/roanutil/swift-filter.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "swift-filter",
  "name" : "swift-filter",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Filter",
      "targets" : [
        "Filter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "FilterClosure",
      "targets" : [
        "FilterClosure"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "FilterNSPredicate",
      "targets" : [
        "FilterNSPredicate"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FilterNSPredicateTests",
      "module_type" : "SwiftTarget",
      "name" : "FilterNSPredicateTests",
      "path" : "Tests/FilterNSPredicateTests",
      "sources" : [
        "ComparableFilterNSPredicateTests.swift",
        "EquatableFilterNSPredicateTests.swift",
        "NSPredicate+ClosureHelper.swift"
      ],
      "target_dependencies" : [
        "FilterNSPredicate"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FilterNSPredicate",
      "module_type" : "SwiftTarget",
      "name" : "FilterNSPredicate",
      "path" : "Sources/FilterNSPredicate",
      "product_memberships" : [
        "FilterNSPredicate"
      ],
      "sources" : [
        "NSExpression+ComparableOperators.swift",
        "NSExpression+EquatableOperators.swift",
        "NSPredicate+AnyComparablePredicate.swift",
        "NSPredicate+AnyEquatablePredicate.swift",
        "NSPredicate+CompoundOperators.swift",
        "NSPredicate+OptionalAnyComparablePredicate.swift",
        "NSPredicate+OptionalAnyEquatablePredicate.swift"
      ],
      "target_dependencies" : [
        "Filter"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FilterClosureTests",
      "module_type" : "SwiftTarget",
      "name" : "FilterClosureTests",
      "path" : "Tests/FilterClosureTests",
      "sources" : [
        "ComparableFilterClosureTests.swift",
        "ComparableFilterSendableClosureTests.swift",
        "EquatableFilterClosureTests.swift",
        "EquatableFilterSendableClosureTests.swift"
      ],
      "target_dependencies" : [
        "FilterClosure"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FilterClosure",
      "module_type" : "SwiftTarget",
      "name" : "FilterClosure",
      "path" : "Sources/FilterClosure",
      "product_memberships" : [
        "FilterClosure"
      ],
      "sources" : [
        "Closure+ComparablePredicate.swift",
        "Closure+EquatablePredicate.swift",
        "Closure+OptionalComparablePredicate.swift",
        "Closure+OptionalEquatablePredicate.swift",
        "Closure.swift",
        "SendableClosure+ComparablePredicate.swift",
        "SendableClosure+EquatablePredicate.swift",
        "SendableClosure+OptionalComparablePredicate.swift",
        "SendableClosure+OptionalEquatablePredicate.swift",
        "SendableClosure.swift"
      ],
      "target_dependencies" : [
        "Filter"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Filter",
      "module_type" : "SwiftTarget",
      "name" : "Filter",
      "path" : "Sources/Filter",
      "product_memberships" : [
        "Filter",
        "FilterClosure",
        "FilterNSPredicate"
      ],
      "sources" : [
        "Comparable/AnyComparablePredicate.swift",
        "Comparable/ComparableFilter.swift",
        "Comparable/ComparablePredicate.swift",
        "Comparable/OptionalAnyComparablePredicate.swift",
        "Comparable/OptionalComparablePredicate.swift",
        "Equatable/AnyEquatablePredicate.swift",
        "Equatable/EquatableFilter.swift",
        "Equatable/EquatablePredicate.swift",
        "Equatable/OptionalAnyEquatablePredicate.swift",
        "Equatable/OptionalEquatablePredicate.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/4] Write sources
[3/4] Write swift-version-2F0A5646E1D333AE.txt
[5/14] Compiling Filter EquatableFilter.swift
[6/14] Compiling Filter AnyEquatablePredicate.swift
[7/15] Compiling Filter OptionalAnyEquatablePredicate.swift
[8/15] Compiling Filter EquatablePredicate.swift
[9/15] Compiling Filter OptionalComparablePredicate.swift
[10/15] Compiling Filter ComparablePredicate.swift
[11/15] Compiling Filter OptionalAnyComparablePredicate.swift
[12/15] Compiling Filter ComparableFilter.swift
[13/15] Emitting module Filter
[14/15] Compiling Filter AnyComparablePredicate.swift
[15/15] Compiling Filter OptionalEquatablePredicate.swift
[16/33] Compiling FilterNSPredicate NSPredicate+OptionalAnyEquatablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter.Optional
14 |     ///
[17/33] Compiling FilterClosure SendableClosure+OptionalEquatablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+OptionalEquatablePredicate.swift:22:50: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
20 |         case let .orNil(subFilter):
21 |             return { value in
22 |                 guard let value = value[keyPath: keyPath] else { return true }
   |                                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
23 |                 return Closure<Value, Value>.build(from: subFilter)(value)
24 |             }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+OptionalEquatablePredicate.swift:27:50: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
25 |         case let .notNil(subFilter):
26 |             return { value in
27 |                 guard let value = value[keyPath: keyPath] else { return false }
   |                                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |                 return Closure<Value, Value>.build(from: subFilter)(value)
29 |             }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+OptionalEquatablePredicate.swift:31:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
29 |             }
30 |         case .isNil:
31 |             return { $0[keyPath: keyPath] == nil }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
32 |         }
33 |     }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
[18/33] Compiling FilterClosure SendableClosure+OptionalComparablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+OptionalComparablePredicate.swift:23:50: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
21 |         case let .orNil(subFilter):
22 |             return { value in
23 |                 guard let value = value[keyPath: keyPath] else { return true }
   |                                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |                 return Closure<Value, Value>.build(from: subFilter)(value)
25 |             }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+OptionalComparablePredicate.swift:28:50: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
26 |         case let .notNil(subFilter):
27 |             return { value in
28 |                 guard let value = value[keyPath: keyPath] else { return false }
   |                                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
29 |                 return Closure<Value, Value>.build(from: subFilter)(value)
30 |             }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+OptionalComparablePredicate.swift:32:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
30 |             }
31 |         case .isNil:
32 |             return { $0[keyPath: keyPath] == nil }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value?>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
33 |         }
34 |     }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
[19/34] Compiling FilterClosure SendableClosure+EquatablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+EquatablePredicate.swift:21:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
19 |         switch filter {
20 |         case let .equalTo(requiredValue):
21 |             return { $0[keyPath: keyPath] == requiredValue }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
22 |         case .none:
23 |             return { _ in true }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
[20/34] Compiling FilterClosure Closure.swift
[21/34] Compiling FilterClosure Closure+OptionalEquatablePredicate.swift
[22/34] Compiling FilterClosure Closure+EquatablePredicate.swift
[23/34] Compiling FilterClosure Closure+OptionalComparablePredicate.swift
[24/34] Compiling FilterClosure Closure+ComparablePredicate.swift
[25/34] Compiling FilterClosure SendableClosure+ComparablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+ComparablePredicate.swift:23:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
21 |         switch filter {
22 |         case let .lessThan(bound):
23 |             return { $0[keyPath: keyPath] < bound }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
24 |         case let .lessThanOrEqualTo(bound):
25 |             return { $0[keyPath: keyPath] <= bound }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+ComparablePredicate.swift:25:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
23 |             return { $0[keyPath: keyPath] < bound }
24 |         case let .lessThanOrEqualTo(bound):
25 |             return { $0[keyPath: keyPath] <= bound }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
26 |         case let .greaterThan(bound):
27 |             return { $0[keyPath: keyPath] > bound }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+ComparablePredicate.swift:27:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
25 |             return { $0[keyPath: keyPath] <= bound }
26 |         case let .greaterThan(bound):
27 |             return { $0[keyPath: keyPath] > bound }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
28 |         case let .greaterThanOrEqualTo(bound):
29 |             return { $0[keyPath: keyPath] >= bound }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
/Users/admin/builder/spi-builder-workspace/Sources/FilterClosure/SendableClosure+ComparablePredicate.swift:29:34: warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
27 |             return { $0[keyPath: keyPath] > bound }
28 |         case let .greaterThanOrEqualTo(bound):
29 |             return { $0[keyPath: keyPath] >= bound }
   |                                  `- warning: capture of 'keyPath' with non-sendable type 'KeyPath<Root, Value>' in a '@Sendable' closure; this is an error in the Swift 6 language mode
30 |         case .none:
31 |             return { _ in true }
Swift.KeyPath:1:14: note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
1 | public class KeyPath<Root, Value> : PartialKeyPath<Root> {
  |              `- note: generic class 'KeyPath' does not conform to the 'Sendable' protocol
2 |     @objc deinit
3 | }
[26/34] Emitting module FilterClosure
[27/34] Compiling FilterNSPredicate NSPredicate+OptionalAnyComparablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyComparablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a ComparableFilter.Optional
14 |     ///
[28/34] Compiling FilterNSPredicate NSPredicate+AnyComparablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyComparablePredicate.swift:14:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
12 | // swiftlint:disable cyclomatic_complexity
13 |
14 | extension NSPredicate: AnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
15 |     /// Creates a NSPredicate from a ComparableFilter
16 |     ///
[29/34] Compiling FilterNSPredicate NSPredicate+CompoundOperators.swift
[30/34] Emitting module FilterNSPredicate
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyComparablePredicate.swift:14:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
12 | // swiftlint:disable cyclomatic_complexity
13 |
14 | extension NSPredicate: AnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
15 |     /// Creates a NSPredicate from a ComparableFilter
16 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: AnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter
14 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyComparablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a ComparableFilter.Optional
14 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter.Optional
14 |     ///
[31/34] Compiling FilterNSPredicate NSPredicate+AnyEquatablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: AnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter
14 |     ///
[32/34] Compiling FilterNSPredicate NSExpression+ComparableOperators.swift
[33/34] Compiling FilterNSPredicate NSExpression+EquatableOperators.swift
[34/34] Compiling FilterClosure SendableClosure.swift
Build complete! (7.49s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "swift-filter",
  "name" : "swift-filter",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Filter",
      "targets" : [
        "Filter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "FilterClosure",
      "targets" : [
        "FilterClosure"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "FilterNSPredicate",
      "targets" : [
        "FilterNSPredicate"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FilterNSPredicateTests",
      "module_type" : "SwiftTarget",
      "name" : "FilterNSPredicateTests",
      "path" : "Tests/FilterNSPredicateTests",
      "sources" : [
        "ComparableFilterNSPredicateTests.swift",
        "EquatableFilterNSPredicateTests.swift",
        "NSPredicate+ClosureHelper.swift"
      ],
      "target_dependencies" : [
        "FilterNSPredicate"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FilterNSPredicate",
      "module_type" : "SwiftTarget",
      "name" : "FilterNSPredicate",
      "path" : "Sources/FilterNSPredicate",
      "product_memberships" : [
        "FilterNSPredicate"
      ],
      "sources" : [
        "NSExpression+ComparableOperators.swift",
        "NSExpression+EquatableOperators.swift",
        "NSPredicate+AnyComparablePredicate.swift",
        "NSPredicate+AnyEquatablePredicate.swift",
        "NSPredicate+CompoundOperators.swift",
        "NSPredicate+OptionalAnyComparablePredicate.swift",
        "NSPredicate+OptionalAnyEquatablePredicate.swift"
      ],
      "target_dependencies" : [
        "Filter"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FilterClosureTests",
      "module_type" : "SwiftTarget",
      "name" : "FilterClosureTests",
      "path" : "Tests/FilterClosureTests",
      "sources" : [
        "ComparableFilterClosureTests.swift",
        "ComparableFilterSendableClosureTests.swift",
        "EquatableFilterClosureTests.swift",
        "EquatableFilterSendableClosureTests.swift"
      ],
      "target_dependencies" : [
        "FilterClosure"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FilterClosure",
      "module_type" : "SwiftTarget",
      "name" : "FilterClosure",
      "path" : "Sources/FilterClosure",
      "product_memberships" : [
        "FilterClosure"
      ],
      "sources" : [
        "Closure+ComparablePredicate.swift",
        "Closure+EquatablePredicate.swift",
        "Closure+OptionalComparablePredicate.swift",
        "Closure+OptionalEquatablePredicate.swift",
        "Closure.swift",
        "SendableClosure+ComparablePredicate.swift",
        "SendableClosure+EquatablePredicate.swift",
        "SendableClosure+OptionalComparablePredicate.swift",
        "SendableClosure+OptionalEquatablePredicate.swift",
        "SendableClosure.swift"
      ],
      "target_dependencies" : [
        "Filter"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Filter",
      "module_type" : "SwiftTarget",
      "name" : "Filter",
      "path" : "Sources/Filter",
      "product_memberships" : [
        "Filter",
        "FilterClosure",
        "FilterNSPredicate"
      ],
      "sources" : [
        "Comparable/AnyComparablePredicate.swift",
        "Comparable/ComparableFilter.swift",
        "Comparable/ComparablePredicate.swift",
        "Comparable/OptionalAnyComparablePredicate.swift",
        "Comparable/OptionalComparablePredicate.swift",
        "Equatable/AnyEquatablePredicate.swift",
        "Equatable/EquatableFilter.swift",
        "Equatable/EquatablePredicate.swift",
        "Equatable/OptionalAnyEquatablePredicate.swift",
        "Equatable/OptionalEquatablePredicate.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.5"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/roanutil/swift-filter/2.1.0
Repository:               roanutil/swift-filter
Swift version used:       6.1
Target:                   Filter
Extracting symbol information for 'Filter'...
Finished extracting symbol information for 'Filter'. (2.78s)
Building documentation for 'Filter'...
Finished building documentation for 'Filter' (0.16s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/roanutil/swift-filter/2.1.0
Fetching https://github.com/swiftlang/swift-docc-plugin from cache
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.47s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (1.04s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.79s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.42s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[2/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version-2F0A5646E1D333AE.txt
[6/53] Compiling SymbolKit GenericConstraint.swift
[7/53] Compiling SymbolKit GenericParameter.swift
[8/53] Compiling SymbolKit Generics.swift
[9/53] Compiling SymbolKit Namespace.swift
[10/57] Compiling SymbolKit SourceRange.swift
[11/57] Compiling SymbolKit Metadata.swift
[12/57] Compiling SymbolKit Module.swift
[13/57] Compiling SymbolKit OperatingSystem.swift
[14/57] Compiling SymbolKit Platform.swift
[15/57] Compiling SymbolKit DeclarationFragments.swift
[16/57] Compiling SymbolKit Fragment.swift
[17/57] Compiling SymbolKit FragmentKind.swift
[18/57] Compiling SymbolKit FunctionParameter.swift
[19/57] Compiling SymbolKit FunctionSignature.swift
[20/57] Emitting module SymbolKit
[21/57] Compiling SymbolKit SemanticVersion.swift
[22/57] Compiling SymbolKit AccessControl.swift
[23/57] Compiling SymbolKit Availability.swift
[24/57] Compiling SymbolKit AvailabilityItem.swift
[25/57] Compiling SymbolKit Domain.swift
[26/57] Compiling SymbolKit Mixin+Equals.swift
[27/57] Compiling SymbolKit Mixin+Hash.swift
[28/57] Compiling SymbolKit Mixin.swift
[29/57] Compiling SymbolKit LineList.swift
[30/57] Compiling SymbolKit Position.swift
[31/57] Compiling SymbolKit Identifier.swift
[32/57] Compiling SymbolKit KindIdentifier.swift
[33/57] Compiling SymbolKit Location.swift
[34/57] Compiling SymbolKit Mutability.swift
[35/57] Compiling SymbolKit Names.swift
[36/57] Compiling SymbolKit SPI.swift
[37/57] Compiling SymbolKit Snippet.swift
[38/57] Compiling SymbolKit Extension.swift
[39/57] Compiling SymbolKit Symbol.swift
[40/57] Compiling SymbolKit SymbolKind.swift
[41/57] Compiling SymbolKit SymbolGraph.swift
[42/57] Compiling SymbolKit GraphCollector.swift
[43/57] Compiling SymbolKit Relationship.swift
[44/57] Compiling SymbolKit RelationshipKind.swift
[45/57] Compiling SymbolKit SourceOrigin.swift
[46/57] Compiling SymbolKit GenericConstraints.swift
[47/57] Compiling SymbolKit Swift.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Emitting module Snippets
[53/57] Compiling Snippets Snippet.swift
[54/57] Compiling Snippets SnippetParser.swift
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Emitting module snippet_extract
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.20s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/11] Compiling Filter OptionalAnyEquatablePredicate.swift
[3/11] Compiling Filter AnyEquatablePredicate.swift
[4/11] Compiling Filter EquatablePredicate.swift
[5/12] Compiling Filter OptionalComparablePredicate.swift
[6/12] Compiling Filter OptionalAnyComparablePredicate.swift
[7/12] Compiling Filter ComparablePredicate.swift
[8/12] Compiling Filter EquatableFilter.swift
[9/12] Emitting module Filter
[10/12] Compiling Filter AnyComparablePredicate.swift
[11/12] Compiling Filter ComparableFilter.swift
[12/12] Compiling Filter OptionalEquatablePredicate.swift
Build of target: 'Filter' complete! (0.74s)
Target:                   FilterNSPredicate
Extracting symbol information for 'FilterNSPredicate'...
Finished extracting symbol information for 'FilterNSPredicate'. (0.78s)
Building documentation for 'FilterNSPredicate'...
warning: Parameter 'modifer' not found in instance method declaration
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:36:21-36:28
34 |     ///
35 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
36 +     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
   |                     ╰─suggestion: Replace 'modifer' with 'modifier'
37 |     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
38 |     public func lessThan(
warning: Parameter 'modifier' is missing documentation
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:37:70-37:70
35 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
36 |     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
37 +     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
   |         ╰─suggestion: Document 'modifier' parameter
38 |     public func lessThan(
39 |         _ rhs: NSExpression,
warning: Parameter 'modifer' not found in instance method declaration
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:49:21-49:28
47 |     ///
48 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
49 +     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
   |                     ╰─suggestion: Replace 'modifer' with 'modifier'
50 |     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
51 |     public func lessThanOrEqualTo(
warning: Parameter 'modifier' is missing documentation
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:50:70-50:70
48 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
49 |     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
50 +     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
   |         ╰─suggestion: Document 'modifier' parameter
51 |     public func lessThanOrEqualTo(
52 |         _ rhs: NSExpression,
warning: Parameter 'modifer' not found in instance method declaration
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:62:21-62:28
60 |     ///
61 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
62 +     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
   |                     ╰─suggestion: Replace 'modifer' with 'modifier'
63 |     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
64 |     public func greaterThan(
warning: Parameter 'modifier' is missing documentation
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:63:70-63:70
61 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
62 |     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
63 +     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
   |         ╰─suggestion: Document 'modifier' parameter
64 |     public func greaterThan(
65 |         _ rhs: NSExpression,
warning: Parameter 'modifer' not found in instance method declaration
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:75:21-75:28
73 |     ///
74 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
75 +     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
   |                     ╰─suggestion: Replace 'modifer' with 'modifier'
76 |     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
77 |     public func greaterThanOrEqualTo(
warning: Parameter 'modifier' is missing documentation
  --> Sources/FilterNSPredicate/NSExpression+ComparableOperators.swift:76:70-76:70
74 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
75 |     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
76 +     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
   |         ╰─suggestion: Document 'modifier' parameter
77 |     public func greaterThanOrEqualTo(
78 |         _ rhs: NSExpression,
warning: Parameter 'modifer' not found in instance method declaration
  --> Sources/FilterNSPredicate/NSExpression+EquatableOperators.swift:15:21-15:28
13 |     ///
14 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
15 +     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
   |                     ╰─suggestion: Replace 'modifer' with 'modifier'
16 |     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
17 |     public func equalTo(
warning: Parameter 'modifier' is missing documentation
  --> Sources/FilterNSPredicate/NSExpression+EquatableOperators.swift:16:70-16:70
14 |     /// - Parameter rhs: Right hand side NSExpression. Corresponds to `self` in a NSComparisonPredicate.
15 |     /// - Parameter modifer: See NSComparisonPredicate. Default: `.direct`
16 +     /// - Parameter options: See NSComparisonPredicate. Default: `[]`
   |         ╰─suggestion: Document 'modifier' parameter
17 |     public func equalTo(
18 |         _ rhs: NSExpression,
Finished building documentation for 'FilterNSPredicate' (0.06s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/roanutil/swift-filter/2.1.0
Building for debugging...
[0/3] Write swift-version-2F0A5646E1D333AE.txt
Build of product 'snippet-extract' complete! (0.23s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/9] Compiling FilterNSPredicate NSPredicate+OptionalAnyEquatablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter.Optional
14 |     ///
[3/9] Compiling FilterNSPredicate NSPredicate+CompoundOperators.swift
[4/9] Compiling FilterNSPredicate NSExpression+ComparableOperators.swift
[5/9] Compiling FilterNSPredicate NSExpression+EquatableOperators.swift
[6/9] Compiling FilterNSPredicate NSPredicate+AnyEquatablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: AnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter
14 |     ///
[7/9] Emitting module FilterNSPredicate
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyComparablePredicate.swift:14:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
12 | // swiftlint:disable cyclomatic_complexity
13 |
14 | extension NSPredicate: AnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
15 |     /// Creates a NSPredicate from a ComparableFilter
16 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: AnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter
14 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyComparablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a ComparableFilter.Optional
14 |     ///
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyEquatablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyEquatablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyEquatablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a EquatableFilter.Optional
14 |     ///
[8/9] Compiling FilterNSPredicate NSPredicate+OptionalAnyComparablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+OptionalAnyComparablePredicate.swift:12:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
10 | import Foundation
11 |
12 | extension NSPredicate: OptionalAnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'OptionalAnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
13 |     /// Creates a NSPredicate from a ComparableFilter.Optional
14 |     ///
[9/9] Compiling FilterNSPredicate NSPredicate+AnyComparablePredicate.swift
/Users/admin/builder/spi-builder-workspace/Sources/FilterNSPredicate/NSPredicate+AnyComparablePredicate.swift:14:1: warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
12 | // swiftlint:disable cyclomatic_complexity
13 |
14 | extension NSPredicate: AnyComparablePredicate {
   | |- warning: extension declares a conformance of imported type 'NSPredicate' to imported protocol 'AnyComparablePredicate'; this will not behave correctly if the owners of 'Foundation' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
15 |     /// Creates a NSPredicate from a ComparableFilter
16 |     ///
Build of target: 'FilterNSPredicate' complete! (0.57s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/roanutil/swift-filter/2.1.0/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/roanutil/swift-filter/2.1.0/linkable-paths.json
Target:                   FilterClosure
Extracting symbol information for 'FilterClosure'...
Finished extracting symbol information for 'FilterClosure'. (0.80s)
Building documentation for 'FilterClosure'...
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/Closure+ComparablePredicate.swift:17:113-17:113
15 |     /// Creates a closure `(Self) -> Bool` from a ComparableFilter
16 |     ///
17 +     /// - Parameter filter: An instance of ComparableFilter representing the logic of the resulting NSPredicate.
   |                                                                                                                 ╰─suggestion: Document 'keyPath' parameter
18 |     public static func build(from filter: ComparableFilter<Value>,
19 |                              on keyPath: KeyPath<Root, Value>) -> ((Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/Closure+EquatablePredicate.swift:15:112-15:112
13 |     /// Creates a closure `(Self) -> Bool` from a EquatableFilter
14 |     ///
15 +     /// - Parameter filter: An instance of EquatableFilter representing the logic of the resulting NSPredicate.
   |                                                                                                                ╰─suggestion: Document 'keyPath' parameter
16 |     public static func build(from filter: EquatableFilter<Value>,
17 |                              on keyPath: KeyPath<Root, Value>) -> ((Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/Closure+OptionalComparablePredicate.swift:16:21-16:21
14 |     ///
15 |     /// - Parameter filter: An instance of ComparableFilter.Optional representing the logic of the resulting
16 +     /// NSPredicate.
   |                     ╰─suggestion: Document 'keyPath' parameter
17 |     public static func build(from filter: ComparableFilter<Value>.Optional,
18 |                              on keyPath: KeyPath<Root, Value?>) -> ((Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/Closure+OptionalEquatablePredicate.swift:15:112-15:112
13 |     /// Creates a closure `(Self) -> Bool` from a EquatableFilter
14 |     ///
15 +     /// - Parameter filter: An instance of EquatableFilter representing the logic of the resulting NSPredicate.
   |                                                                                                                ╰─suggestion: Document 'keyPath' parameter
16 |     public static func build(from filter: EquatableFilter<Value>.Optional,
17 |                              on keyPath: KeyPath<Root, Value?>) -> ((Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/SendableClosure+ComparablePredicate.swift:17:113-17:113
15 |     /// Creates a closure `(Self) -> Bool` from a ComparableFilter
16 |     ///
17 +     /// - Parameter filter: An instance of ComparableFilter representing the logic of the resulting NSPredicate.
   |                                                                                                                 ╰─suggestion: Document 'keyPath' parameter
18 |     public static func build(from filter: ComparableFilter<Value>,
19 |                              on keyPath: KeyPath<Root, Value>) -> (@Sendable (Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/SendableClosure+EquatablePredicate.swift:15:112-15:112
13 |     /// Creates a closure `(Self) -> Bool` from a EquatableFilter
14 |     ///
15 +     /// - Parameter filter: An instance of EquatableFilter representing the logic of the resulting NSPredicate.
   |                                                                                                                ╰─suggestion: Document 'keyPath' parameter
16 |     public static func build(from filter: EquatableFilter<Value>,
17 |                              on keyPath: KeyPath<Root, Value>) -> (@Sendable (Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/SendableClosure+OptionalComparablePredicate.swift:16:21-16:21
14 |     ///
15 |     /// - Parameter filter: An instance of ComparableFilter.Optional representing the logic of the resulting
16 +     /// NSPredicate.
   |                     ╰─suggestion: Document 'keyPath' parameter
17 |     public static func build(from filter: ComparableFilter<Value>.Optional,
18 |                              on keyPath: KeyPath<Root, Value?>) -> (@Sendable (Root) -> Bool)
warning: Parameter 'keyPath' is missing documentation
  --> Sources/FilterClosure/SendableClosure+OptionalEquatablePredicate.swift:15:112-15:112
13 |     /// Creates a closure `(Self) -> Bool` from a EquatableFilter
14 |     ///
15 +     /// - Parameter filter: An instance of EquatableFilter representing the logic of the resulting NSPredicate.
   |                                                                                                                ╰─suggestion: Document 'keyPath' parameter
16 |     public static func build(from filter: EquatableFilter<Value>.Optional,
17 |                              on keyPath: KeyPath<Root, Value?>) -> (@Sendable (Root) -> Bool)
Finished building documentation for 'FilterClosure' (0.06s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/roanutil/swift-filter/2.1.0
Building for debugging...
[0/3] Write swift-version-2F0A5646E1D333AE.txt
Build of product 'snippet-extract' complete! (0.22s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/11] Compiling FilterClosure SendableClosure+OptionalEquatablePredicate.swift
[3/12] Compiling FilterClosure SendableClosure+OptionalComparablePredicate.swift
[4/12] Compiling FilterClosure Closure.swift
[5/12] Compiling FilterClosure Closure+OptionalEquatablePredicate.swift
[6/12] Compiling FilterClosure Closure+OptionalComparablePredicate.swift
[7/12] Compiling FilterClosure SendableClosure+ComparablePredicate.swift
[8/12] Compiling FilterClosure Closure+ComparablePredicate.swift
[9/12] Compiling FilterClosure Closure+EquatablePredicate.swift
[10/12] Emitting module FilterClosure
[11/12] Compiling FilterClosure SendableClosure+EquatablePredicate.swift
[12/12] Compiling FilterClosure SendableClosure.swift
Build of target: 'FilterClosure' complete! (0.69s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/roanutil/swift-filter/2.1.0/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/roanutil/swift-filter/2.1.0/linkable-paths.json
     298
3	/Users/admin/builder/spi-builder-workspace/.docs/roanutil/swift-filter/2.1.0
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/roanutil/swift-filter/2.1.0
File count: 298
Doc size:   3.0MB
Preparing doc bundle ...
Uploading prod-roanutil-swift-filter-2.1.0-7d3445be.zip to s3://spi-docs-inbox/prod-roanutil-swift-filter-2.1.0-7d3445be.zip
Copying... [11%]
Copying... [21%]
Copying... [32%]
Copying... [43%]
Copying... [53%]
Copying... [64%]
Copying... [75%]
Copying... [85%]
Copying... [96%]
Copying... [100%]
Done.