Build Information
Successful build of Appcast, reference main (8646f5
), with Swift 6.0 for macOS (SPM) on 3 Nov 2024 20:09:16 UTC.
Swift 6 data race errors: 3
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/slidoapp/Appcast.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/slidoapp/Appcast
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 8646f57 Merge pull request #2 from slidoapp/test/reporter
Cloned https://github.com/slidoapp/Appcast.git
Revision (git rev-parse @):
8646f57fe8ecab61f24e4abc75211895b52b4dc4
SUCCESS checkout https://github.com/slidoapp/Appcast.git at main
========================================
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": "appcast",
"name": "Appcast",
"url": "https://github.com/slidoapp/Appcast.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Appcast",
"dependencies": [
]
}
]
}
Fetching https://github.com/slidoapp/Appcast.git
[1/307] Fetching appcast
Fetched https://github.com/slidoapp/Appcast.git from cache (0.78s)
Creating working copy for https://github.com/slidoapp/Appcast.git
Working copy of https://github.com/slidoapp/Appcast.git resolved at main (8646f57)
warning: '.resolve-product-dependencies': dependency 'appcast' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/slidoapp/Appcast.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/15] Compiling Appcast SUSignatures.swift
[4/16] Compiling Appcast SUVersionComparison.swift
[5/16] Compiling Appcast Appcast.swift
[6/16] Compiling Appcast Constants.swift
[7/16] Compiling Appcast SUAppcastDriver.swift
[8/16] Compiling Appcast SUAppcast.swift
/Users/admin/builder/spi-builder-workspace/Sources/Appcast/SUAppcast.swift:12:25: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcast' may have shared mutable state; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | public class SUAppcast {
| `- note: class 'SUAppcast' does not conform to the 'Sendable' protocol
11 |
12 | internal static let empty = SUAppcast()
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcast' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' 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
13 |
14 | public var items: [SUAppcastItem]
[9/16] Emitting module Appcast
/Users/admin/builder/spi-builder-workspace/Sources/Appcast/SUAppcast.swift:12:25: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcast' may have shared mutable state; this is an error in the Swift 6 language mode
8 | import Foundation
9 |
10 | public class SUAppcast {
| `- note: class 'SUAppcast' does not conform to the 'Sendable' protocol
11 |
12 | internal static let empty = SUAppcast()
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcast' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' 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
13 |
14 | public var items: [SUAppcastItem]
/Users/admin/builder/spi-builder-workspace/Sources/Appcast/SUAppcastItem.swift:23:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcastItem' may have shared mutable state; this is an error in the Swift 6 language mode
17 | /// Extended documentation and examples on using appcast item features are available at:
18 | /// https://sparkle-project.org/documentation/publishing/
19 | public class SUAppcastItem {
| `- note: class 'SUAppcastItem' does not conform to the 'Sendable' protocol
20 | /// An empty appcast item.
21 | ///
22 | /// This may be used as a potential return value in `-[SPUUpdaterDelegate bestValidUpdateInAppcast:forUpdater:]`
23 | public static let empty = SUAppcastItem()
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcastItem' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' 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
24 |
25 | /**
/Users/admin/builder/spi-builder-workspace/Sources/Appcast/SUStandardVersionComparator.swift:17:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SUStandardVersionComparator' may have shared mutable state; this is an error in the Swift 6 language mode
13 | /// It's "dumb" in that it does essentially string comparison
14 | /// in components split by character type.
15 | public struct SUStandardVersionComparator: SUVersionComparison {
| `- note: consider making struct 'SUStandardVersionComparator' conform to the 'Sendable' protocol
16 | /// A singleton instance of the comparator.
17 | public static let `default` = SUStandardVersionComparator()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SUStandardVersionComparator' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'default' 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
18 |
19 | /// Initializes a new instance of the standard version comparator.
[10/16] Compiling Appcast SUOperatingSystem.swift
[11/16] Compiling Appcast SUStandardVersionComparator.swift
/Users/admin/builder/spi-builder-workspace/Sources/Appcast/SUStandardVersionComparator.swift:17:23: warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SUStandardVersionComparator' may have shared mutable state; this is an error in the Swift 6 language mode
13 | /// It's "dumb" in that it does essentially string comparison
14 | /// in components split by character type.
15 | public struct SUStandardVersionComparator: SUVersionComparison {
| `- note: consider making struct 'SUStandardVersionComparator' conform to the 'Sendable' protocol
16 | /// A singleton instance of the comparator.
17 | public static let `default` = SUStandardVersionComparator()
| |- warning: static property 'default' is not concurrency-safe because non-'Sendable' type 'SUStandardVersionComparator' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'default' 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
18 |
19 | /// Initializes a new instance of the standard version comparator.
[12/16] Compiling Appcast SPUDownloadData.swift
[13/16] Compiling Appcast SPUSkippedUpdate.swift
[14/16] Compiling Appcast SUAppcastItem.swift
/Users/admin/builder/spi-builder-workspace/Sources/Appcast/SUAppcastItem.swift:23:23: warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcastItem' may have shared mutable state; this is an error in the Swift 6 language mode
17 | /// Extended documentation and examples on using appcast item features are available at:
18 | /// https://sparkle-project.org/documentation/publishing/
19 | public class SUAppcastItem {
| `- note: class 'SUAppcastItem' does not conform to the 'Sendable' protocol
20 | /// An empty appcast item.
21 | ///
22 | /// This may be used as a potential return value in `-[SPUUpdaterDelegate bestValidUpdateInAppcast:forUpdater:]`
23 | public static let empty = SUAppcastItem()
| |- warning: static property 'empty' is not concurrency-safe because non-'Sendable' type 'SUAppcastItem' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'empty' 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
24 |
25 | /**
[15/16] Compiling Appcast SPUAppcastItemState.swift
[16/16] Compiling Appcast SPUAppcastItemStateResolver.swift
Build complete! (16.54s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Appcast",
"name" : "Appcast",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Appcast",
"targets" : [
"Appcast"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "IntegrationTests",
"module_type" : "SwiftTarget",
"name" : "IntegrationTests",
"path" : "Tests/IntegrationTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/test-dangerous-link.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/test-links.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/test-relative-urls.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_channels.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_delta.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_info_updates.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_minimumAutoupdateVersion.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_minimumAutoupdateVersionSkipping.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_minimumAutoupdateVersionSkipping2.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testappcast_phasedRollout.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testlocalizedreleasenotesappcast.xml",
"rule" : {
"process" : {
}
}
},
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/IntegrationTests/Resources/testnamespaces.xml",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"SUAppcastChannelTests.swift",
"SUAppcastCriticalUpdateTests.swift",
"SUAppcastDangerousLinkTests.swift",
"SUAppcastDriverTests.swift",
"SUAppcastInformationalUpdateTests.swift",
"SUAppcastLinkTests.swift",
"SUAppcastMinimumAutoupdateTests.swift",
"SUAppcastParserNamespacesTests.swift",
"SUAppcastParserTests.swift",
"SUAppcastPhasedGroupRolloutsTests.swift",
"SUAppcastReleaseNotesTests.swift",
"SUAppcastTest.swift"
],
"target_dependencies" : [
"Appcast"
],
"type" : "test"
},
{
"c99name" : "AppcastTests",
"module_type" : "SwiftTarget",
"name" : "AppcastTests",
"path" : "Tests/AppcastTests",
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Tests/AppcastTests/Resources/appcast_simple.xml",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AlwaysPassTests.swift",
"SPUAppcastItemStateTests.swift",
"SPUDownloadDataTests.swift",
"SUAppcastItemBaseTests.swift",
"SUAppcastItemTests+isCriticalUpdate.swift",
"SUAppcastItemTests+isInformationOnlyUpdate.swift",
"SUAppcastItemTests+isMajorUpgrade.swift",
"SUAppcastTests.swift",
"SUOperatingSystemTests.swift",
"SUStandardVersionComparatorTests.swift"
],
"target_dependencies" : [
"Appcast"
],
"type" : "test"
},
{
"c99name" : "Appcast",
"module_type" : "SwiftTarget",
"name" : "Appcast",
"path" : "Sources/Appcast",
"product_memberships" : [
"Appcast"
],
"sources" : [
"Appcast.swift",
"Constants.swift",
"SPUAppcastItemState.swift",
"SPUAppcastItemStateResolver.swift",
"SPUDownloadData.swift",
"SPUSkippedUpdate.swift",
"SUAppcast.swift",
"SUAppcastDriver.swift",
"SUAppcastItem.swift",
"SUOperatingSystem.swift",
"SUSignatures.swift",
"SUStandardVersionComparator.swift",
"SUVersionComparison.swift"
],
"type" : "library"
}
],
"tools_version" : "5.8"
}
Done.