Build Information
Successful build of FinanceKit with Swift 6.0 for Linux.
Swift 6 data race errors: 4
Build Command
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/christiankm/FinanceKit.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/christiankm/FinanceKit
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 159de2e Add @available
Cloned https://github.com/christiankm/FinanceKit.git
Revision (git rev-parse @):
159de2e9a7ec70719a5161415a5566fcc3a0f029
SUCCESS checkout https://github.com/christiankm/FinanceKit.git at master
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $workDir
https://github.com/christiankm/FinanceKit.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/36] Emitting module FinanceKit
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:11:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
12 | roundingMode: .bankers,
13 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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
12 | roundingMode: .bankers,
13 | scale: 2,
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:12:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
13 | roundingMode: .bankers,
14 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | /// An amount of money in a given currency.
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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 | roundingMode: .bankers,
14 | scale: 2,
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[4/40] Compiling FinanceKit Amount.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[5/40] Compiling FinanceKit Array+Holding.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[6/40] Compiling FinanceKit Asset.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[7/40] Compiling FinanceKit AssetAllocation.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[8/40] Compiling FinanceKit Change.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[9/40] Compiling FinanceKit CurrencyConverter.swift
[10/40] Compiling FinanceKit CurrencyFormatter.swift
[11/40] Compiling FinanceKit CurrencyPair.swift
[12/40] Compiling FinanceKit Date+Comparison.swift
[13/40] Compiling FinanceKit Date+Ranges.swift
[14/40] Compiling FinanceKit Decimal+DoubleValue.swift
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:11:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
12 | roundingMode: .bankers,
13 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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
12 | roundingMode: .bankers,
13 | scale: 2,
[15/40] Compiling FinanceKit Decimal+Rounded.swift
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:11:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
12 | roundingMode: .bankers,
13 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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
12 | roundingMode: .bankers,
13 | scale: 2,
[16/40] Compiling FinanceKit Dividend.swift
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:11:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
12 | roundingMode: .bankers,
13 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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
12 | roundingMode: .bankers,
13 | scale: 2,
[17/40] Compiling FinanceKit Exchange.swift
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:11:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
12 | roundingMode: .bankers,
13 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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
12 | roundingMode: .bankers,
13 | scale: 2,
[18/40] Compiling FinanceKit ExchangeRate.swift
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:11:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
12 | roundingMode: .bankers,
13 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Decimal+Rounded.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | extension Decimal {
10 |
11 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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
12 | roundingMode: .bankers,
13 | scale: 2,
[19/40] Compiling FinanceKit Split.swift
[20/40] Compiling FinanceKit Stock.swift
[21/40] Compiling FinanceKit Symbol.swift
[22/40] Compiling FinanceKit Transaction.swift
[23/40] Compiling FinanceKit HistoricalPrice.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:12:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
13 | roundingMode: .bankers,
14 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | /// An amount of money in a given currency.
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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 | roundingMode: .bankers,
14 | scale: 2,
[24/40] Compiling FinanceKit Holding.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:12:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
13 | roundingMode: .bankers,
14 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | /// An amount of money in a given currency.
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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 | roundingMode: .bankers,
14 | scale: 2,
[25/40] Compiling FinanceKit Money.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:12:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
13 | roundingMode: .bankers,
14 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | /// An amount of money in a given currency.
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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 | roundingMode: .bankers,
14 | scale: 2,
[26/40] Compiling FinanceKit Number+LegacyType.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:12:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
13 | roundingMode: .bankers,
14 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | /// An amount of money in a given currency.
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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 | roundingMode: .bankers,
14 | scale: 2,
[27/40] Compiling FinanceKit NumberFormatter+Currency.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:12:24: warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| `- warning: static property 'decimalHandler' is not concurrency-safe because non-'Sendable' type 'NSDecimalNumberHandler' may have shared mutable state; this is an error in the Swift 6 language mode
13 | roundingMode: .bankers,
14 | scale: 2,
Foundation.NSDecimalNumberHandler:1:12: note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
1 | open class NSDecimalNumberHandler : NSObject, NSDecimalNumberBehaviors, NSCoding {
| `- note: class 'NSDecimalNumberHandler' does not conform to the 'Sendable' protocol
2 | override public init()
3 | required public init?(coder: NSCoder)
/host/spi-builder-workspace/Sources/FinanceKit/Money.swift:7:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
5 | //
6 |
7 | import Foundation
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Foundation'
8 |
9 | /// An amount of money in a given currency.
10 | public struct Money: Hashable {
11 |
12 | private static let decimalHandler = NSDecimalNumberHandler(
| |- note: annotate 'decimalHandler' 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 | roundingMode: .bankers,
14 | scale: 2,
[28/40] Compiling FinanceKit Numerics+Total+Average.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[29/40] Compiling FinanceKit Percentage.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[30/40] Compiling FinanceKit PercentageFormatter.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[31/40] Compiling FinanceKit PerformanceCalculator.swift
/host/spi-builder-workspace/Sources/FinanceKit/Percentage.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
7 | import Foundation
8 |
9 | public struct Percentage: Equatable, Hashable, Codable {
| `- note: consider making struct 'Percentage' conform to the 'Sendable' protocol
10 |
11 | /// Return a percentage of zero.
12 | public static let zero = Percentage(decimal: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Percentage' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 | // The percentage in decimal.
[32/40] Compiling FinanceKit Portfolio.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
[33/40] Compiling FinanceKit Price.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
[34/40] Compiling FinanceKit PriceTarget.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
[35/40] Compiling FinanceKit Quantity.swift
/host/spi-builder-workspace/Sources/FinanceKit/Change.swift:12:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
8 |
9 | /// A Change keeps track of the numerical and percent changes between the cost and current price.
10 | public struct Change: Codable, Equatable, Hashable {
| `- note: consider making struct 'Change' conform to the 'Sendable' protocol
11 |
12 | public static let zero = Change(cost: 0, currentValue: 0)
| |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Change' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: annotate 'zero' 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 let amount: Amount
[36/40] Compiling FinanceKit ChangePeriod.swift
[37/40] Compiling FinanceKit Company.swift
[38/40] Compiling FinanceKit ComparableToZero.swift
[39/40] Compiling FinanceKit Currency.swift
[40/40] Compiling FinanceKit CurrencyCode.swift
Build complete! (14.99s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "FinanceKit",
"name" : "FinanceKit",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "FinanceKit",
"targets" : [
"FinanceKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"5"
],
"targets" : [
{
"c99name" : "FinanceKitTests",
"module_type" : "SwiftTarget",
"name" : "FinanceKitTests",
"path" : "Tests/FinanceKitTests",
"sources" : [
"AssetAllocationTests.swift",
"ChangeTests.swift",
"CompanyTests.swift",
"CurrencyConverterTests.swift",
"CurrencyFormatterTests.swift",
"CurrencyPairTests.swift",
"CurrencyTests.swift",
"DateComparisonTests.swift",
"DecimalDoubleValueTests.swift",
"DividendTests.swift",
"ExchangeTests.swift",
"HoldingTests.swift",
"MoneyTests.swift",
"NumberFormatterCurrencyTests.swift",
"NumberLegacyTypeTests.swift",
"NumericsTotalAverageTests.swift",
"PercentageFormatterTests.swift",
"PercentageTests.swift",
"PerformanceCalculatorTests.swift",
"PortfolioTests.swift",
"PriceTargetTests.swift",
"QuantityTests.swift",
"SplitTests.swift",
"StockTests.swift",
"SymbolTests.swift",
"TestData.swift",
"TransactionTests.swift"
],
"target_dependencies" : [
"FinanceKit"
],
"type" : "test"
},
{
"c99name" : "FinanceKit",
"module_type" : "SwiftTarget",
"name" : "FinanceKit",
"path" : "Sources/FinanceKit",
"product_memberships" : [
"FinanceKit"
],
"sources" : [
"Amount.swift",
"Array+Holding.swift",
"Asset.swift",
"AssetAllocation.swift",
"Change.swift",
"ChangePeriod.swift",
"Company.swift",
"ComparableToZero.swift",
"Currency.swift",
"CurrencyCode.swift",
"CurrencyConverter.swift",
"CurrencyFormatter.swift",
"CurrencyPair.swift",
"Date+Comparison.swift",
"Date+Ranges.swift",
"Decimal+DoubleValue.swift",
"Decimal+Rounded.swift",
"Dividend.swift",
"Exchange.swift",
"ExchangeRate.swift",
"HistoricalPrice.swift",
"Holding.swift",
"Money.swift",
"Number+LegacyType.swift",
"NumberFormatter+Currency.swift",
"Numerics+Total+Average.swift",
"Percentage.swift",
"PercentageFormatter.swift",
"PerformanceCalculator.swift",
"Portfolio.swift",
"Price.swift",
"PriceTarget.swift",
"Quantity.swift",
"Split.swift",
"Stock.swift",
"Symbol.swift",
"Transaction.swift"
],
"type" : "library"
}
],
"tools_version" : "5.0"
}
Done.