Build Information
Successful build of LCPermissionsKit, reference 1.0.2 (63eca5
), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 04:57:35 UTC.
Swift 6 data race errors: 3
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.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/DevLiuSir/LCPermissionsKit.git
Reference: 1.0.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/DevLiuSir/LCPermissionsKit
* tag 1.0.2 -> FETCH_HEAD
HEAD is now at 63eca50 Update Package.swift
Cloned https://github.com/DevLiuSir/LCPermissionsKit.git
Revision (git rev-parse @):
63eca50dae2b6e787a177d168151b08a441d2993
SUCCESS checkout https://github.com/DevLiuSir/LCPermissionsKit.git at 1.0.2
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/DevLiuSir/LCPermissionsKit.git
https://github.com/DevLiuSir/LCPermissionsKit.git
{
"dependencies" : [
],
"manifest_display_name" : "LCPermissionsKit",
"name" : "LCPermissionsKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "LCPermissionsKit",
"targets" : [
"LCPermissionsKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "LCPermissionsKitTests",
"module_type" : "SwiftTarget",
"name" : "LCPermissionsKitTests",
"path" : "Tests/LCPermissionsKitTests",
"sources" : [
"LCPermissionsKitTests.swift"
],
"target_dependencies" : [
"LCPermissionsKit"
],
"type" : "test"
},
{
"c99name" : "LCPermissionsKit",
"module_type" : "SwiftTarget",
"name" : "LCPermissionsKit",
"path" : "Sources/LCPermissionsKit",
"product_memberships" : [
"LCPermissionsKit"
],
"sources" : [
"Private/Calendar/LCCalendarAuthorizer.swift",
"Private/Contacts/LCContactsAuthorization.swift",
"Private/Contacts/LCContactsAuthorizer.swift",
"Private/FullDiskAccess/LCFullDiskAccessAuthorizer.swift",
"Private/LCAuthorizer.swift",
"Private/Photos/LCPhotosAuthorizer.swift",
"Pubilc/LCAuthorizationStatus.swift",
"Pubilc/LCPermissionType.swift",
"Pubilc/LCPermissionsKit.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
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/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/12] Compiling LCPermissionsKit LCAuthorizationStatus.swift
[4/12] Compiling LCPermissionsKit LCPermissionsKit.swift
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Pubilc/LCPermissionsKit.swift:14:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCPermissionsKit' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 |
11 | public class LCPermissionsKit: NSObject {
| `- note: class 'LCPermissionsKit' does not conform to the 'Sendable' protocol
12 |
13 | /// 单列
14 | public static let shared = LCPermissionsKit()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCPermissionsKit' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | /// `权限类型`对应的`授权器集合`
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Pubilc/LCPermissionsKit.swift:17:24: warning: static property 'authorizers' is not concurrency-safe because non-'Sendable' type '[LCPermissionType : any LCAuthorizer]' may have shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | /// `权限类型`对应的`授权器集合`
17 | private static let authorizers: [LCPermissionType: LCAuthorizer] = [
| |- warning: static property 'authorizers' is not concurrency-safe because non-'Sendable' type '[LCPermissionType : any LCAuthorizer]' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'authorizers' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 | .photos: LCPhotosAuthorizer(),
19 | .contacts: LCContactsAuthorizer(),
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Pubilc/LCPermissionType.swift:11:13: note: consider making enum 'LCPermissionType' conform to the 'Sendable' protocol
9 |
10 | /// 权限类型
11 | public enum LCPermissionType: Int {
| `- note: consider making enum 'LCPermissionType' conform to the 'Sendable' protocol
12 | /// 日历权限
13 | case calendar = 0
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Private/LCAuthorizer.swift:12:10: note: protocol 'LCAuthorizer' does not conform to the 'Sendable' protocol
10 |
11 | /// 权限授权器的协议
12 | protocol LCAuthorizer {
| `- note: protocol 'LCAuthorizer' does not conform to the 'Sendable' protocol
13 |
14 | /// 获取`权限`的`授权状态`
[5/12] Compiling LCPermissionsKit LCPermissionType.swift
[6/12] Compiling LCPermissionsKit LCAuthorizer.swift
[7/12] Compiling LCPermissionsKit LCCalendarAuthorizer.swift
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Private/Calendar/LCCalendarAuthorizer.swift:39:9: warning: switch must be exhaustive
37 | /// - Returns: LCAuthorizationStatus,对应的自定义权限授权状态
38 | private func authorizationStatus(from status: EKAuthorizationStatus) -> LCAuthorizationStatus {
39 | switch status {
| |- warning: switch must be exhaustive
| |- note: add missing case: '.fullAccess'
| |- note: add missing case: '.writeOnly'
| `- note: add missing cases
40 | case .denied, .restricted:
41 | return .denied
[8/12] Compiling LCPermissionsKit LCContactsAuthorization.swift
[9/12] Compiling LCPermissionsKit LCFullDiskAccessAuthorizer.swift
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Private/FullDiskAccess/LCFullDiskAccessAuthorizer.swift:15:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCFullDiskAccessAuthorizer' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |
12 | class LCFullDiskAccessAuthorizer: NSObject {
| `- note: class 'LCFullDiskAccessAuthorizer' does not conform to the 'Sendable' protocol
13 |
14 | /// 共享的单例实例
15 | static let shared = LCFullDiskAccessAuthorizer()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCFullDiskAccessAuthorizer' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | /// 文件管理器
[10/12] Compiling LCPermissionsKit LCContactsAuthorizer.swift
[11/12] Compiling LCPermissionsKit LCPhotosAuthorizer.swift
[12/12] Emitting module LCPermissionsKit
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Private/FullDiskAccess/LCFullDiskAccessAuthorizer.swift:15:16: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCFullDiskAccessAuthorizer' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 |
12 | class LCFullDiskAccessAuthorizer: NSObject {
| `- note: class 'LCFullDiskAccessAuthorizer' does not conform to the 'Sendable' protocol
13 |
14 | /// 共享的单例实例
15 | static let shared = LCFullDiskAccessAuthorizer()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCFullDiskAccessAuthorizer' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
16 |
17 | /// 文件管理器
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Pubilc/LCPermissionsKit.swift:14:23: warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCPermissionsKit' may have shared mutable state; this is an error in the Swift 6 language mode
9 |
10 |
11 | public class LCPermissionsKit: NSObject {
| `- note: class 'LCPermissionsKit' does not conform to the 'Sendable' protocol
12 |
13 | /// 单列
14 | public static let shared = LCPermissionsKit()
| |- warning: static property 'shared' is not concurrency-safe because non-'Sendable' type 'LCPermissionsKit' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'shared' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
15 |
16 | /// `权限类型`对应的`授权器集合`
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Pubilc/LCPermissionsKit.swift:17:24: warning: static property 'authorizers' is not concurrency-safe because non-'Sendable' type '[LCPermissionType : any LCAuthorizer]' may have shared mutable state; this is an error in the Swift 6 language mode
15 |
16 | /// `权限类型`对应的`授权器集合`
17 | private static let authorizers: [LCPermissionType: LCAuthorizer] = [
| |- warning: static property 'authorizers' is not concurrency-safe because non-'Sendable' type '[LCPermissionType : any LCAuthorizer]' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'authorizers' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
18 | .photos: LCPhotosAuthorizer(),
19 | .contacts: LCContactsAuthorizer(),
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Pubilc/LCPermissionType.swift:11:13: note: consider making enum 'LCPermissionType' conform to the 'Sendable' protocol
9 |
10 | /// 权限类型
11 | public enum LCPermissionType: Int {
| `- note: consider making enum 'LCPermissionType' conform to the 'Sendable' protocol
12 | /// 日历权限
13 | case calendar = 0
/Users/admin/builder/spi-builder-workspace/Sources/LCPermissionsKit/Private/LCAuthorizer.swift:12:10: note: protocol 'LCAuthorizer' does not conform to the 'Sendable' protocol
10 |
11 | /// 权限授权器的协议
12 | protocol LCAuthorizer {
| `- note: protocol 'LCAuthorizer' does not conform to the 'Sendable' protocol
13 |
14 | /// 获取`权限`的`授权状态`
Build complete! (9.36s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "LCPermissionsKit",
"name" : "LCPermissionsKit",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "LCPermissionsKit",
"targets" : [
"LCPermissionsKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "LCPermissionsKitTests",
"module_type" : "SwiftTarget",
"name" : "LCPermissionsKitTests",
"path" : "Tests/LCPermissionsKitTests",
"sources" : [
"LCPermissionsKitTests.swift"
],
"target_dependencies" : [
"LCPermissionsKit"
],
"type" : "test"
},
{
"c99name" : "LCPermissionsKit",
"module_type" : "SwiftTarget",
"name" : "LCPermissionsKit",
"path" : "Sources/LCPermissionsKit",
"product_memberships" : [
"LCPermissionsKit"
],
"sources" : [
"Private/Calendar/LCCalendarAuthorizer.swift",
"Private/Contacts/LCContactsAuthorization.swift",
"Private/Contacts/LCContactsAuthorizer.swift",
"Private/FullDiskAccess/LCFullDiskAccessAuthorizer.swift",
"Private/LCAuthorizer.swift",
"Private/Photos/LCPhotosAuthorizer.swift",
"Pubilc/LCAuthorizationStatus.swift",
"Pubilc/LCPermissionType.swift",
"Pubilc/LCPermissionsKit.swift"
],
"type" : "library"
}
],
"tools_version" : "5.10"
}
Done.