The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of SwiftBeanCountImporter, reference main (c16369), with Swift 6.1 for Linux on 3 Jun 2025 08:28:37 UTC.

Swift 6 data race errors: 1

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Nef10/SwiftBeanCountImporter.git
Reference: main
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/Nef10/SwiftBeanCountImporter
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at c16369b Bump Rogers Downloader and Mapper (#325)
Cloned https://github.com/Nef10/SwiftBeanCountImporter.git
Revision (git rev-parse @):
c16369b08972560977294ac3932583039a6841d9
SUCCESS checkout https://github.com/Nef10/SwiftBeanCountImporter.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/Nef10/SwiftBeanCountImporter.git
https://github.com/Nef10/SwiftBeanCountImporter.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "swiftbeancountmodel",
      "requirement" : {
        "exact" : [
          "0.1.6"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountModel.git"
    },
    {
      "identity" : "csv.swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.4.3",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/yaslab/CSV.swift.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" : "swiftbeancountwealthsimplemapper",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.7.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git"
    },
    {
      "identity" : "wealthsimpledownloader",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/WealthsimpleDownloader.git"
    },
    {
      "identity" : "swiftbeancountsheetsync",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountSheetSync.git"
    },
    {
      "identity" : "swiftbeancountrogersbankmapper",
      "requirement" : {
        "exact" : [
          "0.0.14"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git"
    },
    {
      "identity" : "rogersbankdownloader",
      "requirement" : {
        "exact" : [
          "0.2.2"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/RogersBankDownloader.git"
    },
    {
      "identity" : "tangerinedownloader",
      "requirement" : {
        "exact" : [
          "0.0.3"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/TangerineDownloader.git"
    },
    {
      "identity" : "swiftbeancounttangerinemapper",
      "requirement" : {
        "exact" : [
          "0.0.3"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountTangerineMapper.git"
    },
    {
      "identity" : "compasscarddownloader",
      "requirement" : {
        "exact" : [
          "0.0.1"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/CompassCardDownloader.git"
    },
    {
      "identity" : "swiftbeancountcompasscardmapper",
      "requirement" : {
        "exact" : [
          "0.1.1"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git"
    }
  ],
  "manifest_display_name" : "SwiftBeanCountImporter",
  "name" : "SwiftBeanCountImporter",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "16.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftBeanCountImporter",
      "targets" : [
        "SwiftBeanCountImporter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftBeanCountImporterTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountImporterTests",
      "path" : "Tests/SwiftBeanCountImporterTests",
      "sources" : [
        "BaseImporterTests.swift",
        "CSVBaseImporterTests.swift",
        "CSVImporterTests.swift",
        "DownloadImporterTests.swift",
        "FileImporterTests.swift",
        "ImporterTests.swift",
        "Importers/CompassCardDownloadImporterTests.swift",
        "Importers/CompassCardImporterTests.swift",
        "Importers/EquatePlusImporterTests.swift",
        "Importers/LunchOnUsImporterTests.swift",
        "Importers/ManuLifeImporterTests.swift",
        "Importers/N26ImporterTests.swift",
        "Importers/RBCImporterTests.swift",
        "Importers/RogersDownloadImporterTests.swift",
        "Importers/RogersImporterTests.swift",
        "Importers/SimpliiImporterTests.swift",
        "Importers/TangerineAccountImporterTests.swift",
        "Importers/TangerineCardImporterTests.swift",
        "Importers/TangerineDownloadImporterTests.swift",
        "Importers/WealthsimpleDownloadImporterTests.swift",
        "SettingsTests.swift",
        "TestDelegates.swift",
        "TestUtils.swift",
        "TextImporterTests.swift"
      ],
      "target_dependencies" : [
        "SwiftBeanCountImporter"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftBeanCountImporter",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountImporter",
      "path" : "Sources/SwiftBeanCountImporter",
      "product_dependencies" : [
        "CSV",
        "RogersBankDownloader",
        "SwiftBeanCountModel",
        "SwiftBeanCountParserUtils",
        "SwiftBeanCountRogersBankMapper",
        "SwiftBeanCountWealthsimpleMapper",
        "SwiftBeanCountCompassCardMapper",
        "CompassCardDownloader",
        "TangerineDownloader",
        "SwiftBeanCountTangerineMapper",
        "SwiftBeanCountSheetSync",
        "Wealthsimple"
      ],
      "product_memberships" : [
        "SwiftBeanCountImporter"
      ],
      "sources" : [
        "BaseImporter.swift",
        "CSVBaseImporter.swift",
        "CSVImporter.swift",
        "DownloadImporter.swift",
        "FileImporter.swift",
        "Importer.swift",
        "Importers/CompassCardDownloadImporter.swift",
        "Importers/CompassCardImporter.swift",
        "Importers/EquatePlusImporter.swift",
        "Importers/GoogleSheetDownloadImporter.swift",
        "Importers/LunchOnUsImporter.swift",
        "Importers/ManuLifeImporter.swift",
        "Importers/N26Importer.swift",
        "Importers/RBCImporter.swift",
        "Importers/RogersDownloadImporter.swift",
        "Importers/RogersImporter.swift",
        "Importers/SimpliiImporter.swift",
        "Importers/TangerineAccountImporter.swift",
        "Importers/TangerineCardImporter.swift",
        "Importers/TangerineDownloadImporter.swift",
        "Importers/WealthsimpleDownloadImporter.swift",
        "Settings.swift",
        "TextImporter.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -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 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2b296aa7156f49efc57252cdf9ed4bb21d0f92fc98d88800e255491ba2db3116
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git
Fetching https://github.com/Nef10/TangerineDownloader.git
Fetching https://github.com/Nef10/CompassCardDownloader.git
Fetching https://github.com/Nef10/RogersBankDownloader.git
Fetching https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git
Fetching https://github.com/Nef10/SwiftBeanCountTangerineMapper.git
[1/524] Fetching swiftbeancountcompasscardmapper
[525/1208] Fetching swiftbeancountcompasscardmapper, tangerinedownloader
[1209/1900] Fetching swiftbeancountcompasscardmapper, tangerinedownloader, swiftbeancounttangerinemapper
[1901/3214] Fetching swiftbeancountcompasscardmapper, tangerinedownloader, swiftbeancounttangerinemapper, swiftbeancountrogersbankmapper
[2283/3603] Fetching swiftbeancountcompasscardmapper, tangerinedownloader, swiftbeancounttangerinemapper, swiftbeancountrogersbankmapper, compasscarddownloader
Fetched https://github.com/Nef10/SwiftBeanCountTangerineMapper.git from cache (0.31s)
Fetching https://github.com/Nef10/SwiftBeanCountSheetSync.git
Fetched https://github.com/Nef10/TangerineDownloader.git from cache (0.33s)
[1/1570] Fetching rogersbankdownloader
Fetching https://github.com/Nef10/WealthsimpleDownloader.git
Fetched https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git from cache (0.45s)
Fetched https://github.com/Nef10/CompassCardDownloader.git from cache (0.45s)
Fetched https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git from cache (0.45s)
Fetching https://github.com/Nef10/SwiftBeanCountParserUtils.git
Fetched https://github.com/Nef10/RogersBankDownloader.git from cache (0.45s)
Fetching https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git
Fetching https://github.com/yaslab/CSV.swift.git
[1/1138] Fetching swiftbeancountsheetsync
[1139/3159] Fetching swiftbeancountsheetsync, wealthsimpledownloader
[2372/4055] Fetching swiftbeancountsheetsync, wealthsimpledownloader, swiftbeancountparserutils
Fetched https://github.com/Nef10/SwiftBeanCountSheetSync.git from cache (0.29s)
[1702/2917] Fetching wealthsimpledownloader, swiftbeancountparserutils
[2514/4750] Fetching wealthsimpledownloader, swiftbeancountparserutils, csv.swift
[4751/6780] Fetching wealthsimpledownloader, swiftbeancountparserutils, csv.swift, swiftbeancountwealthsimplemapper
Fetched https://github.com/Nef10/SwiftBeanCountParserUtils.git from cache (0.23s)
[4342/5884] Fetching wealthsimpledownloader, csv.swift, swiftbeancountwealthsimplemapper
Fetched https://github.com/Nef10/WealthsimpleDownloader.git from cache (0.38s)
[3194/3863] Fetching csv.swift, swiftbeancountwealthsimplemapper
Fetched https://github.com/yaslab/CSV.swift.git from cache (0.27s)
[1564/2030] Fetching swiftbeancountwealthsimplemapper
Fetching https://github.com/Nef10/SwiftBeanCountModel.git
Fetched https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git from cache (0.33s)
[1/3360] Fetching swiftbeancountmodel
Fetched https://github.com/Nef10/SwiftBeanCountModel.git from cache (0.50s)
Computing version for https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git
Computed https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git at 0.1.1 (1.86s)
Computing version for https://github.com/Nef10/CompassCardDownloader.git
Computed https://github.com/Nef10/CompassCardDownloader.git at 0.0.1 (0.51s)
Fetching https://github.com/Nef10/SwiftScraper.git
[1/1419] Fetching swiftscraper
Fetched https://github.com/Nef10/SwiftScraper.git from cache (0.34s)
Computing version for https://github.com/Nef10/SwiftBeanCountTangerineMapper.git
Computed https://github.com/Nef10/SwiftBeanCountTangerineMapper.git at 0.0.3 (0.84s)
Computing version for https://github.com/Nef10/TangerineDownloader.git
Computed https://github.com/Nef10/TangerineDownloader.git at 0.0.3 (0.59s)
Computing version for https://github.com/Nef10/RogersBankDownloader.git
Computed https://github.com/Nef10/RogersBankDownloader.git at 0.2.2 (0.77s)
Computing version for https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git
Computed https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git at 0.0.14 (0.99s)
Computing version for https://github.com/Nef10/SwiftBeanCountSheetSync.git
Computed https://github.com/Nef10/SwiftBeanCountSheetSync.git at 1.1.0 (0.52s)
Fetching https://github.com/Nef10/SwiftBeanCountParser.git
Fetching https://github.com/Nef10/GoogleAuthentication.git
[1/2192] Fetching swiftbeancountparser
[1141/3240] Fetching swiftbeancountparser, googleauthentication
Fetched https://github.com/Nef10/GoogleAuthentication.git from cache (1.53s)
Fetched https://github.com/Nef10/SwiftBeanCountParser.git from cache (1.53s)
Computing version for https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git
Computed https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git at 1.7.0 (2.68s)
Computing version for https://github.com/Nef10/SwiftBeanCountParserUtils.git
Computed https://github.com/Nef10/SwiftBeanCountParserUtils.git at 1.0.0 (0.53s)
Computing version for https://github.com/Nef10/SwiftBeanCountModel.git
Computed https://github.com/Nef10/SwiftBeanCountModel.git at 0.1.6 (0.78s)
Computing version for https://github.com/Nef10/SwiftScraper.git
Computed https://github.com/Nef10/SwiftScraper.git at 0.6.0 (0.57s)
Computing version for https://github.com/Nef10/GoogleAuthentication.git
Computed https://github.com/Nef10/GoogleAuthentication.git at 1.0.3 (0.62s)
Fetching https://github.com/OAuthSwift/OAuthSwift.git
Fetching https://github.com/kishikawakatsumi/KeychainAccess.git
[1/5134] Fetching oauthswift
[53/9520] Fetching oauthswift, keychainaccess
Fetched https://github.com/OAuthSwift/OAuthSwift.git from cache (0.55s)
Fetched https://github.com/kishikawakatsumi/KeychainAccess.git from cache (0.55s)
Computing version for https://github.com/Nef10/SwiftBeanCountParser.git
Computed https://github.com/Nef10/SwiftBeanCountParser.git at 0.1.8 (1.10s)
Computing version for https://github.com/OAuthSwift/OAuthSwift.git
Computed https://github.com/OAuthSwift/OAuthSwift.git at 2.2.0 (0.58s)
Fetching https://github.com/httpswift/swifter.git
Fetching https://github.com/tid-kijyun/Kanna.git
Fetching https://github.com/phimage/Erik.git
Fetching https://github.com/apple/swift-crypto.git
[1/6050] Fetching swifter
[1090/6692] Fetching swifter, erik
[2239/9049] Fetching swifter, erik, kanna
[4694/22985] Fetching swifter, erik, kanna, swift-crypto
Fetched https://github.com/phimage/Erik.git from cache (0.74s)
Fetched https://github.com/tid-kijyun/Kanna.git from cache (0.74s)
[9953/19986] Fetching swifter, swift-crypto
Fetched https://github.com/httpswift/swifter.git from cache (0.76s)
[4181/13936] Fetching swift-crypto
Fetched https://github.com/apple/swift-crypto.git from cache (2.15s)
Computing version for https://github.com/httpswift/swifter.git
Computed https://github.com/httpswift/swifter.git at 1.5.0 (2.70s)
Computing version for https://github.com/kishikawakatsumi/KeychainAccess.git
Computed https://github.com/kishikawakatsumi/KeychainAccess.git at 4.2.2 (0.70s)
Computing version for https://github.com/phimage/Erik.git
Computed https://github.com/phimage/Erik.git at 5.1.0 (0.60s)
Fetching https://github.com/Thomvis/BrightFutures.git
Fetching https://github.com/nvzqz/FileKit.git
[1/4067] Fetching brightfutures
[1425/7190] Fetching brightfutures, filekit
Fetched https://github.com/nvzqz/FileKit.git from cache (0.85s)
Fetched https://github.com/Thomvis/BrightFutures.git from cache (0.88s)
Computing version for https://github.com/nvzqz/FileKit.git
Computed https://github.com/nvzqz/FileKit.git at 6.1.0 (1.94s)
Computing version for https://github.com/Nef10/WealthsimpleDownloader.git
Computed https://github.com/Nef10/WealthsimpleDownloader.git at 2.0.5 (0.99s)
Computing version for https://github.com/yaslab/CSV.swift.git
Computed https://github.com/yaslab/CSV.swift.git at 2.5.2 (0.65s)
Computing version for https://github.com/Thomvis/BrightFutures.git
Computed https://github.com/Thomvis/BrightFutures.git at 8.2.0 (0.76s)
Computing version for https://github.com/tid-kijyun/Kanna.git
Computed https://github.com/tid-kijyun/Kanna.git at 5.3.0 (0.59s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 1.1.7 (1.51s)
Creating working copy for https://github.com/Nef10/RogersBankDownloader.git
Working copy of https://github.com/Nef10/RogersBankDownloader.git resolved at 0.2.2
Creating working copy for https://github.com/kishikawakatsumi/KeychainAccess.git
Working copy of https://github.com/kishikawakatsumi/KeychainAccess.git resolved at 4.2.2
Creating working copy for https://github.com/Nef10/WealthsimpleDownloader.git
Working copy of https://github.com/Nef10/WealthsimpleDownloader.git resolved at 2.0.5
Creating working copy for https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git
Working copy of https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git resolved at 0.0.14
Creating working copy for https://github.com/Nef10/SwiftBeanCountTangerineMapper.git
Working copy of https://github.com/Nef10/SwiftBeanCountTangerineMapper.git resolved at 0.0.3
Creating working copy for https://github.com/Nef10/SwiftBeanCountSheetSync.git
Working copy of https://github.com/Nef10/SwiftBeanCountSheetSync.git resolved at 1.1.0
Creating working copy for https://github.com/OAuthSwift/OAuthSwift.git
Working copy of https://github.com/OAuthSwift/OAuthSwift.git resolved at 2.2.0
Creating working copy for https://github.com/yaslab/CSV.swift.git
Working copy of https://github.com/yaslab/CSV.swift.git resolved at 2.5.2
Creating working copy for https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git
Working copy of https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git resolved at 0.1.1
Creating working copy for https://github.com/Nef10/CompassCardDownloader.git
Working copy of https://github.com/Nef10/CompassCardDownloader.git resolved at 0.0.1
Creating working copy for https://github.com/Nef10/SwiftScraper.git
Working copy of https://github.com/Nef10/SwiftScraper.git resolved at 0.6.0
Creating working copy for https://github.com/httpswift/swifter.git
Working copy of https://github.com/httpswift/swifter.git resolved at 1.5.0
Creating working copy for https://github.com/phimage/Erik.git
Working copy of https://github.com/phimage/Erik.git resolved at 5.1.0
Creating working copy for https://github.com/Thomvis/BrightFutures.git
Working copy of https://github.com/Thomvis/BrightFutures.git resolved at 8.2.0
Creating working copy for https://github.com/nvzqz/FileKit.git
Working copy of https://github.com/nvzqz/FileKit.git resolved at 6.1.0
Creating working copy for https://github.com/tid-kijyun/Kanna.git
Working copy of https://github.com/tid-kijyun/Kanna.git resolved at 5.3.0
Creating working copy for https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git
Working copy of https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git resolved at 1.7.0
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/TangerineDownloader.git
Working copy of https://github.com/Nef10/TangerineDownloader.git resolved at 0.0.3
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/GoogleAuthentication.git
Working copy of https://github.com/Nef10/GoogleAuthentication.git resolved at 1.0.3
Creating working copy for https://github.com/Nef10/SwiftBeanCountParser.git
Working copy of https://github.com/Nef10/SwiftBeanCountParser.git resolved at 0.1.8
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 1.1.7
Building for debugging...
[0/10] Write sources
[9/10] Write swift-version-24593BA9C3E375BF.txt
[11/54] Emitting module Wealthsimple
[12/55] Emitting module SwiftBeanCountModel
[13/57] Compiling CSV Endian.swift
[14/57] Compiling CSV Legacy.swift
[15/58] Compiling CSV UnicodeIterator.swift
[16/58] Emitting module CSV
[17/58] Compiling SwiftBeanCountModel Account.swift
[18/58] Compiling SwiftBeanCountModel AccountName.swift
[19/58] Compiling SwiftBeanCountModel Amount.swift
[20/58] Compiling Wealthsimple String+CamelCase.swift
[21/58] Compiling SwiftBeanCountModel TransactionPosting.swift
[22/58] Compiling SwiftBeanCountModel ValidationResult.swift
[23/58] Compiling CSV CSVReader.swift
[24/58] Compiling CSV BinaryReader.swift
[25/58] Compiling CSV CSVError.swift
[26/58] Compiling CSV CSVWriter.swift
[27/58] Compiling RogersBankDownloader RogersStatement.swift
[28/58] Compiling RogersBankDownloader RogersUser.swift
[29/58] Compiling RogersBankDownloader URLTaskHelper.swift
[30/58] Compiling SwiftBeanCountModel Balance.swift
[31/58] Compiling SwiftBeanCountModel Commodity.swift
[32/58] Compiling SwiftBeanCountModel Cost.swift
[33/58] Emitting module SwiftBeanCountParserUtils
[34/58] Compiling SwiftBeanCountParserUtils String.swift
[35/58] Compiling Wealthsimple WealthsimpleAccount.swift
[36/59] Compiling SwiftBeanCountModel MultiCurrencyAmount.swift
[37/59] Compiling SwiftBeanCountModel Option.swift
[38/59] Compiling SwiftBeanCountModel Custom.swift
[39/59] Compiling SwiftBeanCountModel Event.swift
[40/59] Compiling SwiftBeanCountModel Flag.swift
[41/59] Compiling Wealthsimple TransactionError.swift
[42/59] Compiling Wealthsimple WealthsimpleAsset.swift
[43/59] Compiling Wealthsimple WealthsimplePosition.swift
[44/59] Compiling Wealthsimple WealthsimpleDownloader.swift
[45/59] Compiling RogersBankDownloader RogersAccount.swift
[46/59] Compiling SwiftBeanCountModel Price.swift
[47/59] Compiling SwiftBeanCountModel Tag.swift
[48/59] Compiling SwiftBeanCountModel Inventory.swift
[49/59] Compiling SwiftBeanCountModel Ledger.swift
[50/59] Compiling SwiftBeanCountModel Transaction.swift
[51/59] Compiling SwiftBeanCountModel TransactionMetaData.swift
[52/59] Compiling CSV CSVRowDecoder.swift
[53/59] Compiling RogersBankDownloader RogersActivity.swift
[54/61] Compiling Wealthsimple WealthsimpleTransaction.swift
[55/61] Compiling Wealthsimple Token.swift
[56/61] Compiling RogersBankDownloader RogersAuthenticator.swift
[57/61] Emitting module RogersBankDownloader
[58/61] Compiling RogersBankDownloader DownloadError.swift
[64/78] Compiling SwiftBeanCountRogersBankMapper MetaDataKeys.swift
[65/78] Compiling SwiftBeanCountCompassCardMapper SwiftBeanCountCompassCardMapperError.swift
[66/78] Emitting module SwiftBeanCountWealthsimpleMapper
[67/78] Compiling SwiftBeanCountRogersBankMapper RogersBankMappingError.swift
[68/78] Emitting module SwiftBeanCountRogersBankMapper
[69/78] Compiling SwiftBeanCountRogersBankMapper SwiftBeanCountRogersBankMapper.swift
[70/79] Compiling SwiftBeanCountWealthsimpleMapper Amount+init.swift
[71/79] Compiling SwiftBeanCountWealthsimpleMapper String+KebabCase.swift
[73/79] Compiling SwiftBeanCountWealthsimpleMapper LedgerLookup.swift
[74/79] Compiling SwiftBeanCountWealthsimpleMapper Wealthsimple.Transaction+Helper.swift
[75/79] Compiling SwiftBeanCountWealthsimpleMapper MetaDataKeys.swift
[76/79] Compiling SwiftBeanCountWealthsimpleMapper WealthsimpleConversionError.swift
[77/79] Compiling SwiftBeanCountWealthsimpleMapper WealthsimpleLedgerMapper.swift
[78/80] Compiling SwiftBeanCountCompassCardMapper SwiftBeanCountCompassCardMapper.swift
[79/80] Emitting module SwiftBeanCountCompassCardMapper
[82/103] Compiling SwiftBeanCountImporter RogersImporter.swift
[83/103] Compiling SwiftBeanCountImporter SimpliiImporter.swift
[84/103] Compiling SwiftBeanCountImporter TangerineAccountImporter.swift
[85/105] Compiling SwiftBeanCountImporter BaseImporter.swift
[86/105] Compiling SwiftBeanCountImporter CSVBaseImporter.swift
[87/105] Compiling SwiftBeanCountImporter CSVImporter.swift
[88/105] Compiling SwiftBeanCountImporter DownloadImporter.swift
[89/105] Compiling SwiftBeanCountImporter FileImporter.swift
[90/105] Compiling SwiftBeanCountImporter Importer.swift
[91/105] Emitting module SwiftBeanCountImporter
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Settings.swift:48:23: warning: static property 'storage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 46 |     ///
 47 |     /// Default value is `UserDefaults.standard`
 48 |     public static var storage: SettingsStorage = UserDefaults.standard
    |                       |- warning: static property 'storage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'storage' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'storage' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 |
 50 |     /// Mappings of descriptions the user saved when importing previous transactions
[92/105] Compiling SwiftBeanCountImporter TangerineCardImporter.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:169:21: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
167 |                 self.mapper.accounts = accounts
168 |                 DispatchQueue.global(qos: .userInitiated).async {
169 |                     self.downloadPositions(completion)
    |                     `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
170 |                 }
171 |             }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:169:44: warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
167 |                 self.mapper.accounts = accounts
168 |                 DispatchQueue.global(qos: .userInitiated).async {
169 |                     self.downloadPositions(completion)
    |                                            |- warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
170 |                 }
171 |             }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:182:17: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
180 |             group.enter()
181 |             DispatchQueue.global(qos: .userInitiated).async {
182 |                 self.downloader.getPositions(in: account, date: nil) { result in
    |                 `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:182:50: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
180 |             group.enter()
181 |             DispatchQueue.global(qos: .userInitiated).async {
182 |                 self.downloader.getPositions(in: account, date: nil) { result in
    |                                                  `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/WealthsimpleDownloader/Sources/Wealthsimple/WealthsimpleAccount.swift:60:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
 58 |
 59 | /// An Account at Wealthsimple
 60 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
 61 |
 62 |     /// Type of the account
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:12:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Wealthsimple'
 10 | import SwiftBeanCountModel
 11 | import SwiftBeanCountWealthsimpleMapper
 12 | import Wealthsimple
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Wealthsimple'
 13 |
 14 | protocol WealthsimpleDownloaderProvider {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:186:25: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
184 |                     case let .failure(error):
185 |                         errorOccurred = true
186 |                         self.showError(error)
    |                         `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
187 |                     case let .success(positions):
188 |                         do {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:185:25: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
185 |                         errorOccurred = true
    |                         `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
186 |                         self.showError(error)
187 |                     case let .success(positions):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:193:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
191 |                             self.balances.append(contentsOf: accountBalances)
192 |                         } catch {
193 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
194 |                             self.showError(error)
195 |                         }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:218:17: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
216 |             group.enter()
217 |             DispatchQueue.global(qos: .userInitiated).async {
218 |                 self.downloader.getTransactions(in: account, startDate: self.dateToLoadFrom()) { result in
    |                 `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:218:53: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
216 |             group.enter()
217 |             DispatchQueue.global(qos: .userInitiated).async {
218 |                 self.downloader.getTransactions(in: account, startDate: self.dateToLoadFrom()) { result in
    |                                                     `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/WealthsimpleDownloader/Sources/Wealthsimple/WealthsimpleAccount.swift:60:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
 58 |
 59 | /// An Account at Wealthsimple
 60 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
 61 |
 62 |     /// Type of the account
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/Transaction.swift:12:14: note: class 'Transaction' does not conform to the 'Sendable' protocol
 10 |
 11 | /// A Transaction has meta data as well as multiple postings
 12 | public class Transaction {
    |              `- note: class 'Transaction' does not conform to the 'Sendable' protocol
 13 |
 14 |     /// Meta data of the Transaction
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
  8 |
  9 | import Foundation
 10 | import SwiftBeanCountModel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
 11 | import SwiftBeanCountWealthsimpleMapper
 12 | import Wealthsimple
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:222:25: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
220 |                     case let .failure(error):
221 |                         errorOccurred = true
222 |                         self.showError(error)
    |                         `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
223 |                     case let .success(transactions):
224 |                         do {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in an isolated closure; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in an isolated closure; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/Transaction.swift:12:14: note: class 'Transaction' does not conform to the 'Sendable' protocol
 10 |
 11 | /// A Transaction has meta data as well as multiple postings
 12 | public class Transaction {
    |              `- note: class 'Transaction' does not conform to the 'Sendable' protocol
 13 |
 14 |     /// Meta data of the Transaction
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:221:25: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
221 |                         errorOccurred = true
    |                         `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
222 |                         self.showError(error)
223 |                     case let .success(transactions):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: mutation of captured var 'downloadedTransactions' in concurrently-executing code; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: mutation of captured var 'downloadedTransactions' in concurrently-executing code; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:229:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
228 |                         } catch {
229 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
230 |                             self.showError(error)
231 |                         }
[93/105] Compiling SwiftBeanCountImporter TangerineDownloadImporter.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:169:21: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
167 |                 self.mapper.accounts = accounts
168 |                 DispatchQueue.global(qos: .userInitiated).async {
169 |                     self.downloadPositions(completion)
    |                     `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
170 |                 }
171 |             }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:169:44: warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
167 |                 self.mapper.accounts = accounts
168 |                 DispatchQueue.global(qos: .userInitiated).async {
169 |                     self.downloadPositions(completion)
    |                                            |- warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
170 |                 }
171 |             }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:182:17: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
180 |             group.enter()
181 |             DispatchQueue.global(qos: .userInitiated).async {
182 |                 self.downloader.getPositions(in: account, date: nil) { result in
    |                 `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:182:50: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
180 |             group.enter()
181 |             DispatchQueue.global(qos: .userInitiated).async {
182 |                 self.downloader.getPositions(in: account, date: nil) { result in
    |                                                  `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/WealthsimpleDownloader/Sources/Wealthsimple/WealthsimpleAccount.swift:60:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
 58 |
 59 | /// An Account at Wealthsimple
 60 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
 61 |
 62 |     /// Type of the account
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:12:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Wealthsimple'
 10 | import SwiftBeanCountModel
 11 | import SwiftBeanCountWealthsimpleMapper
 12 | import Wealthsimple
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Wealthsimple'
 13 |
 14 | protocol WealthsimpleDownloaderProvider {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:186:25: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
184 |                     case let .failure(error):
185 |                         errorOccurred = true
186 |                         self.showError(error)
    |                         `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
187 |                     case let .success(positions):
188 |                         do {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:185:25: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
185 |                         errorOccurred = true
    |                         `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
186 |                         self.showError(error)
187 |                     case let .success(positions):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:193:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
191 |                             self.balances.append(contentsOf: accountBalances)
192 |                         } catch {
193 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
194 |                             self.showError(error)
195 |                         }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:218:17: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
216 |             group.enter()
217 |             DispatchQueue.global(qos: .userInitiated).async {
218 |                 self.downloader.getTransactions(in: account, startDate: self.dateToLoadFrom()) { result in
    |                 `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:218:53: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
216 |             group.enter()
217 |             DispatchQueue.global(qos: .userInitiated).async {
218 |                 self.downloader.getTransactions(in: account, startDate: self.dateToLoadFrom()) { result in
    |                                                     `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/WealthsimpleDownloader/Sources/Wealthsimple/WealthsimpleAccount.swift:60:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
 58 |
 59 | /// An Account at Wealthsimple
 60 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
 61 |
 62 |     /// Type of the account
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/Transaction.swift:12:14: note: class 'Transaction' does not conform to the 'Sendable' protocol
 10 |
 11 | /// A Transaction has meta data as well as multiple postings
 12 | public class Transaction {
    |              `- note: class 'Transaction' does not conform to the 'Sendable' protocol
 13 |
 14 |     /// Meta data of the Transaction
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
  8 |
  9 | import Foundation
 10 | import SwiftBeanCountModel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
 11 | import SwiftBeanCountWealthsimpleMapper
 12 | import Wealthsimple
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:222:25: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
220 |                     case let .failure(error):
221 |                         errorOccurred = true
222 |                         self.showError(error)
    |                         `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
223 |                     case let .success(transactions):
224 |                         do {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in an isolated closure; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in an isolated closure; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/Transaction.swift:12:14: note: class 'Transaction' does not conform to the 'Sendable' protocol
 10 |
 11 | /// A Transaction has meta data as well as multiple postings
 12 | public class Transaction {
    |              `- note: class 'Transaction' does not conform to the 'Sendable' protocol
 13 |
 14 |     /// Meta data of the Transaction
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:221:25: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
221 |                         errorOccurred = true
    |                         `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
222 |                         self.showError(error)
223 |                     case let .success(transactions):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: mutation of captured var 'downloadedTransactions' in concurrently-executing code; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: mutation of captured var 'downloadedTransactions' in concurrently-executing code; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:229:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
228 |                         } catch {
229 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
230 |                             self.showError(error)
231 |                         }
[94/105] Compiling SwiftBeanCountImporter WealthsimpleDownloadImporter.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:169:21: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
167 |                 self.mapper.accounts = accounts
168 |                 DispatchQueue.global(qos: .userInitiated).async {
169 |                     self.downloadPositions(completion)
    |                     `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
170 |                 }
171 |             }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:169:44: warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
167 |                 self.mapper.accounts = accounts
168 |                 DispatchQueue.global(qos: .userInitiated).async {
169 |                     self.downloadPositions(completion)
    |                                            |- warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                            `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
170 |                 }
171 |             }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:182:17: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
180 |             group.enter()
181 |             DispatchQueue.global(qos: .userInitiated).async {
182 |                 self.downloader.getPositions(in: account, date: nil) { result in
    |                 `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:182:50: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
180 |             group.enter()
181 |             DispatchQueue.global(qos: .userInitiated).async {
182 |                 self.downloader.getPositions(in: account, date: nil) { result in
    |                                                  `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/WealthsimpleDownloader/Sources/Wealthsimple/WealthsimpleAccount.swift:60:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
 58 |
 59 | /// An Account at Wealthsimple
 60 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
 61 |
 62 |     /// Type of the account
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:12:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Wealthsimple'
 10 | import SwiftBeanCountModel
 11 | import SwiftBeanCountWealthsimpleMapper
 12 | import Wealthsimple
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'Wealthsimple'
 13 |
 14 | protocol WealthsimpleDownloaderProvider {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:186:25: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
184 |                     case let .failure(error):
185 |                         errorOccurred = true
186 |                         self.showError(error)
    |                         `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
187 |                     case let .success(positions):
188 |                         do {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:185:25: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
183 |                     switch result {
184 |                     case let .failure(error):
185 |                         errorOccurred = true
    |                         `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
186 |                         self.showError(error)
187 |                     case let .success(positions):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:193:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
191 |                             self.balances.append(contentsOf: accountBalances)
192 |                         } catch {
193 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
194 |                             self.showError(error)
195 |                         }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:218:17: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
216 |             group.enter()
217 |             DispatchQueue.global(qos: .userInitiated).async {
218 |                 self.downloader.getTransactions(in: account, startDate: self.dateToLoadFrom()) { result in
    |                 `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:218:53: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
216 |             group.enter()
217 |             DispatchQueue.global(qos: .userInitiated).async {
218 |                 self.downloader.getTransactions(in: account, startDate: self.dateToLoadFrom()) { result in
    |                                                     `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/WealthsimpleDownloader/Sources/Wealthsimple/WealthsimpleAccount.swift:60:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
 58 |
 59 | /// An Account at Wealthsimple
 60 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
 61 |
 62 |     /// Type of the account
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/Transaction.swift:12:14: note: class 'Transaction' does not conform to the 'Sendable' protocol
 10 |
 11 | /// A Transaction has meta data as well as multiple postings
 12 | public class Transaction {
    |              `- note: class 'Transaction' does not conform to the 'Sendable' protocol
 13 |
 14 |     /// Meta data of the Transaction
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
  8 |
  9 | import Foundation
 10 | import SwiftBeanCountModel
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'SwiftBeanCountModel'
 11 | import SwiftBeanCountWealthsimpleMapper
 12 | import Wealthsimple
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:222:25: warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 24 | }
 25 |
 26 | class WealthsimpleDownloadImporter: BaseImporter, DownloadImporter { // swiftlint:disable:this type_body_length
    |       `- note: class 'WealthsimpleDownloadImporter' does not conform to the 'Sendable' protocol
 27 |
 28 |     override class var importerName: String { "Wealthsimple Download" }
    :
220 |                     case let .failure(error):
221 |                         errorOccurred = true
222 |                         self.showError(error)
    |                         `- warning: capture of 'self' with non-sendable type 'WealthsimpleDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
223 |                     case let .success(transactions):
224 |                         do {
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in an isolated closure; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: capture of 'downloadedTransactions' with non-sendable type '[Transaction]' in an isolated closure; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/.build/checkouts/SwiftBeanCountModel/Sources/SwiftBeanCountModel/Transaction.swift:12:14: note: class 'Transaction' does not conform to the 'Sendable' protocol
 10 |
 11 | /// A Transaction has meta data as well as multiple postings
 12 | public class Transaction {
    |              `- note: class 'Transaction' does not conform to the 'Sendable' protocol
 13 |
 14 |     /// Meta data of the Transaction
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:221:25: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
219 |                     switch result {
220 |                     case let .failure(error):
221 |                         errorOccurred = true
    |                         `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
222 |                         self.showError(error)
223 |                     case let .success(transactions):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:227:29: warning: mutation of captured var 'downloadedTransactions' in concurrently-executing code; this is an error in the Swift 6 language mode
225 |                             let (accountPrices, accountTransactions) = try self.mapper.mapTransactionsToPriceAndTransactions(transactions)
226 |                             self.prices.append(contentsOf: accountPrices)
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
    |                             `- warning: mutation of captured var 'downloadedTransactions' in concurrently-executing code; this is an error in the Swift 6 language mode
228 |                         } catch {
229 |                             errorOccurred = true
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/WealthsimpleDownloadImporter.swift:229:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
227 |                             downloadedTransactions.append(contentsOf: accountTransactions)
228 |                         } catch {
229 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
230 |                             self.showError(error)
231 |                         }
[95/105] Compiling SwiftBeanCountImporter Settings.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Settings.swift:48:23: warning: static property 'storage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 46 |     ///
 47 |     /// Default value is `UserDefaults.standard`
 48 |     public static var storage: SettingsStorage = UserDefaults.standard
    |                       |- warning: static property 'storage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'storage' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'storage' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 |
 50 |     /// Mappings of descriptions the user saved when importing previous transactions
[96/105] Compiling SwiftBeanCountImporter TextImporter.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Settings.swift:48:23: warning: static property 'storage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 46 |     ///
 47 |     /// Default value is `UserDefaults.standard`
 48 |     public static var storage: SettingsStorage = UserDefaults.standard
    |                       |- warning: static property 'storage' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'storage' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'storage' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 49 |
 50 |     /// Mappings of descriptions the user saved when importing previous transactions
[97/105] Compiling SwiftBeanCountImporter N26Importer.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:25: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                         `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:62: warning: capture of 'user' with non-sendable type 'any User' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                                                              `- warning: capture of 'user' with non-sendable type 'any User' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersUser.swift:4:17: note: protocol 'User' does not conform to the 'Sendable' protocol
 2 |
 3 | /// An online user account
 4 | public protocol User {
   |                 `- note: protocol 'User' does not conform to the 'Sendable' protocol
 5 |
 6 |     /// User name used to login
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'RogersBankDownloader'
  8 |
  9 | import Foundation
 10 | import RogersBankDownloader
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'RogersBankDownloader'
 11 | import SwiftBeanCountModel
 12 | import SwiftBeanCountRogersBankMapper
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:77: warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                                                                             |- warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:100:21: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 98 |                 group.enter()
 99 |                 DispatchQueue.global(qos: .userInitiated).async {
100 |                     account.downloadActivities(statementNumber: statementNumber) { result in
    |                     `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
101 |                         switch result {
102 |                         case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersAccount.swift:7:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
  5 |
  6 | /// A credit card account
  7 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
  8 |     /// Customer
  9 |     var customer: Customer { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:104:29: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
102 |                         case let .failure(error):
103 |                             errorOccurred = true
104 |                             self.showError(error)
    |                             `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
105 |                             group.leave()
106 |                         case let .success(activities):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:104:29: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
102 |                         case let .failure(error):
103 |                             errorOccurred = true
104 |                             self.showError(error)
    |                             `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
105 |                             group.leave()
106 |                         case let .success(activities):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in an isolated closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in an isolated closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:103:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
101 |                         switch result {
102 |                         case let .failure(error):
103 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
104 |                             self.showError(error)
105 |                             group.leave()
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:73: warning: capture of 'activities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                                                         `- warning: capture of 'activities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: mutation of captured var 'downloadedActivities' in concurrently-executing code; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: mutation of captured var 'downloadedActivities' in concurrently-executing code; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
[98/105] Compiling SwiftBeanCountImporter RBCImporter.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:25: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                         `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:62: warning: capture of 'user' with non-sendable type 'any User' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                                                              `- warning: capture of 'user' with non-sendable type 'any User' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersUser.swift:4:17: note: protocol 'User' does not conform to the 'Sendable' protocol
 2 |
 3 | /// An online user account
 4 | public protocol User {
   |                 `- note: protocol 'User' does not conform to the 'Sendable' protocol
 5 |
 6 |     /// User name used to login
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'RogersBankDownloader'
  8 |
  9 | import Foundation
 10 | import RogersBankDownloader
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'RogersBankDownloader'
 11 | import SwiftBeanCountModel
 12 | import SwiftBeanCountRogersBankMapper
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:77: warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                                                                             |- warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:100:21: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 98 |                 group.enter()
 99 |                 DispatchQueue.global(qos: .userInitiated).async {
100 |                     account.downloadActivities(statementNumber: statementNumber) { result in
    |                     `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
101 |                         switch result {
102 |                         case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersAccount.swift:7:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
  5 |
  6 | /// A credit card account
  7 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
  8 |     /// Customer
  9 |     var customer: Customer { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:104:29: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
102 |                         case let .failure(error):
103 |                             errorOccurred = true
104 |                             self.showError(error)
    |                             `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
105 |                             group.leave()
106 |                         case let .success(activities):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:104:29: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
102 |                         case let .failure(error):
103 |                             errorOccurred = true
104 |                             self.showError(error)
    |                             `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
105 |                             group.leave()
106 |                         case let .success(activities):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in an isolated closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in an isolated closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:103:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
101 |                         switch result {
102 |                         case let .failure(error):
103 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
104 |                             self.showError(error)
105 |                             group.leave()
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:73: warning: capture of 'activities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                                                         `- warning: capture of 'activities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: mutation of captured var 'downloadedActivities' in concurrently-executing code; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: mutation of captured var 'downloadedActivities' in concurrently-executing code; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
[99/105] Compiling SwiftBeanCountImporter RogersDownloadImporter.swift
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:25: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                         `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:62: warning: capture of 'user' with non-sendable type 'any User' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                                                              `- warning: capture of 'user' with non-sendable type 'any User' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersUser.swift:4:17: note: protocol 'User' does not conform to the 'Sendable' protocol
 2 |
 3 | /// An online user account
 4 | public protocol User {
   |                 `- note: protocol 'User' does not conform to the 'Sendable' protocol
 5 |
 6 |     /// User name used to login
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:10:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'RogersBankDownloader'
  8 |
  9 | import Foundation
 10 | import RogersBankDownloader
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'RogersBankDownloader'
 11 | import SwiftBeanCountModel
 12 | import SwiftBeanCountRogersBankMapper
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:85:77: warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 83 |                 case let .success(user):
 84 |                     DispatchQueue.global(qos: .userInitiated).async {
 85 |                         self.downloadAllActivities(accounts: user.accounts, completion)
    |                                                                             |- warning: capture of 'completion' with non-sendable type '() -> Void' in a '@Sendable' closure; this is an error in the Swift 6 language mode
    |                                                                             `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
 86 |                     }
 87 |                 }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:100:21: warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 98 |                 group.enter()
 99 |                 DispatchQueue.global(qos: .userInitiated).async {
100 |                     account.downloadActivities(statementNumber: statementNumber) { result in
    |                     `- warning: capture of 'account' with non-sendable type 'any Account' in a '@Sendable' closure; this is an error in the Swift 6 language mode
101 |                         switch result {
102 |                         case let .failure(error):
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersAccount.swift:7:17: note: protocol 'Account' does not conform to the 'Sendable' protocol
  5 |
  6 | /// A credit card account
  7 | public protocol Account {
    |                 `- note: protocol 'Account' does not conform to the 'Sendable' protocol
  8 |     /// Customer
  9 |     var customer: Customer { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:104:29: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
102 |                         case let .failure(error):
103 |                             errorOccurred = true
104 |                             self.showError(error)
    |                             `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in a '@Sendable' closure; this is an error in the Swift 6 language mode
105 |                             group.leave()
106 |                         case let .success(activities):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:104:29: warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
 12 | import SwiftBeanCountRogersBankMapper
 13 |
 14 | class RogersDownloadImporter: BaseImporter, DownloadImporter, RogersAuthenticatorDelegate {
    |       `- note: class 'RogersDownloadImporter' does not conform to the 'Sendable' protocol
 15 |
 16 |     enum MetaDataKey {
    :
102 |                         case let .failure(error):
103 |                             errorOccurred = true
104 |                             self.showError(error)
    |                             `- warning: capture of 'self' with non-sendable type 'RogersDownloadImporter' in an isolated closure; this is an error in the Swift 6 language mode
105 |                             group.leave()
106 |                         case let .success(activities):
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in an isolated closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in an isolated closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:103:29: warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
101 |                         switch result {
102 |                         case let .failure(error):
103 |                             errorOccurred = true
    |                             `- warning: mutation of captured var 'errorOccurred' in concurrently-executing code; this is an error in the Swift 6 language mode
104 |                             self.showError(error)
105 |                             group.leave()
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: capture of 'downloadedActivities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:73: warning: capture of 'activities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                                                         `- warning: capture of 'activities' with non-sendable type '[any Activity]' in a '@Sendable' closure; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
/host/spi-builder-workspace/.build/checkouts/RogersBankDownloader/Sources/RogersBankDownloader/RogersActivity.swift:64:17: note: protocol 'Activity' does not conform to the 'Sendable' protocol
 62 |
 63 | /// An activity on the credit card, like a authorization, transactions or payment
 64 | public protocol Activity {
    |                 `- note: protocol 'Activity' does not conform to the 'Sendable' protocol
 65 |     /// Reference number for posted transactions
 66 |     var referenceNumber: String? { get }
/host/spi-builder-workspace/Sources/SwiftBeanCountImporter/Importers/RogersDownloadImporter.swift:108:33: warning: mutation of captured var 'downloadedActivities' in concurrently-executing code; this is an error in the Swift 6 language mode
106 |                         case let .success(activities):
107 |                             queue.async {
108 |                                 downloadedActivities.append(contentsOf: activities)
    |                                 `- warning: mutation of captured var 'downloadedActivities' in concurrently-executing code; this is an error in the Swift 6 language mode
109 |                                 group.leave()
110 |                             }
[100/105] Compiling SwiftBeanCountImporter GoogleSheetDownloadImporter.swift
[101/105] Compiling SwiftBeanCountImporter LunchOnUsImporter.swift
[102/105] Compiling SwiftBeanCountImporter ManuLifeImporter.swift
[103/105] Compiling SwiftBeanCountImporter CompassCardDownloadImporter.swift
[104/105] Compiling SwiftBeanCountImporter CompassCardImporter.swift
[105/105] Compiling SwiftBeanCountImporter EquatePlusImporter.swift
Build complete! (82.72s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swiftbeancountmodel",
      "requirement" : {
        "exact" : [
          "0.1.6"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountModel.git"
    },
    {
      "identity" : "csv.swift",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.4.3",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/yaslab/CSV.swift.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" : "swiftbeancountwealthsimplemapper",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.7.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountWealthsimpleMapper.git"
    },
    {
      "identity" : "wealthsimpledownloader",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.0.2",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/WealthsimpleDownloader.git"
    },
    {
      "identity" : "swiftbeancountsheetsync",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.1.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountSheetSync.git"
    },
    {
      "identity" : "swiftbeancountrogersbankmapper",
      "requirement" : {
        "exact" : [
          "0.0.14"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountRogersBankMapper.git"
    },
    {
      "identity" : "rogersbankdownloader",
      "requirement" : {
        "exact" : [
          "0.2.2"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/RogersBankDownloader.git"
    },
    {
      "identity" : "tangerinedownloader",
      "requirement" : {
        "exact" : [
          "0.0.3"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/TangerineDownloader.git"
    },
    {
      "identity" : "swiftbeancounttangerinemapper",
      "requirement" : {
        "exact" : [
          "0.0.3"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountTangerineMapper.git"
    },
    {
      "identity" : "compasscarddownloader",
      "requirement" : {
        "exact" : [
          "0.0.1"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/CompassCardDownloader.git"
    },
    {
      "identity" : "swiftbeancountcompasscardmapper",
      "requirement" : {
        "exact" : [
          "0.1.1"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Nef10/SwiftBeanCountCompassCardMapper.git"
    }
  ],
  "manifest_display_name" : "SwiftBeanCountImporter",
  "name" : "SwiftBeanCountImporter",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "16.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftBeanCountImporter",
      "targets" : [
        "SwiftBeanCountImporter"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SwiftBeanCountImporterTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountImporterTests",
      "path" : "Tests/SwiftBeanCountImporterTests",
      "sources" : [
        "BaseImporterTests.swift",
        "CSVBaseImporterTests.swift",
        "CSVImporterTests.swift",
        "DownloadImporterTests.swift",
        "FileImporterTests.swift",
        "ImporterTests.swift",
        "Importers/CompassCardDownloadImporterTests.swift",
        "Importers/CompassCardImporterTests.swift",
        "Importers/EquatePlusImporterTests.swift",
        "Importers/LunchOnUsImporterTests.swift",
        "Importers/ManuLifeImporterTests.swift",
        "Importers/N26ImporterTests.swift",
        "Importers/RBCImporterTests.swift",
        "Importers/RogersDownloadImporterTests.swift",
        "Importers/RogersImporterTests.swift",
        "Importers/SimpliiImporterTests.swift",
        "Importers/TangerineAccountImporterTests.swift",
        "Importers/TangerineCardImporterTests.swift",
        "Importers/TangerineDownloadImporterTests.swift",
        "Importers/WealthsimpleDownloadImporterTests.swift",
        "SettingsTests.swift",
        "TestDelegates.swift",
        "TestUtils.swift",
        "TextImporterTests.swift"
      ],
      "target_dependencies" : [
        "SwiftBeanCountImporter"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftBeanCountImporter",
      "module_type" : "SwiftTarget",
      "name" : "SwiftBeanCountImporter",
      "path" : "Sources/SwiftBeanCountImporter",
      "product_dependencies" : [
        "CSV",
        "RogersBankDownloader",
        "SwiftBeanCountModel",
        "SwiftBeanCountParserUtils",
        "SwiftBeanCountRogersBankMapper",
        "SwiftBeanCountWealthsimpleMapper",
        "SwiftBeanCountCompassCardMapper",
        "CompassCardDownloader",
        "TangerineDownloader",
        "SwiftBeanCountTangerineMapper",
        "SwiftBeanCountSheetSync",
        "Wealthsimple"
      ],
      "product_memberships" : [
        "SwiftBeanCountImporter"
      ],
      "sources" : [
        "BaseImporter.swift",
        "CSVBaseImporter.swift",
        "CSVImporter.swift",
        "DownloadImporter.swift",
        "FileImporter.swift",
        "Importer.swift",
        "Importers/CompassCardDownloadImporter.swift",
        "Importers/CompassCardImporter.swift",
        "Importers/EquatePlusImporter.swift",
        "Importers/GoogleSheetDownloadImporter.swift",
        "Importers/LunchOnUsImporter.swift",
        "Importers/ManuLifeImporter.swift",
        "Importers/N26Importer.swift",
        "Importers/RBCImporter.swift",
        "Importers/RogersDownloadImporter.swift",
        "Importers/RogersImporter.swift",
        "Importers/SimpliiImporter.swift",
        "Importers/TangerineAccountImporter.swift",
        "Importers/TangerineCardImporter.swift",
        "Importers/TangerineDownloadImporter.swift",
        "Importers/WealthsimpleDownloadImporter.swift",
        "Settings.swift",
        "TextImporter.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.7"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:2b296aa7156f49efc57252cdf9ed4bb21d0f92fc98d88800e255491ba2db3116
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.