Build Information
Successful build of TrialLicense, reference 3.4.0 (bded19
), with Swift 6.1 for macOS (SPM) on 28 Apr 2025 19:05:46 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.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/CleanCocoa/TrialLicensing.git
Reference: 3.4.0
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/CleanCocoa/TrialLicensing
* tag 3.4.0 -> FETCH_HEAD
HEAD is now at bded194 remove Carthage dependencies since we don't have an Xcode project anymore
Cloned https://github.com/CleanCocoa/TrialLicensing.git
Revision (git rev-parse @):
bded194498fea436fbf7fa4756cc5efe26479f39
SUCCESS checkout https://github.com/CleanCocoa/TrialLicensing.git at 3.4.0
Fetching https://github.com/glebd/cocoafob
[1/1705] Fetching cocoafob
Fetched https://github.com/glebd/cocoafob from cache (0.84s)
Computing version for https://github.com/glebd/cocoafob
Computed https://github.com/glebd/cocoafob at 2.4.0 (1.45s)
Creating working copy for https://github.com/glebd/cocoafob
Working copy of https://github.com/glebd/cocoafob resolved at 2.4.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": "triallicensing",
"name": "TrialLicense",
"url": "https://github.com/CleanCocoa/TrialLicensing.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/TrialLicensing",
"dependencies": [
{
"identity": "cocoafob",
"name": "CocoaFob",
"url": "https://github.com/glebd/cocoafob",
"version": "2.4.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/cocoafob",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/CleanCocoa/TrialLicensing.git
[1/745] Fetching triallicensing
Fetched https://github.com/CleanCocoa/TrialLicensing.git from cache (0.75s)
Fetching https://github.com/glebd/cocoafob from cache
Fetched https://github.com/glebd/cocoafob from cache (0.45s)
Computing version for https://github.com/glebd/cocoafob
Computed https://github.com/glebd/cocoafob at 2.4.0 (0.50s)
Creating working copy for https://github.com/glebd/cocoafob
Working copy of https://github.com/glebd/cocoafob resolved at 2.4.0
Creating working copy for https://github.com/CleanCocoa/TrialLicensing.git
Working copy of https://github.com/CleanCocoa/TrialLicensing.git resolved at 3.4.0 (bded194)
warning: '.resolve-product-dependencies': dependency 'triallicensing' is not used by any target
Found 1 product dependencies
- CocoaFob
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/CleanCocoa/TrialLicensing.git
https://github.com/CleanCocoa/TrialLicensing.git
{
"dependencies" : [
{
"identity" : "cocoafob",
"requirement" : {
"range" : [
{
"lower_bound" : "2.4.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/glebd/cocoafob"
}
],
"manifest_display_name" : "TrialLicense",
"name" : "TrialLicense",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "TrialLicense",
"targets" : [
"TrialLicense"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Trial",
"targets" : [
"Trial"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TrialTests",
"module_type" : "SwiftTarget",
"name" : "TrialTests",
"path" : "Tests/TrialTests",
"sources" : [
"Helpers.swift",
"TrialPeriodTests.swift",
"TrialProviderTests.swift",
"TrialWriterTests.swift",
"UserDefaultsTrialPeriodReaderTests.swift"
],
"target_dependencies" : [
"Trial"
],
"type" : "test"
},
{
"c99name" : "TrialLicenseTests",
"module_type" : "SwiftTarget",
"name" : "TrialLicenseTests",
"path" : "Tests/TrialLicenseTests",
"sources" : [
"GenericRegistrationStrategyTests.swift",
"Helpers.swift",
"LicenseInformationProviderTests.swift",
"LicenseInformationTests.swift",
"LicenseVerifierTests.swift",
"LicensingSchemeTests.swift",
"PersonalizedLicenseRegistrationStrategyTests.swift",
"RegisterApplicationTests.swift",
"UserDefaultsLicenseProviderTests.swift",
"UserDefaultsLicenseWriterTests.swift"
],
"target_dependencies" : [
"TrialLicense"
],
"type" : "test"
},
{
"c99name" : "TrialLicense",
"module_type" : "SwiftTarget",
"name" : "TrialLicense",
"path" : "Sources/TrialLicense",
"product_dependencies" : [
"CocoaFob"
],
"product_memberships" : [
"TrialLicense"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/Resources/PrivacyInfo.xcprivacy",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AppLicensing.swift",
"Collection+safeSubscript.swift",
"GenericRegistrationStrategy.swift",
"License.swift",
"LicenseConfiguration.swift",
"LicenseInformation.swift",
"LicenseInformationProvider.swift",
"LicenseVerifier.swift",
"LicensingScheme.swift",
"PersonalizedLicenseRegistrationStrategy.swift",
"RegisterApplication.swift",
"RegistrationPayload.swift",
"Sequence+mapDictionary.swift",
"String+replacingCharactersOfnCharacterSetWith.swift",
"TrialRunner.swift",
"URLComponents.swift",
"URLQueryLicenseParser.swift",
"UserDefaultsLicenseProvider.swift",
"UserDefaultsLicenseWriter.swift"
],
"target_dependencies" : [
"Trial"
],
"type" : "library"
},
{
"c99name" : "Trial",
"module_type" : "SwiftTarget",
"name" : "Trial",
"path" : "Sources/Trial",
"product_memberships" : [
"TrialLicense",
"Trial"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/Trial/Resources/PrivacyInfo.xcprivacy",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"CancelableTimedBlock.swift",
"Clock.swift",
"Days.swift",
"Trial.swift",
"TrialPeriod.swift",
"TrialProvider.swift",
"TrialTimer.swift",
"TrialWriter.swift",
"UserDefaultsTrialPeriodReader.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/8] Write sources
[2/8] Copying PrivacyInfo.xcprivacy
[2/8] Write sources
[5/8] Write swift-version-2F0A5646E1D333AE.txt
[7/24] Compiling CocoaFob String+CocoaFob.swift
[8/24] Emitting module Trial
[9/25] Compiling Trial TrialTimer.swift
[10/25] Compiling Trial TrialProvider.swift
[11/25] Compiling Trial UserDefaultsTrialPeriodReader.swift
[12/25] Compiling Trial TrialWriter.swift
[13/25] Compiling Trial Days.swift
[14/25] Compiling CocoaFob CFUtil.swift
[15/25] Compiling Trial TrialPeriod.swift
[16/25] Compiling Trial Clock.swift
[17/25] Compiling Trial Trial.swift
[18/25] Emitting module CocoaFob
[19/25] Compiling Trial CancelableTimedBlock.swift
/Users/admin/builder/spi-builder-workspace/Sources/Trial/CancelableTimedBlock.swift:18:47: warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
7 | typealias CancelableDispatchBlock = (_ cancel: Bool) -> Void
8 |
9 | func dispatch(cancelableBlock block: @escaping () -> Void, atDate date: Date) -> CancelableDispatchBlock? {
| `- note: parameter 'block' is implicitly non-sendable
10 |
11 | // Use two pointers for the same block handle to make
:
16 |
17 | if !cancel {
18 | DispatchQueue.main.async(execute: block)
| `- warning: passing non-sendable parameter 'block' to function expecting a @Sendable closure
19 | }
20 |
/Users/admin/builder/spi-builder-workspace/Sources/Trial/CancelableTimedBlock.swift:29:49: warning: sending 'cancelableBlock' risks causing data races; this is an error in the Swift 6 language mode
27 | DispatchQueue.main.asyncAfter(wallDeadline: DispatchWallTime.now() + .seconds(delay)) {
28 |
29 | guard case let .some(cancelableBlock) = cancelableBlock else { return }
| |- warning: sending 'cancelableBlock' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'cancelableBlock' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
30 |
31 | cancelableBlock(false)
[20/25] Compiling CocoaFob LicenseGenerator.swift
[21/25] Compiling CocoaFob LicenseVerifier.swift
[22/25] Compiling CocoaFob CocoaFobError.swift
[22/25] Write Objects.LinkFileList
[23/25] Archiving libCocoaFob.a
[25/25] Compiling Trial resource_bundle_accessor.swift
[26/44] Compiling TrialLicense RegisterApplication.swift
[27/44] Compiling TrialLicense RegistrationPayload.swift
[28/44] Compiling TrialLicense LicenseInformationProvider.swift
[29/44] Compiling TrialLicense LicenseVerifier.swift
[30/44] Compiling TrialLicense Sequence+mapDictionary.swift
[31/44] Compiling TrialLicense String+replacingCharactersOfnCharacterSetWith.swift
[32/44] Compiling TrialLicense LicenseConfiguration.swift
[33/44] Compiling TrialLicense LicenseInformation.swift
[34/44] Compiling TrialLicense URLQueryLicenseParser.swift
[35/44] Compiling TrialLicense UserDefaultsLicenseProvider.swift
[36/44] Compiling TrialLicense TrialRunner.swift
[37/44] Compiling TrialLicense URLComponents.swift
[38/44] Compiling TrialLicense LicensingScheme.swift
[39/44] Compiling TrialLicense PersonalizedLicenseRegistrationStrategy.swift
[40/46] Compiling TrialLicense GenericRegistrationStrategy.swift
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/License.swift:33:27: warning: static property 'name' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 | }
32 |
33 | public static var name = "licensee"
| |- warning: static property 'name' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'name' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'name' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
34 | public static var licenseCode = "license_code"
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/License.swift:34:27: warning: static property 'licenseCode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
32 |
33 | public static var name = "licensee"
34 | public static var licenseCode = "license_code"
| |- warning: static property 'licenseCode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'licenseCode' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'licenseCode' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 | }
36 | }
[41/46] Compiling TrialLicense License.swift
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/License.swift:33:27: warning: static property 'name' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 | }
32 |
33 | public static var name = "licensee"
| |- warning: static property 'name' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'name' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'name' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
34 | public static var licenseCode = "license_code"
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/License.swift:34:27: warning: static property 'licenseCode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
32 |
33 | public static var name = "licensee"
34 | public static var licenseCode = "license_code"
| |- warning: static property 'licenseCode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'licenseCode' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'licenseCode' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 | }
36 | }
[42/46] Emitting module TrialLicense
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:18:36: warning: static property 'sharedInstance' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | public class AppLicensing {
17 |
18 | public static private(set) var sharedInstance: AppLicensing?
| |- warning: static property 'sharedInstance' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sharedInstance' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'sharedInstance' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | /// - returns: `nil` if the `AppLicensing` module wasn't set up prior to accessing the value, or the up-to date information otherwise.
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/License.swift:33:27: warning: static property 'name' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
31 | }
32 |
33 | public static var name = "licensee"
| |- warning: static property 'name' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'name' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'name' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
34 | public static var licenseCode = "license_code"
35 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/License.swift:34:27: warning: static property 'licenseCode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
32 |
33 | public static var name = "licensee"
34 | public static var licenseCode = "license_code"
| |- warning: static property 'licenseCode' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'licenseCode' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'licenseCode' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
35 | }
36 | }
[43/46] Compiling TrialLicense AppLicensing.swift
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:18:36: warning: static property 'sharedInstance' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | public class AppLicensing {
17 |
18 | public static private(set) var sharedInstance: AppLicensing?
| |- warning: static property 'sharedInstance' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sharedInstance' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'sharedInstance' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | /// - returns: `nil` if the `AppLicensing` module wasn't set up prior to accessing the value, or the up-to date information otherwise.
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:367:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
365 | DispatchQueue.main.async {
366 |
367 | self.licenseChangeBlock(licenseInformation)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
368 | }
369 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:367:37: warning: sending 'licenseInformation' risks causing data races; this is an error in the Swift 6 language mode
365 | DispatchQueue.main.async {
366 |
367 | self.licenseChangeBlock(licenseInformation)
| |- warning: sending 'licenseInformation' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'licenseInformation' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
368 | }
369 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:375:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
373 | DispatchQueue.main.async {
374 |
375 | self.invalidLicenseInformationBlock(payload)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
376 | }
377 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:375:49: warning: sending 'payload' risks causing data races; this is an error in the Swift 6 language mode
373 | DispatchQueue.main.async {
374 |
375 | self.invalidLicenseInformationBlock(payload)
| |- warning: sending 'payload' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'payload' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
376 | }
377 | }
[44/46] Compiling TrialLicense Collection+safeSubscript.swift
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:18:36: warning: static property 'sharedInstance' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
16 | public class AppLicensing {
17 |
18 | public static private(set) var sharedInstance: AppLicensing?
| |- warning: static property 'sharedInstance' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'sharedInstance' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'sharedInstance' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
19 |
20 | /// - returns: `nil` if the `AppLicensing` module wasn't set up prior to accessing the value, or the up-to date information otherwise.
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:367:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
365 | DispatchQueue.main.async {
366 |
367 | self.licenseChangeBlock(licenseInformation)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
368 | }
369 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:367:37: warning: sending 'licenseInformation' risks causing data races; this is an error in the Swift 6 language mode
365 | DispatchQueue.main.async {
366 |
367 | self.licenseChangeBlock(licenseInformation)
| |- warning: sending 'licenseInformation' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'licenseInformation' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
368 | }
369 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:375:13: warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
373 | DispatchQueue.main.async {
374 |
375 | self.invalidLicenseInformationBlock(payload)
| |- warning: sending 'self' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'self' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
376 | }
377 | }
/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/AppLicensing.swift:375:49: warning: sending 'payload' risks causing data races; this is an error in the Swift 6 language mode
373 | DispatchQueue.main.async {
374 |
375 | self.invalidLicenseInformationBlock(payload)
| |- warning: sending 'payload' risks causing data races; this is an error in the Swift 6 language mode
| `- note: task-isolated 'payload' is captured by a main actor-isolated closure. main actor-isolated uses in closure may race against later nonisolated uses
376 | }
377 | }
[45/46] Compiling TrialLicense UserDefaultsLicenseWriter.swift
[46/46] Compiling TrialLicense resource_bundle_accessor.swift
Build complete! (8.31s)
Build complete.
{
"dependencies" : [
{
"identity" : "cocoafob",
"requirement" : {
"range" : [
{
"lower_bound" : "2.4.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/glebd/cocoafob"
}
],
"manifest_display_name" : "TrialLicense",
"name" : "TrialLicense",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.13"
}
],
"products" : [
{
"name" : "TrialLicense",
"targets" : [
"TrialLicense"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Trial",
"targets" : [
"Trial"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TrialTests",
"module_type" : "SwiftTarget",
"name" : "TrialTests",
"path" : "Tests/TrialTests",
"sources" : [
"Helpers.swift",
"TrialPeriodTests.swift",
"TrialProviderTests.swift",
"TrialWriterTests.swift",
"UserDefaultsTrialPeriodReaderTests.swift"
],
"target_dependencies" : [
"Trial"
],
"type" : "test"
},
{
"c99name" : "TrialLicenseTests",
"module_type" : "SwiftTarget",
"name" : "TrialLicenseTests",
"path" : "Tests/TrialLicenseTests",
"sources" : [
"GenericRegistrationStrategyTests.swift",
"Helpers.swift",
"LicenseInformationProviderTests.swift",
"LicenseInformationTests.swift",
"LicenseVerifierTests.swift",
"LicensingSchemeTests.swift",
"PersonalizedLicenseRegistrationStrategyTests.swift",
"RegisterApplicationTests.swift",
"UserDefaultsLicenseProviderTests.swift",
"UserDefaultsLicenseWriterTests.swift"
],
"target_dependencies" : [
"TrialLicense"
],
"type" : "test"
},
{
"c99name" : "TrialLicense",
"module_type" : "SwiftTarget",
"name" : "TrialLicense",
"path" : "Sources/TrialLicense",
"product_dependencies" : [
"CocoaFob"
],
"product_memberships" : [
"TrialLicense"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/TrialLicense/Resources/PrivacyInfo.xcprivacy",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"AppLicensing.swift",
"Collection+safeSubscript.swift",
"GenericRegistrationStrategy.swift",
"License.swift",
"LicenseConfiguration.swift",
"LicenseInformation.swift",
"LicenseInformationProvider.swift",
"LicenseVerifier.swift",
"LicensingScheme.swift",
"PersonalizedLicenseRegistrationStrategy.swift",
"RegisterApplication.swift",
"RegistrationPayload.swift",
"Sequence+mapDictionary.swift",
"String+replacingCharactersOfnCharacterSetWith.swift",
"TrialRunner.swift",
"URLComponents.swift",
"URLQueryLicenseParser.swift",
"UserDefaultsLicenseProvider.swift",
"UserDefaultsLicenseWriter.swift"
],
"target_dependencies" : [
"Trial"
],
"type" : "library"
},
{
"c99name" : "Trial",
"module_type" : "SwiftTarget",
"name" : "Trial",
"path" : "Sources/Trial",
"product_memberships" : [
"TrialLicense",
"Trial"
],
"resources" : [
{
"path" : "/Users/admin/builder/spi-builder-workspace/Sources/Trial/Resources/PrivacyInfo.xcprivacy",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"CancelableTimedBlock.swift",
"Clock.swift",
"Days.swift",
"Trial.swift",
"TrialPeriod.swift",
"TrialProvider.swift",
"TrialTimer.swift",
"TrialWriter.swift",
"UserDefaultsTrialPeriodReader.swift"
],
"type" : "library"
}
],
"tools_version" : "5.5"
}
Done.