The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Successful build of SwiftBeanCountWealthsimpleMapper, reference main (b5c0d1), with Swift 6.1 for macOS (SPM) on 30 Apr 2025 05:34:14 UTC.

Swift 6 data race errors: 1

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/Nef10/SwiftBeanCountWealthsimpleMapper.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at b5c0d10 Bump swift-actions/setup-swift from 2.2.0 to 2.3.0
Cloned https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git
Revision (git rev-parse @):
b5c0d10c905fcd373087d41e9ff0fd08ad49f5b1
SUCCESS checkout https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git
https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git
{
  "dependencies" : [
    {
      "identity" : "swiftbeancountmodel",
      "requirement" : {
        "exact" : [
          "0.1.6"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountModel.git"
    },
    {
      "identity" : "swiftbeancountparserutils",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountParserUtils.git"
    },
    {
      "identity" : "wealthsimpledownloader",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/WealthsimpleDownloader.git"
    }
  ],
  "manifest_display_name" : "SwiftBeanCountWealthsimpleMapper",
  "name" : "SwiftBeanCountWealthsimpleMapper",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftBeanCountWealthsimpleMapper",
      "targets" : [
        "SwiftBeanCountWealthsimpleMapper"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftBeanCountWealthsimpleMapperTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountWealthsimpleMapperTests",
      "path" : "Tests/SwiftBeanCountWealthsimpleMapperTests",
      "sources" : [
        "Extensions/AmountInitTests.swift",
        "Extensions/StringKebabCaseTests.swift",
        "Extensions/TransactionHelperTests.swift",
        "Extensions/XCTestCase.swift",
        "LedgerLookupTests.swift",
        "TestTransaction.swift",
        "WealthsimpleConversionErrorTests.swift",
        "WealthsimpleLedgerMapperTests.swift"
      ],
      "target_dependencies" : [
        "SwiftBeanCountWealthsimpleMapper"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftBeanCountWealthsimpleMapper",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountWealthsimpleMapper",
      "path" : "Sources/SwiftBeanCountWealthsimpleMapper",
      "product_dependencies" : [
        "SwiftBeanCountModel",
        "SwiftBeanCountParserUtils",
        "Wealthsimple"
      ],
      "product_memberships" : [
        "SwiftBeanCountWealthsimpleMapper"
      ],
      "sources" : [
        "Extensions/Amount+init.swift",
        "Extensions/String+KebabCase.swift",
        "Extensions/Wealthsimple.Transaction+Helper.swift",
        "LedgerLookup.swift",
        "MetaDataKeys.swift",
        "WealthsimpleConversionError.swift",
        "WealthsimpleLedgerMapper.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
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/5] Write sources
[4/5] Write swift-version-2F0A5646E1D333AE.txt
[6/35] Emitting module SwiftBeanCountParserUtils
[7/35] Compiling SwiftBeanCountParserUtils String.swift
[8/35] Emitting module SwiftBeanCountModel
[9/36] Compiling SwiftBeanCountModel Account.swift
[10/36] Compiling SwiftBeanCountModel AccountName.swift
[11/36] Compiling Wealthsimple Token.swift
[12/36] Compiling Wealthsimple String+CamelCase.swift
[13/36] Compiling Wealthsimple TransactionError.swift
[14/36] Emitting module Wealthsimple
[15/36] Compiling SwiftBeanCountModel Commodity.swift
[16/36] Compiling SwiftBeanCountModel Cost.swift
[17/36] Compiling SwiftBeanCountModel Amount.swift
[18/36] Compiling SwiftBeanCountModel Balance.swift
[19/36] Compiling Wealthsimple WealthsimplePosition.swift
[20/36] Compiling SwiftBeanCountModel Flag.swift
[21/36] Compiling SwiftBeanCountModel Inventory.swift
[22/36] Compiling SwiftBeanCountModel Custom.swift
[23/36] Compiling Wealthsimple WealthsimpleDownloader.swift
[24/36] Compiling SwiftBeanCountModel Event.swift
[25/36] Compiling Wealthsimple WealthsimpleAsset.swift
[26/36] Compiling Wealthsimple WealthsimpleTransaction.swift
[27/36] Compiling Wealthsimple WealthsimpleAccount.swift
[28/36] Compiling SwiftBeanCountModel Option.swift
[29/36] Compiling SwiftBeanCountModel Price.swift
[30/36] Compiling SwiftBeanCountModel Ledger.swift
[31/36] Compiling SwiftBeanCountModel MultiCurrencyAmount.swift
[32/36] Compiling SwiftBeanCountModel Tag.swift
[33/36] Compiling SwiftBeanCountModel Transaction.swift
[34/36] Compiling SwiftBeanCountModel TransactionMetaData.swift
[35/36] Compiling SwiftBeanCountModel TransactionPosting.swift
[36/36] Compiling SwiftBeanCountModel ValidationResult.swift
[37/44] Compiling SwiftBeanCountWealthsimpleMapper MetaDataKeys.swift
[38/44] Compiling SwiftBeanCountWealthsimpleMapper LedgerLookup.swift
[39/44] Compiling SwiftBeanCountWealthsimpleMapper WealthsimpleConversionError.swift
[40/44] Compiling SwiftBeanCountWealthsimpleMapper Amount+init.swift
[41/44] Emitting module SwiftBeanCountWealthsimpleMapper
/Users/admin/builder/spi-builder-workspace/Sources/SwiftBeanCountWealthsimpleMapper/WealthsimpleLedgerMapper.swift:23:23: warning: static property 'fallbackExpenseAccountName' is not concurrency-safe because non-'Sendable' type 'AccountName' may have shared mutable state; this is an error in the Swift 6 language mode
 21 |     ///
 22 |     /// Only used for certain transaction types
 23 |     public static let fallbackExpenseAccountName = try! AccountName("Expenses:TODO") // swiftlint:disable:this force_try
    |                       `- warning: static property 'fallbackExpenseAccountName' is not concurrency-safe because non-'Sendable' type 'AccountName' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 |     /// Payee used for fee transactions
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/AccountName.swift:18:15: note: struct 'AccountName' does not conform to the 'Sendable' protocol
 16 |
 17 | /// Struct with represents just the name of an Account
 18 | public struct AccountName: AccountItem {
    |               `- note: struct 'AccountName' does not conform to the 'Sendable' protocol
 19 |
 20 |     /// Full quilified name of the account, e.g. Assets:Cash:CAD
/Users/admin/builder/spi-builder-workspace/Sources/SwiftBeanCountWealthsimpleMapper/WealthsimpleLedgerMapper.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
  7 |
  8 | import Foundation
  9 | import SwiftBeanCountModel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
 10 | import SwiftBeanCountParserUtils
 11 | import Wealthsimple
    :
 21 |     ///
 22 |     /// Only used for certain transaction types
 23 |     public static let fallbackExpenseAccountName = try! AccountName("Expenses:TODO") // swiftlint:disable:this force_try
    |                       |- note: add '@MainActor' to make static property 'fallbackExpenseAccountName' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Payee used for fee transactions
[42/44] Compiling SwiftBeanCountWealthsimpleMapper Wealthsimple.Transaction+Helper.swift
[43/44] Compiling SwiftBeanCountWealthsimpleMapper WealthsimpleLedgerMapper.swift
/Users/admin/builder/spi-builder-workspace/Sources/SwiftBeanCountWealthsimpleMapper/WealthsimpleLedgerMapper.swift:23:23: warning: static property 'fallbackExpenseAccountName' is not concurrency-safe because non-'Sendable' type 'AccountName' may have shared mutable state; this is an error in the Swift 6 language mode
 21 |     ///
 22 |     /// Only used for certain transaction types
 23 |     public static let fallbackExpenseAccountName = try! AccountName("Expenses:TODO") // swiftlint:disable:this force_try
    |                       `- warning: static property 'fallbackExpenseAccountName' is not concurrency-safe because non-'Sendable' type 'AccountName' may have shared mutable state; this is an error in the Swift 6 language mode
 24 |
 25 |     /// Payee used for fee transactions
/Users/admin/builder/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/AccountName.swift:18:15: note: struct 'AccountName' does not conform to the 'Sendable' protocol
 16 |
 17 | /// Struct with represents just the name of an Account
 18 | public struct AccountName: AccountItem {
    |               `- note: struct 'AccountName' does not conform to the 'Sendable' protocol
 19 |
 20 |     /// Full quilified name of the account, e.g. Assets:Cash:CAD
/Users/admin/builder/spi-builder-workspace/Sources/SwiftBeanCountWealthsimpleMapper/WealthsimpleLedgerMapper.swift:9:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
  7 |
  8 | import Foundation
  9 | import SwiftBeanCountModel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
 10 | import SwiftBeanCountParserUtils
 11 | import Wealthsimple
    :
 21 |     ///
 22 |     /// Only used for certain transaction types
 23 |     public static let fallbackExpenseAccountName = try! AccountName("Expenses:TODO") // swiftlint:disable:this force_try
    |                       |- note: add '@MainActor' to make static property 'fallbackExpenseAccountName' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |
 25 |     /// Payee used for fee transactions
[44/44] Compiling SwiftBeanCountWealthsimpleMapper String+KebabCase.swift
Build complete! (11.92s)
Fetching https://github.com/Nef10/SwiftBeanCountParserUtils.git
Fetching https://github.com/Nef10/WealthsimpleDownloader.git
Fetching https://github.com/Nef10/SwiftBeanCountModel.git
[1/884] Fetching swiftbeancountparserutils
[417/2787] Fetching swiftbeancountparserutils, wealthsimpledownloader
[748/6135] Fetching swiftbeancountparserutils, wealthsimpledownloader, swiftbeancountmodel
Fetched https://github.com/Nef10/SwiftBeanCountParserUtils.git from cache (1.15s)
Fetched https://github.com/Nef10/WealthsimpleDownloader.git from cache (1.15s)
Fetched https://github.com/Nef10/SwiftBeanCountModel.git from cache (1.15s)
Computing version for https://github.com/Nef10/WealthsimpleDownloader.git
Computed https://github.com/Nef10/WealthsimpleDownloader.git at 2.0.2 (1.75s)
Computing version for https://github.com/Nef10/SwiftBeanCountParserUtils.git
Computed https://github.com/Nef10/SwiftBeanCountParserUtils.git at 1.0.0 (0.55s)
Computing version for https://github.com/Nef10/SwiftBeanCountModel.git
Computed https://github.com/Nef10/SwiftBeanCountModel.git at 0.1.6 (0.55s)
Creating working copy for https://github.com/Nef10/SwiftBeanCountParserUtils.git
Working copy of https://github.com/Nef10/SwiftBeanCountParserUtils.git resolved at 1.0.0
Creating working copy for https://github.com/Nef10/SwiftBeanCountModel.git
Working copy of https://github.com/Nef10/SwiftBeanCountModel.git resolved at 0.1.6
Creating working copy for https://github.com/Nef10/WealthsimpleDownloader.git
Working copy of https://github.com/Nef10/WealthsimpleDownloader.git resolved at 2.0.2
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swiftbeancountmodel",
      "requirement" : {
        "exact" : [
          "0.1.6"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountModel.git"
    },
    {
      "identity" : "swiftbeancountparserutils",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountParserUtils.git"
    },
    {
      "identity" : "wealthsimpledownloader",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/WealthsimpleDownloader.git"
    }
  ],
  "manifest_display_name" : "SwiftBeanCountWealthsimpleMapper",
  "name" : "SwiftBeanCountWealthsimpleMapper",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "SwiftBeanCountWealthsimpleMapper",
      "targets" : [
        "SwiftBeanCountWealthsimpleMapper"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftBeanCountWealthsimpleMapperTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountWealthsimpleMapperTests",
      "path" : "Tests/SwiftBeanCountWealthsimpleMapperTests",
      "sources" : [
        "Extensions/AmountInitTests.swift",
        "Extensions/StringKebabCaseTests.swift",
        "Extensions/TransactionHelperTests.swift",
        "Extensions/XCTestCase.swift",
        "LedgerLookupTests.swift",
        "TestTransaction.swift",
        "WealthsimpleConversionErrorTests.swift",
        "WealthsimpleLedgerMapperTests.swift"
      ],
      "target_dependencies" : [
        "SwiftBeanCountWealthsimpleMapper"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftBeanCountWealthsimpleMapper",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountWealthsimpleMapper",
      "path" : "Sources/SwiftBeanCountWealthsimpleMapper",
      "product_dependencies" : [
        "SwiftBeanCountModel",
        "SwiftBeanCountParserUtils",
        "Wealthsimple"
      ],
      "product_memberships" : [
        "SwiftBeanCountWealthsimpleMapper"
      ],
      "sources" : [
        "Extensions/Amount+init.swift",
        "Extensions/String+KebabCase.swift",
        "Extensions/Wealthsimple.Transaction+Helper.swift",
        "LedgerLookup.swift",
        "MetaDataKeys.swift",
        "WealthsimpleConversionError.swift",
        "WealthsimpleLedgerMapper.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.2"
}
Done.