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 FFmpeg-iOS, reference 0.0.5 (59c01f), with Swift 6.0 for macOS (SPM) on 3 Nov 2024 00:56:35 UTC.

Swift 6 data race errors: 10

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

Build Log

========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/kewlbear/FFmpeg-iOS.git
Reference: 0.0.5
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/kewlbear/FFmpeg-iOS
 * tag               0.0.5      -> FETCH_HEAD
HEAD is now at 59c01fb fix build error
Cloned https://github.com/kewlbear/FFmpeg-iOS.git
Revision (git rev-parse @):
59c01fbba5a85005d4b624f77f6ad32d43a4d922
SUCCESS checkout https://github.com/kewlbear/FFmpeg-iOS.git at 0.0.5
Fetching https://github.com/apple/swift-argument-parser
[1/12353] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser from cache (1.57s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 0.3.1 (0.69s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 0.3.1
[16375/22071334] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip
[7019759/22578655] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip
[7039946/22653708] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip
[7643108/29227769] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip
[9292134/29425214] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip
[9308518/30964106] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip
[9341286/31922039] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip
[9374054/36763459] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip (0.96s)
[13745947/36688406] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip (0.97s)
[13512034/36181085] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip (0.97s)
[15176900/35983640] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip (1.03s)
[27837125/35025707] Downloading https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip, https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip
Downloading binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip (1.15s)
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip (1.28s)
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip (1.34s)
Downloaded https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip (2.18s)
========================================
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": "ffmpeg-ios",
      "name": "FFmpeg-iOS",
      "url": "https://github.com/kewlbear/FFmpeg-iOS.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/FFmpeg-iOS",
      "dependencies": [
        {
          "identity": "swift-argument-parser",
          "name": "swift-argument-parser",
          "url": "https://github.com/apple/swift-argument-parser",
          "version": "0.5.0",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/swift-argument-parser",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/kewlbear/FFmpeg-iOS.git
[1/618] Fetching ffmpeg-ios
Fetched https://github.com/kewlbear/FFmpeg-iOS.git from cache (7.39s)
Fetching https://github.com/apple/swift-argument-parser from cache
Fetched https://github.com/apple/swift-argument-parser from cache (0.61s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 0.5.0 (0.62s)
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 0.5.0
Creating working copy for https://github.com/kewlbear/FFmpeg-iOS.git
Working copy of https://github.com/kewlbear/FFmpeg-iOS.git resolved at 0.0.5 (59c01fb)
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip from cache
Fetching binary artifact https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip from cache
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swresample.zip from cache (0.05s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avdevice.zip from cache (0.06s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/ffmpeg.zip from cache (0.05s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/swscale.zip from cache (0.07s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avformat.zip from cache (0.28s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avfilter.zip from cache (0.32s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avutil.zip from cache (0.49s)
Fetched https://github.com/kewlbear/FFmpeg-iOS/releases/download/0.0.5/avcodec.zip from cache (0.88s)
Found 1 product dependencies
  - swift-argument-parser
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $PWD
https://github.com/kewlbear/FFmpeg-iOS.git
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
Building for debugging...
[0/10] Write sources
[3/10] Write ffmpeg-ios-entitlement.plist
[5/10] Write swift-version--7754E27361AE5C74.txt
[7/45] Emitting module ArgumentParser
[8/48] Compiling ArgumentParser BashCompletionsGenerator.swift
[9/48] Compiling ArgumentParser CompletionsGenerator.swift
[10/48] Compiling ArgumentParser FishCompletionsGenerator.swift
[11/48] Compiling ArgumentParser ZshCompletionsGenerator.swift
[12/48] Compiling ArgumentParser Name.swift
[13/48] Compiling ArgumentParser Parsed.swift
[14/48] Compiling ArgumentParser ParsedValues.swift
[15/48] Compiling ArgumentParser Flag.swift
[16/48] Compiling ArgumentParser NameSpecification.swift
[17/48] Compiling ArgumentParser Option.swift
[18/48] Compiling ArgumentParser OptionGroup.swift
[19/48] Compiling ArgumentParser ParsableArgumentsValidation.swift
[20/48] Compiling ArgumentParser ParsableCommand.swift
[21/48] Compiling ArgumentParser ArgumentDecoder.swift
[22/48] Compiling ArgumentParser ArgumentDefinition.swift
[23/48] Compiling ArgumentParser CommandConfiguration.swift
[24/48] Compiling ArgumentParser EnumerableFlag.swift
[25/48] Compiling ArgumentParser ExpressibleByArgument.swift
[26/48] Compiling ArgumentParser ParsableArguments.swift
[27/48] Compiling ArgumentParser ParserError.swift
[28/48] Compiling ArgumentParser SplitArguments.swift
[29/48] Compiling ArgumentParser HelpCommand.swift
[30/48] Compiling ArgumentParser Argument.swift
[31/48] Compiling ArgumentParser ArgumentHelp.swift
[32/48] Compiling ArgumentParser CompletionKind.swift
[33/48] Compiling ArgumentParser Errors.swift
[34/48] Compiling ArgumentParser ArgumentSet.swift
[35/48] Compiling ArgumentParser CommandParser.swift
[36/48] Compiling ArgumentParser InputOrigin.swift
[37/48] Compiling ArgumentParser SequenceExtensions.swift
[38/48] Compiling ArgumentParser StringExtensions.swift
[39/48] Compiling ArgumentParser Tree.swift
[40/48] Compiling Depend Depend.swift
[41/48] Emitting module Depend
[42/48] Compiling ArgumentParser HelpGenerator.swift
[43/48] Compiling ArgumentParser MessageInfo.swift
[44/48] Compiling ArgumentParser UsageGenerator.swift
[44/50] Compiling Hook Hook.m
[46/52] Emitting module Tool
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:22:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 20 |
 21 | struct Tool: ParsableCommand {
 22 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' 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
 23 |         commandName: "ffmpeg-ios",
 24 |         abstract: "Build FFmpeg libraries for iOS as xcframeworks",
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:115:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
113 | extension Tool {
114 |     struct BuildCommand: ParsableCommand {
115 |         static var configuration = CommandConfiguration(commandName: "build", abstract: "Build framework module")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
116 |
117 |         @Flag(help: "enable AAC de/encoding via libfdk-aac")
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:417:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
415 |
416 |     struct DepCommand: ParsableCommand {
417 |         static var configuration = CommandConfiguration(commandName: "dep", abstract: "Install build dependency")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
418 |
419 |         func run() throws {
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:453:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
451 |
452 |     struct SourceCommand: ParsableCommand {
453 |         static var configuration = CommandConfiguration(commandName: "source", abstract: "Download library source code")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
454 |
455 |         @OptionGroup var downloadOptions: DownloadOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:488:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
486 |
487 |     struct LibCommand: ParsableCommand {
488 |         static var configuration = CommandConfiguration(commandName: "lib", abstract: "Build a library")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
489 |         func run() throws {
490 |             // FIXME: ...
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:495:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
493 |
494 |     struct FatCommand: ParsableCommand {
495 |         static var configuration = CommandConfiguration(commandName: "fat", abstract: "Create fat library")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
496 |
497 |         @OptionGroup var libraryOptions: LibraryOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:532:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
530 |
531 |     struct XCFrameworkCommand: ParsableCommand {
532 |         static var configuration = CommandConfiguration(commandName: "framework", abstract: "Create .xcframework")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
533 |
534 |         @OptionGroup var libraryOptions: LibraryOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:630:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
628 |
629 |     struct ZipCommand: ParsableCommand {
630 |         static var configuration = CommandConfiguration(commandName: "zip", abstract: "Zip .xcframework")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
631 |
632 |         @OptionGroup var xcframeworkOptions: XCFrameworkOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:645:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
643 |
644 |     struct ModuleCommand: ParsableCommand {
645 |         static var configuration = CommandConfiguration(commandName: "module", abstract: "Enable modules to allow import from Swift")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
646 |
647 |         @OptionGroup var libraryOptions: LibraryOptions
[47/52] Compiling Tool main.swift
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:22:16: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 20 |
 21 | struct Tool: ParsableCommand {
 22 |     static var configuration = CommandConfiguration(
    |                |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                |- note: annotate 'configuration' 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
 23 |         commandName: "ffmpeg-ios",
 24 |         abstract: "Build FFmpeg libraries for iOS as xcframeworks",
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:115:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
113 | extension Tool {
114 |     struct BuildCommand: ParsableCommand {
115 |         static var configuration = CommandConfiguration(commandName: "build", abstract: "Build framework module")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
116 |
117 |         @Flag(help: "enable AAC de/encoding via libfdk-aac")
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:417:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
415 |
416 |     struct DepCommand: ParsableCommand {
417 |         static var configuration = CommandConfiguration(commandName: "dep", abstract: "Install build dependency")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
418 |
419 |         func run() throws {
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:453:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
451 |
452 |     struct SourceCommand: ParsableCommand {
453 |         static var configuration = CommandConfiguration(commandName: "source", abstract: "Download library source code")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
454 |
455 |         @OptionGroup var downloadOptions: DownloadOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:488:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
486 |
487 |     struct LibCommand: ParsableCommand {
488 |         static var configuration = CommandConfiguration(commandName: "lib", abstract: "Build a library")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
489 |         func run() throws {
490 |             // FIXME: ...
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:495:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
493 |
494 |     struct FatCommand: ParsableCommand {
495 |         static var configuration = CommandConfiguration(commandName: "fat", abstract: "Create fat library")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
496 |
497 |         @OptionGroup var libraryOptions: LibraryOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:532:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
530 |
531 |     struct XCFrameworkCommand: ParsableCommand {
532 |         static var configuration = CommandConfiguration(commandName: "framework", abstract: "Create .xcframework")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
533 |
534 |         @OptionGroup var libraryOptions: LibraryOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:630:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
628 |
629 |     struct ZipCommand: ParsableCommand {
630 |         static var configuration = CommandConfiguration(commandName: "zip", abstract: "Zip .xcframework")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
631 |
632 |         @OptionGroup var xcframeworkOptions: XCFrameworkOptions
/Users/admin/builder/spi-builder-workspace/Sources/Tool/main.swift:645:20: warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
643 |
644 |     struct ModuleCommand: ParsableCommand {
645 |         static var configuration = CommandConfiguration(commandName: "module", abstract: "Enable modules to allow import from Swift")
    |                    |- warning: static property 'configuration' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'configuration' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: annotate 'configuration' 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
646 |
647 |         @OptionGroup var libraryOptions: LibraryOptions
[47/52] Write Objects.LinkFileList
[49/52] Compiling FFmpegSupport FFmpeg.swift
/Users/admin/builder/spi-builder-workspace/Sources/FFmpegSupport/FFmpeg.swift:22:5: warning: var 'argv' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
20 | import Hook
21 |
22 | var argv: [UnsafeMutablePointer<CChar>?] = []
   |     |- warning: var 'argv' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: convert 'argv' to a 'let' constant to make 'Sendable' shared state immutable
   |     |- note: annotate 'argv' 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
23 |
24 | public func ffmpeg(_ args: String...) -> Int {
[50/52] Emitting module FFmpegSupport
/Users/admin/builder/spi-builder-workspace/Sources/FFmpegSupport/FFmpeg.swift:22:5: warning: var 'argv' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
20 | import Hook
21 |
22 | var argv: [UnsafeMutablePointer<CChar>?] = []
   |     |- warning: var 'argv' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |     |- note: convert 'argv' to a 'let' constant to make 'Sendable' shared state immutable
   |     |- note: annotate 'argv' 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
23 |
24 | public func ffmpeg(_ args: String...) -> Int {
[50/52] Linking ffmpeg-ios
[51/52] Applying ffmpeg-ios
Build complete! (16.10s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.3.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser"
    }
  ],
  "manifest_display_name" : "FFmpeg-iOS",
  "name" : "FFmpeg-iOS",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "13.0"
    }
  ],
  "products" : [
    {
      "name" : "FFmpeg-iOS",
      "targets" : [
        "avcodec",
        "avutil",
        "avformat",
        "avfilter",
        "avdevice",
        "swscale",
        "swresample",
        "Depend",
        "ffmpeg",
        "Hook",
        "FFmpegSupport"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "ffmpeg-ios",
      "targets" : [
        "Tool"
      ],
      "type" : {
        "executable" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "swscale",
      "module_type" : "BinaryTarget",
      "name" : "swscale",
      "path" : "remote/archive/swscale.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "swresample",
      "module_type" : "BinaryTarget",
      "name" : "swresample",
      "path" : "remote/archive/swresample.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "ffmpeg",
      "module_type" : "BinaryTarget",
      "name" : "ffmpeg",
      "path" : "remote/archive/ffmpeg.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "avutil",
      "module_type" : "BinaryTarget",
      "name" : "avutil",
      "path" : "remote/archive/avutil.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "avformat",
      "module_type" : "BinaryTarget",
      "name" : "avformat",
      "path" : "remote/archive/avformat.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "avfilter",
      "module_type" : "BinaryTarget",
      "name" : "avfilter",
      "path" : "remote/archive/avfilter.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "avdevice",
      "module_type" : "BinaryTarget",
      "name" : "avdevice",
      "path" : "remote/archive/avdevice.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "avcodec",
      "module_type" : "BinaryTarget",
      "name" : "avcodec",
      "path" : "remote/archive/avcodec.zip",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
      ],
      "type" : "binary"
    },
    {
      "c99name" : "Tool",
      "module_type" : "SwiftTarget",
      "name" : "Tool",
      "path" : "Sources/Tool",
      "product_dependencies" : [
        "ArgumentParser"
      ],
      "product_memberships" : [
        "ffmpeg-ios"
      ],
      "sources" : [
        "main.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "Hook",
      "module_type" : "ClangTarget",
      "name" : "Hook",
      "path" : "Sources/Hook",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
        "Hook.m"
      ],
      "target_dependencies" : [
        "ffmpeg",
        "avcodec",
        "avformat",
        "avfilter",
        "avdevice",
        "avutil",
        "swscale",
        "swresample",
        "Depend"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FFmpegSupport",
      "module_type" : "SwiftTarget",
      "name" : "FFmpegSupport",
      "path" : "Sources/FFmpegSupport",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
        "FFmpeg.swift"
      ],
      "target_dependencies" : [
        "Hook"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FFmpeg_iOSTests",
      "module_type" : "SwiftTarget",
      "name" : "FFmpeg-iOSTests",
      "path" : "Tests/FFmpeg-iOSTests",
      "sources" : [
        "FFmpeg-iOSTests.swift"
      ],
      "target_dependencies" : [
        "FFmpegSupport"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Depend",
      "module_type" : "SwiftTarget",
      "name" : "Depend",
      "path" : "Sources/Depend",
      "product_memberships" : [
        "FFmpeg-iOS"
      ],
      "sources" : [
        "Depend.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
Done.