Build Information
Successful build of PathKit, reference 1.0.1 (3bfd27
), with Swift 6.0 for macOS (SPM) on 1 Nov 2024 21:48:54 UTC.
Swift 6 data race errors: 5
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kylef/PathKit.git
Reference: 1.0.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/kylef/PathKit
* tag 1.0.1 -> FETCH_HEAD
HEAD is now at 3bfd273 release: 1.0.1
Cloned https://github.com/kylef/PathKit.git
Revision (git rev-parse @):
3bfd2737b700b9a36565a8c94f4ad2b050a5e574
SUCCESS checkout https://github.com/kylef/PathKit.git at 1.0.1
Fetching https://github.com/kylef/Spectre.git
[1/1021] Fetching spectre
Fetched https://github.com/kylef/Spectre.git from cache (0.94s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (2.60s)
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
========================================
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": "pathkit",
"name": "PathKit",
"url": "https://github.com/kylef/PathKit.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PathKit",
"dependencies": [
{
"identity": "spectre",
"name": "Spectre",
"url": "https://github.com/kylef/Spectre.git",
"version": "0.10.1",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Spectre",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/kylef/PathKit.git
[1/1411] Fetching pathkit
Fetched https://github.com/kylef/PathKit.git from cache (0.88s)
Fetching https://github.com/kylef/Spectre.git from cache
Fetched https://github.com/kylef/Spectre.git from cache (0.47s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (0.03s)
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
Creating working copy for https://github.com/kylef/PathKit.git
Working copy of https://github.com/kylef/PathKit.git resolved at 1.0.1 (3bfd273)
warning: '.resolve-product-dependencies': dependency 'pathkit' is not used by any target
Found 1 product dependencies
- Spectre
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/kylef/PathKit.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/4] Emitting module PathKit
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:10:5: warning: let 'system_glob' is not concurrency-safe because non-'Sendable' type '(UnsafePointer<CChar>?, Int32, (@convention(c) (UnsafePointer<CChar>?, Int32) -> Int32)?, UnsafeMutablePointer<glob_t>?) -> Int32' (aka '(Optional<UnsafePointer<Int8>>, Int32, Optional<@convention(c) (Optional<UnsafePointer<Int8>>, Int32) -> Int32>, Optional<UnsafeMutablePointer<glob_t>>) -> Int32') may have shared mutable state; this is an error in the Swift 6 language mode
8 | import Darwin
9 |
10 | let system_glob = Darwin.glob
| |- warning: let 'system_glob' is not concurrency-safe because non-'Sendable' type '(UnsafePointer<CChar>?, Int32, (@convention(c) (UnsafePointer<CChar>?, Int32) -> Int32)?, UnsafeMutablePointer<glob_t>?) -> Int32' (aka '(Optional<UnsafePointer<Int8>>, Int32, Optional<@convention(c) (Optional<UnsafePointer<Int8>>, Int32) -> Int32>, Optional<UnsafeMutablePointer<glob_t>>) -> Int32') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'system_glob' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 | #endif
12 |
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:24:23: warning: static property 'fileManager' is not concurrency-safe because non-'Sendable' type 'FileManager' may have shared mutable state; this is an error in the Swift 6 language mode
22 | internal let path: String
23 |
24 | internal static let fileManager = FileManager.default
| |- warning: static property 'fileManager' is not concurrency-safe because non-'Sendable' type 'FileManager' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'fileManager' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 |
26 | internal let fileSystemInfo: FileSystemInfo
Foundation.FileManager:1:12: note: class 'FileManager' does not conform to the 'Sendable' protocol
1 | open class FileManager : NSObject {
| `- note: class 'FileManager' does not conform to the 'Sendable' protocol
2 | open class var `default`: FileManager { get }
3 | @available(swift, obsoleted: 3, renamed: "default")
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:646:23: warning: static property 'skipsSubdirectoryDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
644 | }
645 |
646 | public static var skipsSubdirectoryDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsSubdirectoryDescendants.rawValue)
| |- warning: static property 'skipsSubdirectoryDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'skipsSubdirectoryDescendants' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'skipsSubdirectoryDescendants' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
647 | public static var skipsPackageDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsPackageDescendants.rawValue)
648 | public static var skipsHiddenFiles = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:647:23: warning: static property 'skipsPackageDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
645 |
646 | public static var skipsSubdirectoryDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsSubdirectoryDescendants.rawValue)
647 | public static var skipsPackageDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsPackageDescendants.rawValue)
| |- warning: static property 'skipsPackageDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'skipsPackageDescendants' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'skipsPackageDescendants' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
648 | public static var skipsHiddenFiles = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles.rawValue)
649 | }
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:648:23: warning: static property 'skipsHiddenFiles' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
646 | public static var skipsSubdirectoryDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsSubdirectoryDescendants.rawValue)
647 | public static var skipsPackageDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsPackageDescendants.rawValue)
648 | public static var skipsHiddenFiles = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles.rawValue)
| |- warning: static property 'skipsHiddenFiles' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'skipsHiddenFiles' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'skipsHiddenFiles' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
649 | }
650 |
[4/4] Compiling PathKit PathKit.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:10:5: warning: let 'system_glob' is not concurrency-safe because non-'Sendable' type '(UnsafePointer<CChar>?, Int32, (@convention(c) (UnsafePointer<CChar>?, Int32) -> Int32)?, UnsafeMutablePointer<glob_t>?) -> Int32' (aka '(Optional<UnsafePointer<Int8>>, Int32, Optional<@convention(c) (Optional<UnsafePointer<Int8>>, Int32) -> Int32>, Optional<UnsafeMutablePointer<glob_t>>) -> Int32') may have shared mutable state; this is an error in the Swift 6 language mode
8 | import Darwin
9 |
10 | let system_glob = Darwin.glob
| |- warning: let 'system_glob' is not concurrency-safe because non-'Sendable' type '(UnsafePointer<CChar>?, Int32, (@convention(c) (UnsafePointer<CChar>?, Int32) -> Int32)?, UnsafeMutablePointer<glob_t>?) -> Int32' (aka '(Optional<UnsafePointer<Int8>>, Int32, Optional<@convention(c) (Optional<UnsafePointer<Int8>>, Int32) -> Int32>, Optional<UnsafeMutablePointer<glob_t>>) -> Int32') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'system_glob' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
11 | #endif
12 |
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:24:23: warning: static property 'fileManager' is not concurrency-safe because non-'Sendable' type 'FileManager' may have shared mutable state; this is an error in the Swift 6 language mode
22 | internal let path: String
23 |
24 | internal static let fileManager = FileManager.default
| |- warning: static property 'fileManager' is not concurrency-safe because non-'Sendable' type 'FileManager' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'fileManager' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
25 |
26 | internal let fileSystemInfo: FileSystemInfo
Foundation.FileManager:1:12: note: class 'FileManager' does not conform to the 'Sendable' protocol
1 | open class FileManager : NSObject {
| `- note: class 'FileManager' does not conform to the 'Sendable' protocol
2 | open class var `default`: FileManager { get }
3 | @available(swift, obsoleted: 3, renamed: "default")
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:646:23: warning: static property 'skipsSubdirectoryDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
644 | }
645 |
646 | public static var skipsSubdirectoryDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsSubdirectoryDescendants.rawValue)
| |- warning: static property 'skipsSubdirectoryDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'skipsSubdirectoryDescendants' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'skipsSubdirectoryDescendants' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
647 | public static var skipsPackageDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsPackageDescendants.rawValue)
648 | public static var skipsHiddenFiles = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles.rawValue)
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:647:23: warning: static property 'skipsPackageDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
645 |
646 | public static var skipsSubdirectoryDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsSubdirectoryDescendants.rawValue)
647 | public static var skipsPackageDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsPackageDescendants.rawValue)
| |- warning: static property 'skipsPackageDescendants' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'skipsPackageDescendants' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'skipsPackageDescendants' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
648 | public static var skipsHiddenFiles = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles.rawValue)
649 | }
/Users/admin/builder/spi-builder-workspace/Sources/PathKit.swift:648:23: warning: static property 'skipsHiddenFiles' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
646 | public static var skipsSubdirectoryDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsSubdirectoryDescendants.rawValue)
647 | public static var skipsPackageDescendants = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsPackageDescendants.rawValue)
648 | public static var skipsHiddenFiles = DirectoryEnumerationOptions(rawValue: FileManager.DirectoryEnumerationOptions.skipsHiddenFiles.rawValue)
| |- warning: static property 'skipsHiddenFiles' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'skipsHiddenFiles' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'skipsHiddenFiles' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
649 | }
650 |
Build complete! (7.24s)
Build complete.
{
"dependencies" : [
{
"identity" : "spectre",
"requirement" : {
"range" : [
{
"lower_bound" : "0.10.0",
"upper_bound" : "0.11.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/kylef/Spectre.git"
}
],
"manifest_display_name" : "PathKit",
"name" : "PathKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "PathKit",
"targets" : [
"PathKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "PathKitTests",
"module_type" : "SwiftTarget",
"name" : "PathKitTests",
"path" : "Tests/PathKitTests",
"product_dependencies" : [
"Spectre"
],
"sources" : [
"PathKitSpec.swift",
"XCTest.swift"
],
"target_dependencies" : [
"PathKit"
],
"type" : "test"
},
{
"c99name" : "PathKit",
"module_type" : "SwiftTarget",
"name" : "PathKit",
"path" : "Sources",
"product_memberships" : [
"PathKit"
],
"sources" : [
"PathKit.swift"
],
"type" : "library"
}
],
"tools_version" : "4.2"
}
Done.