The Swift Package Index logo.Swift Package Index

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

Build Information

Successful build of SwiftCSV, reference master (6ab5d0), with Swift 6.0 for macOS (SPM) on 1 Dec 2024 01:41:16 UTC.

Swift 6 data race errors: 1

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 4.58.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/swiftcsv/SwiftCSV.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/swiftcsv/SwiftCSV
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 6ab5d0f bump version to 0.10.0
Cloned https://github.com/swiftcsv/SwiftCSV.git
Revision (git rev-parse @):
6ab5d0fe9b6ef3c79d717eefa70862df389e74d9
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/swiftcsv/SwiftCSV.git at master
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "swiftcsv",
      "name": "SwiftCSV",
      "url": "https://github.com/swiftcsv/SwiftCSV.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/SwiftCSV",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/swiftcsv/SwiftCSV.git
[1/1780] Fetching swiftcsv
Fetched https://github.com/swiftcsv/SwiftCSV.git from cache (1.01s)
Creating working copy for https://github.com/swiftcsv/SwiftCSV.git
Working copy of https://github.com/swiftcsv/SwiftCSV.git resolved at master (6ab5d0f)
warning: '.resolve-product-dependencies': dependency 'swiftcsv' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/swiftcsv/SwiftCSV.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftCSV",
  "name" : "SwiftCSV",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.13"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "4.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftCSV",
      "targets" : [
        "SwiftCSV"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5",
    "4.2"
  ],
  "targets" : [
    {
      "c99name" : "SwiftCSVTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCSVTests",
      "path" : "SwiftCSVTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/SwiftCSVTests/TestData",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "CSVDelimiterGuessingTests.swift",
        "CSVDelimiterTests.swift",
        "EnumeratedCSVViewTests.swift",
        "NamedCSVViewTests.swift",
        "NewlineTests.swift",
        "ParserTests.swift",
        "PerformanceTest.swift",
        "QuotedTests.swift",
        "ResourceHelper.swift",
        "TSVTests.swift",
        "URLTests.swift"
      ],
      "target_dependencies" : [
        "SwiftCSV"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftCSV",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCSV",
      "path" : "SwiftCSV",
      "product_memberships" : [
        "SwiftCSV"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/SwiftCSV/Resources/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "CSV+DelimiterGuessing.swift",
        "CSV.swift",
        "CSVDelimiter.swift",
        "EnumeratedCSVView.swift",
        "NamedCSVView.swift",
        "Parser.swift",
        "ParsingState.swift",
        "Serializer.swift",
        "String+Lines.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/3] Write sources
[1/3] Copying PrivacyInfo.xcprivacy
[2/3] Write swift-version--7754E27361AE5C74.txt
[4/13] Compiling SwiftCSV String+Lines.swift
[5/13] Compiling SwiftCSV NamedCSVView.swift
[6/13] Compiling SwiftCSV Serializer.swift
[7/13] Compiling SwiftCSV Parser.swift
[8/13] Compiling SwiftCSV ParsingState.swift
[9/14] Compiling SwiftCSV EnumeratedCSVView.swift
[10/14] Compiling SwiftCSV CSVDelimiter.swift
[11/14] Compiling SwiftCSV CSV+DelimiterGuessing.swift
/Users/admin/builder/spi-builder-workspace/SwiftCSV/CSV+DelimiterGuessing.swift:12:23: warning: static property 'recognized' is not concurrency-safe because non-'Sendable' type '[CSVDelimiter]' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension CSVDelimiter {
12 |     public static let recognized: [CSVDelimiter] = [.comma, .tab, .semicolon]
   |                       |- warning: static property 'recognized' is not concurrency-safe because non-'Sendable' type '[CSVDelimiter]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'recognized' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |     /// - Returns: Delimiter between cells based on the first line in the CSV. Falls back to `.comma`.
/Users/admin/builder/spi-builder-workspace/SwiftCSV/CSVDelimiter.swift:9:13: note: consider making enum 'CSVDelimiter' conform to the 'Sendable' protocol
 7 | //
 8 |
 9 | public enum CSVDelimiter: Equatable, ExpressibleByUnicodeScalarLiteral {
   |             `- note: consider making enum 'CSVDelimiter' conform to the 'Sendable' protocol
10 |
11 |     public typealias UnicodeScalarLiteralType = Character
[12/14] Emitting module SwiftCSV
/Users/admin/builder/spi-builder-workspace/SwiftCSV/CSV+DelimiterGuessing.swift:12:23: warning: static property 'recognized' is not concurrency-safe because non-'Sendable' type '[CSVDelimiter]' may have shared mutable state; this is an error in the Swift 6 language mode
10 |
11 | extension CSVDelimiter {
12 |     public static let recognized: [CSVDelimiter] = [.comma, .tab, .semicolon]
   |                       |- warning: static property 'recognized' is not concurrency-safe because non-'Sendable' type '[CSVDelimiter]' may have shared mutable state; this is an error in the Swift 6 language mode
   |                       |- note: annotate 'recognized' with '@MainActor' if property should only be accessed from the main actor
   |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
13 |
14 |     /// - Returns: Delimiter between cells based on the first line in the CSV. Falls back to `.comma`.
/Users/admin/builder/spi-builder-workspace/SwiftCSV/CSVDelimiter.swift:9:13: note: consider making enum 'CSVDelimiter' conform to the 'Sendable' protocol
 7 | //
 8 |
 9 | public enum CSVDelimiter: Equatable, ExpressibleByUnicodeScalarLiteral {
   |             `- note: consider making enum 'CSVDelimiter' conform to the 'Sendable' protocol
10 |
11 |     public typealias UnicodeScalarLiteralType = Character
[13/14] Compiling SwiftCSV CSV.swift
[14/14] Compiling SwiftCSV resource_bundle_accessor.swift
Build complete! (10.69s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "SwiftCSV",
  "name" : "SwiftCSV",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.13"
    },
    {
      "name" : "ios",
      "version" : "12.0"
    },
    {
      "name" : "tvos",
      "version" : "12.0"
    },
    {
      "name" : "watchos",
      "version" : "4.0"
    }
  ],
  "products" : [
    {
      "name" : "SwiftCSV",
      "targets" : [
        "SwiftCSV"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5",
    "4.2"
  ],
  "targets" : [
    {
      "c99name" : "SwiftCSVTests",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCSVTests",
      "path" : "SwiftCSVTests",
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/SwiftCSVTests/TestData",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "CSVDelimiterGuessingTests.swift",
        "CSVDelimiterTests.swift",
        "EnumeratedCSVViewTests.swift",
        "NamedCSVViewTests.swift",
        "NewlineTests.swift",
        "ParserTests.swift",
        "PerformanceTest.swift",
        "QuotedTests.swift",
        "ResourceHelper.swift",
        "TSVTests.swift",
        "URLTests.swift"
      ],
      "target_dependencies" : [
        "SwiftCSV"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SwiftCSV",
      "module_type" : "SwiftTarget",
      "name" : "SwiftCSV",
      "path" : "SwiftCSV",
      "product_memberships" : [
        "SwiftCSV"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/SwiftCSV/Resources/PrivacyInfo.xcprivacy",
          "rule" : {
            "process" : {
            }
          }
        }
      ],
      "sources" : [
        "CSV+DelimiterGuessing.swift",
        "CSV.swift",
        "CSVDelimiter.swift",
        "EnumeratedCSVView.swift",
        "NamedCSVView.swift",
        "Parser.swift",
        "ParsingState.swift",
        "Serializer.swift",
        "String+Lines.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.6"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/swiftcsv/swiftcsv/master
Repository:               swiftcsv/SwiftCSV
Swift version used:       6.0
Target:                   SwiftCSV
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
 * branch            88815688627177b9716a01ca41da19397bd30e47 -> FETCH_HEAD
HEAD is now at 8881568 Update the artifact
Extracting symbol information for 'SwiftCSV'...
Finished extracting symbol information for 'SwiftCSV'. (3.09s)
Building documentation for 'SwiftCSV'...
warning: Return value documented for initializer returning void
   --> SwiftCSV/CSV.swift:174:9-174:60
172 |     ///   - loadColumns: Whether to populate the columns dictionary (default is `true`)
173 |     /// - Throws: `CSVParseError` when parsing the contents of the resource fails, or file loading errors.
174 +     /// - Returns: `nil` if the resource could not be found
    |         ╰─suggestion: Remove return value documentation
175 |     public convenience init?(name: String, extension ext: String? = nil, bundle: Bundle = .main, delimiter: CSVDelimiter, encoding: String.Encoding = .utf8, loadColumns: Bool = true) throws {
176 |         guard let url = bundle.url(forResource: name, withExtension: ext) else {
warning: Return value documented for initializer returning void
   --> SwiftCSV/CSV.swift:191:9-191:60
189 |     ///   - loadColumns: Whether to populate the columns dictionary (default is `true`)
190 |     /// - Throws: `CSVParseError` when parsing the contents of the resource fails, or file loading errors.
191 +     /// - Returns: `nil` if the resource could not be found
    |         ╰─suggestion: Remove return value documentation
192 |    public convenience init?(name: String, extension ext: String? = nil, bundle: Bundle = .main, encoding: String.Encoding = .utf8, loadColumns: Bool = true) throws {
193 |         guard let url = bundle.url(forResource: name, withExtension: ext) else {
warning: External name 'limitTo' used to document parameter
  --> SwiftCSV/Parser.swift:11:22-11:29
9  | extension CSV {
10 |     /// Parse the file and call a block on each row, passing it in as a list of fields.
11 +     /// - Parameters limitTo: Maximum absolute line number in the content, *not* maximum amount of rows.
   |                      ╰─suggestion: Replace 'limitTo' with 'maxRow'
12 |     @available(*, deprecated, message: "Use enumerateAsArray(startAt:rowLimit:_:) instead")
13 |     public func enumerateAsArray(limitTo maxRow: Int? = nil, startAt: Int = 0, _ rowCallback: @escaping ([String]) -> ()) throws {
warning: Parameter 'startAt' is missing documentation
  --> SwiftCSV/Parser.swift:11:105-11:105
9  | extension CSV {
10 |     /// Parse the file and call a block on each row, passing it in as a list of fields.
11 +     /// - Parameters limitTo: Maximum absolute line number in the content, *not* maximum amount of rows.
   |                                                                                                         ╰─suggestion: Document 'startAt' parameter
12 |     @available(*, deprecated, message: "Use enumerateAsArray(startAt:rowLimit:_:) instead")
13 |     public func enumerateAsArray(limitTo maxRow: Int? = nil, startAt: Int = 0, _ rowCallback: @escaping ([String]) -> ()) throws {
warning: Parameter 'rowCallback' is missing documentation
  --> SwiftCSV/Parser.swift:11:105-11:105
9  | extension CSV {
10 |     /// Parse the file and call a block on each row, passing it in as a list of fields.
11 +     /// - Parameters limitTo: Maximum absolute line number in the content, *not* maximum amount of rows.
   |                                                                                                         ╰─suggestion: Document 'rowCallback' parameter
12 |     @available(*, deprecated, message: "Use enumerateAsArray(startAt:rowLimit:_:) instead")
13 |     public func enumerateAsArray(limitTo maxRow: Int? = nil, startAt: Int = 0, _ rowCallback: @escaping ([String]) -> ()) throws {Finished building documentation for 'SwiftCSV' (0.12s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/swiftcsv/swiftcsv/master
Fetching https://github.com/swiftlang/swift-docc-plugin
[1/2038] Fetching swift-docc-plugin
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (1.25s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.3 (0.55s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit
[1/3188] Fetching swift-docc-symbolkit
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (1.27s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (0.59s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.3
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[1/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version--7754E27361AE5C74.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling SymbolKit GenericConstraint.swift
[8/57] Compiling SymbolKit GenericParameter.swift
[9/57] Compiling SymbolKit Generics.swift
[10/57] Compiling SymbolKit Namespace.swift
[11/57] Compiling SymbolKit DeclarationFragments.swift
[12/57] Compiling SymbolKit Fragment.swift
[13/57] Compiling SymbolKit FragmentKind.swift
[14/57] Compiling SymbolKit FunctionParameter.swift
[15/57] Compiling SymbolKit FunctionSignature.swift
[16/57] Compiling SymbolKit Identifier.swift
[17/57] Compiling SymbolKit KindIdentifier.swift
[18/57] Compiling SymbolKit Location.swift
[19/57] Compiling SymbolKit Mutability.swift
[20/57] Compiling SymbolKit Names.swift
[21/57] Compiling SymbolKit SPI.swift
[22/57] Compiling SymbolKit Snippet.swift
[23/57] Compiling SymbolKit Extension.swift
[24/57] Compiling SymbolKit SemanticVersion.swift
[25/57] Compiling SymbolKit AccessControl.swift
[26/57] Compiling SymbolKit Availability.swift
[27/57] Compiling SymbolKit AvailabilityItem.swift
[28/57] Compiling SymbolKit Domain.swift
[29/57] Compiling SymbolKit SourceRange.swift
[30/57] Compiling SymbolKit Metadata.swift
[31/57] Compiling SymbolKit Module.swift
[32/57] Compiling SymbolKit OperatingSystem.swift
[33/57] Compiling SymbolKit Platform.swift
[34/57] Compiling SymbolKit Relationship.swift
[35/57] Compiling SymbolKit RelationshipKind.swift
[36/57] Compiling SymbolKit SourceOrigin.swift
[37/57] Compiling SymbolKit GenericConstraints.swift
[38/57] Compiling SymbolKit Swift.swift
[39/57] Compiling SymbolKit Symbol.swift
[40/57] Compiling SymbolKit SymbolKind.swift
[41/57] Compiling SymbolKit SymbolGraph.swift
[42/57] Compiling SymbolKit GraphCollector.swift
[43/57] Compiling SymbolKit Mixin+Equals.swift
[44/57] Compiling SymbolKit Mixin+Hash.swift
[45/57] Compiling SymbolKit Mixin.swift
[46/57] Compiling SymbolKit LineList.swift
[47/57] Compiling SymbolKit Position.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Emitting module Snippets
[53/57] Compiling Snippets SnippetParser.swift
[54/57] Compiling Snippets Snippet.swift
[55/61] Emitting module snippet_extract
[56/61] Compiling snippet_extract URL+Status.swift
[57/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (4.20s)
Building for debugging...
[0/1] Write swift-version--7754E27361AE5C74.txt
[2/11] Compiling SwiftCSV Parser.swift
[3/12] Compiling SwiftCSV CSV+DelimiterGuessing.swift
[4/12] Compiling SwiftCSV CSV.swift
[5/12] Emitting module SwiftCSV
[6/12] Compiling SwiftCSV ParsingState.swift
[7/12] Compiling SwiftCSV CSVDelimiter.swift
[8/12] Compiling SwiftCSV String+Lines.swift
[9/12] Compiling SwiftCSV NamedCSVView.swift
[10/12] Compiling SwiftCSV EnumeratedCSVView.swift
[11/12] Compiling SwiftCSV Serializer.swift
[12/12] Compiling SwiftCSV resource_bundle_accessor.swift
Build of target: 'SwiftCSV' complete! (1.14s)
     184
2	/Users/admin/builder/spi-builder-workspace/.docs/swiftcsv/swiftcsv/master
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/swiftcsv/swiftcsv/master
File count: 184
Doc size:   2.0MB
Preparing doc bundle ...
Uploading prod-swiftcsv-swiftcsv-master-2f137d4b.zip to s3://spi-docs-inbox/prod-swiftcsv-swiftcsv-master-2f137d4b.zip
Copying... [14%]
Copying... [28%]
Copying... [42%]
Copying... [56%]
Copying... [70%]
Copying... [84%]
Copying... [98%]
Copying... [100%]
Done.